Skip to main content

CLI to interact with Genesys Cloud

Project description

Genesys Cloud CLI

WARNING: This is a result of a hackathon project and while it is functional it is not officially supported by the Genesys Development Group.

The Genesys Cloud cli is a tool to interact with Genesys Cloud

Note that if you us oh-my-zsh, it aliases gc to a git command, this cli works using either gc or gcli if you are using that alias.

Install

pip install genesyscloudcli

Local setup

The cli authenticates using client credentials which you will have to create yourself

gc profile new is the easiest way to setup your credentials. This will create a credentials file at ~/.genesyscloud/credentials and can support multiple profiles for different organizations.

$ gc profile new
Profile Name [DEFAULT]: mycompanyname
Genesys Cloud Environment (mypurecloud.com, usw2.pure.cloud): mypurecloud.com
OAuth Client ID: dfbdc514-e830-4745-bffa-1cb7ee7f2736
OAuth Client Secret: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Profiles

With multiple profiles configured, you can either specify one when connnecting:

$ gc --profile <profilename> <command>

Or switch a named profile to the default

$ gc profile setdefault <profilename>

Configuration Options

~/.genesyscloud/config contains configurable options in the DEFAULT section

[DEFAULT]
output_type = yaml

Command Structure

The Genesys Cloud cli uses a multipart structure

$ gc <command> <subcommand> [options and params]

Pagination

For resources that have multiple pages such as listing users, there are options available on how to process the pages. By default the cli uses a page size of 250 and retrieves all items.

--page-size    # set a page size other than 250
--page-number   # return a specific page

Data Inputs

Some commands require bodies to be sent with the request, such as creating a new user. The body can be supplied a number of ways.

  1. Passing json with the command (escaped whitespace is not currently supported)

    $ gc users new "{\"name":\"Joe Smith\"}"
    
  2. Referencing a file

    $ gc users new user.json
    
  3. Stream input

    $ gc users new < user.json
    
    $ echo "{\"name":\"Joe Smith\"}" | gc user new
    

Testing locally

$ virtualenv venv
$ . venv/bin/activate
$ pip install --editable .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

genesyscloudcli-0.3.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

genesyscloudcli-0.3-py3-none-any.whl (3.6 kB view details)

Uploaded Python 3

File details

Details for the file genesyscloudcli-0.3.tar.gz.

File metadata

  • Download URL: genesyscloudcli-0.3.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.9.0

File hashes

Hashes for genesyscloudcli-0.3.tar.gz
Algorithm Hash digest
SHA256 4b4c5a18575db01cf099355a77894a83b58343df3c415e85d45f9159d1f938b1
MD5 3b7a800b4183a8d9dede271c7d0b315f
BLAKE2b-256 408e89478eddb6c00014cc01b2882aa89255df246a9b344b97f24b3a497565e9

See more details on using hashes here.

File details

Details for the file genesyscloudcli-0.3-py3-none-any.whl.

File metadata

  • Download URL: genesyscloudcli-0.3-py3-none-any.whl
  • Upload date:
  • Size: 3.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.9.0

File hashes

Hashes for genesyscloudcli-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9e2e0cec76576f864cd6fe739629b9fd23f01188c4397c006cbb5d05b74f605d
MD5 56645515f8fd26bd5be033279c8163eb
BLAKE2b-256 d5fa84472d56a6ae97b7a38b037e55c45657443b1e1874ecd5c8c5fec42d56bb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page