> ## Documentation Index
> Fetch the complete documentation index at: https://developer.watson-orchestrate.ibm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Genesys Bot Connector

Connect your agent to Genesys Cloud using the Bot Connector integration.

For detailed setup instructions, see [Integrating Genesys Bot Connector](https://www.ibm.com/docs/en/watsonx/watson-orchestrate/base?topic=integrations-integrating-genesys-bot-connector) in the IBM watsonx Orchestrate documentation.

### Prerequisites

* A Genesys Cloud account
* A Genesys Bot Connector integration that is created
* Genesys Cloud credentials:
  * Client ID (from Genesys OAuth)
  * Client Secret (from Genesys OAuth)
  * Bot Connector ID (from Genesys Integration)
  * API URL (from [Genesys Cloud Platform API](https://developer.genesys.cloud/platform/api/))
* A user-defined verification token:
  * Verification Token (any secure random string that you choose)

<Note>
  The Verification Token is **not** obtained from Genesys Cloud. You create this value (it can be any secure random string). You must configure this same value in both locations:

  1. Your ADK channel configuration (as `verification_token`)
  2. Your Genesys Cloud Bot Connector integration settings (go to the Credentials tab and add a key-value pair: key=`x-watson-genesys-verification-token`, value=your random string)
</Note>

### Create a Genesys Bot Connector channel

Use one of the following methods to define the channel:

**Using YAML:**

```yaml YAML theme={null}
name: "Genesys Contact Center Bot"
description: "Agent for Genesys Cloud"
channel: "genesys_bot_connector"
spec_version: "v1"
kind: "channel"
client_id: "12345678-1234-1234-1234-123456789abc"
client_secret: "your_client_secret_here"
verification_token: "your_verification_token_here"
bot_connector_id: "87654321-4321-4321-4321-cba987654321"
api_url: "https://api.mypurecloud.com"
```

**Using Python:**

```python Python theme={null}
from ibm_watsonx_orchestrate.agent_builder.channels import GenesysBotConnectorChannel

genesys = GenesysBotConnectorChannel(
    name="Genesys Contact Center Bot",
    description="Agent for Genesys Cloud",
    client_id="12345678-1234-1234-1234-123456789abc",
    client_secret="your_client_secret_here",
    verification_token="your_verification_token_here",
    bot_connector_id="87654321-4321-4321-4321-cba987654321",
    api_url="https://api.mypurecloud.com"
)
```

### Configuration requirements

| Field                | Required | Format | Description                                                                                                                                  |
| -------------------- | -------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `client_id`          | Yes      | String | Genesys Cloud client ID (from OAuth section)                                                                                                 |
| `client_secret`      | Yes      | String | Genesys Cloud client secret (from OAuth section)                                                                                             |
| `verification_token` | Yes      | String | User-defined token string (must match the value set in Genesys Bot Connector Credentials tab with key `x-watson-genesys-verification-token`) |
| `bot_connector_id`   | Yes      | String | Integration ID from Genesys Bot Connector                                                                                                    |
| `api_url`            | Yes      | String | Genesys API Server URI. For example: `https://api.mypurecloud.com`                                                                           |

<Tip>
  **Generate a verification token:** You can generate a secure random string for `verification_token` by using tools such as:

  * `openssl rand -base64 32` (Linux or macOS)
  * `[Convert]::ToBase64String((1..32 | ForEach-Object { Get-Random -Minimum 0 -Maximum 256 }))` (PowerShell)
  * Online UUID generators or password generators

  Use the same value in your ADK configuration and in the Genesys Bot Connector Credentials tab (with key `x-watson-genesys-verification-token`).
</Tip>
