# Copilot Section Source: https://docs.cognigy.com/agent-copilot/configure/copilot-section Learn how to configure the Copilot section in Endpoint settings to integrate Agent Copilot with a contact center platform. Updated in 2026.17 The **Copilot** section in the [Endpoint settings](/ai/agents/deploy/endpoints/overview) is used to configure the Agent Copilot workspace. The following Endpoints include the **Copilot** section: * [NiCE CXone Agent Assist Hub (AAH)](/agent-copilot/deploy/nice-aah) * [LINE](/ai/agents/deploy/endpoint-reference/line-messenger) * [Facebook (Meta) Messenger](/ai/agents/deploy/endpoint-reference/facebook-messenger) * [8x8](/ai/agents/deploy/endpoint-reference/8x8) * [Voice Gateway](/ai/agents/deploy/endpoint-reference/voice-gateway) * [Slack](/ai/agents/deploy/endpoint-reference/slack) * [Sunshine Conversations](/ai/agents/deploy/endpoint-reference/sunshine-conversations) * [Socket.IO](/ai/agents/deploy/endpoint-reference/socketio) * [Azure Bot Services](/ai/agents/deploy/endpoint-reference/azure-bot-services) * [Genesys](/ai/agents/deploy/endpoint-reference/genesys) * [Webhook](/ai/agents/deploy/endpoint-reference/webhook) * [Webchat v3](/webchat/v3/configuration) ## Prerequisites * If you use **Token Secret** authentication, you need a 256-bit string secret for signing. ## Limitations * Cognigy caches JWKS responses for up to 5 key store URLs at once. If an additional URL is used, the new URL replaces the oldest one in the cache. * Cognigy sends up to 10 requests/minute to any single JWKS URL. ## Restrictions * EdDSA (Ed25519/Ed448) keys aren't supported for **Public Key** or **Key Store** authentication. ## Parameters | Parameter | Type | Description | | ---------------------------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Copilot Type | List | Activates and sets how to configure Agent Copilot. Select one of the following options: | | Copilot Flow | List | Sets the Flow in which the Agent Copilot workspace or the Agent Copilot Whisper is configured. | | Copilot Config | List | Sets the configuration for the Agent Copilot workspace. Valid for workspaces configured via [API](/api-reference/agent-copilot-configurations/get-agent-copilot-configurations). | | Authentication | List | Sets the method to verify the JWT passed in the Agent Copilot URL. Enforce the method by activating **Accept Only JWT Requests**. Select one of the following methods:For more information, see [JWT Authentication Methods](#jwt-authentication-methods). | | Agent Copilot Authentication | List | This parameter appears only when **Token Secret** is selected in **Authentication**. Defines the JWT connection to use for symmetric authentication. Select a JWT connection or create one by clicking add JWT connection and configuring the connection: | | Public Keys | Text | This parameter appears only when **Public Key** is selected in **Authentication**. Defines one or more PEM-encoded public keys. A token is accepted if it verifies with any of the configured public keys. Use multiple keys to support key rotation. Remove a key to immediately invalidate tokens signed with it. | | Key Store URL | Text | This parameter appears only when **Key Store** is selected in **Authentication**. Defines the URL of your JWKS key store. The verifying key is selected by the `kid` header of the incoming token. A JWT without a `kid` header is rejected. Cognigy caches the JWKS document for up to 10 minutes per URL. After rotating a key, tokens signed with the new key can fail and tokens signed with the removed key can still succeed for up to 10 minutes. | | Accept Only JWT Requests | Toggle | Activates JWT validation according to the method selected in **Authentication**. Requests that include only a user ID and session ID are blocked. This parameter is deactivated by default. Activating this parameter improves security by preventing unauthenticated access. When deactivated, Agent Copilot still extracts `userId` and `sessionId` if a JWT is present in the URL, but the signature isn't verified. For more information, see [JWT Authentication Methods](#jwt-authentication-methods). | As of Cognigy 2026.15.0, the **Authentication** list replaces the former **Enable Copilot Authentication** toggle. Previously configured Endpoints are migrated automatically. If the former toggle was: * Turned on — **Token Secret** is selected. * Turned off — **Default (built-in)** is selected. No action is required. ## JWT Authentication Methods To secure access to Agent Copilot, the contact center platform signs a JWT containing `userId` and `sessionId`, then passes that signed JWT in the Agent Copilot URL as the `auth` parameter: ```txt theme={null} https://${AgentCopilotBaseUrl}/?URLToken=${URLToken}&auth={signed_JWT} ``` Each contact center platform has its own requirements for how the JWT signature is configured. Refer to your contact center platform documentation. Depending on the option you select in the **Authentication** list, you configure the authentication method differently: Agent Copilot handles the JWT authentication between the contact center platform and Cognigy. Activate **Accept Only JWT Requests** in the [Endpoint settings](#parameters). Symmetric authentication. The contact center platform and Cognigy share a single secret, used to both sign and verify the JWT. 1. Generate a 256-bit secret to use as the shared JWT secret. For example, you can use [OpenSSL](https://openssl-library.org/): ```sh theme={null} # Generate 32 random bytes (256 bits) and print them as a hex string openssl rand -hex 32 ``` Example output: `a3f7b9c2d8e14f6a0b5c9d3e7f2a8b4c6d0e9f3a7b1c5d8e2f4a6b9c3d7e1f85` 2. Copy the secret for later use and store it securely. 3. Sign JWTs with this secret. Agent Copilot accepts the `HS256`, `HS384`, and `HS512` HMAC algorithms. For example, use the [`jsonwebtoken` Node.js library](https://www.npmjs.com/package/jsonwebtoken): ```js HS256 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload 'a3f7b9c2d8e14f6a0b5c9d3e7f2a8b4c6d0e9f3a7b1c5d8e2f4a6b9c3d7e1f85', // shared secret { algorithm: 'HS256' } // HMAC using SHA-256 ); ``` ```js HS384 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload 'a3f7b9c2d8e14f6a0b5c9d3e7f2a8b4c6d0e9f3a7b1c5d8e2f4a6b9c3d7e1f85', // shared secret { algorithm: 'HS384' } // HMAC using SHA-384 ); ``` ```js HS512 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload 'a3f7b9c2d8e14f6a0b5c9d3e7f2a8b4c6d0e9f3a7b1c5d8e2f4a6b9c3d7e1f85', // shared secret { algorithm: 'HS512' } // HMAC using SHA-512 ); ``` 1. In the **Copilot** section in the Endpoint settings, select **Token Secret** in **Authentication**. 2. Next to **Agent Copilot Authentication**, click add JWT connection and configure the connection: * **Connection name** — enter a unique name, for example, `copilot-token-secret`. * **JWT Secret** — enter the exact same 256-bit secret you previously generated for the contact center platform, for example, `a3f7b9c2d8e14f6a0b5c9d3e7f2a8b4c6d0e9f3a7b1c5d8e2f4a6b9c3d7e1f85`. 3. Activate **Accept Only JWT Requests**. 4. Click **Create**, then **Save**. Asymmetric authentication. The contact center signs the JWT with a private key, and Cognigy verifies it with the corresponding public key. 1. Generate a public-private key pair. For example, you can use [OpenSSL](https://openssl-library.org/): **RSA:** ```sh theme={null} # Generate a 2048-bit RSA private key openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out private.pem # Derive the matching public key openssl pkey -in private.pem -pubout -out public.pem ``` **ECDSA P-256:** ```sh theme={null} # Generate a private key on the P-256 curve openssl ecparam -name prime256v1 -genkey -noout -out private.pem # Derive the matching public key openssl ec -in private.pem -pubout -out public.pem ``` 2. *(Optional)* If you want to use key rotation, generate multiple public-private key pairs. 3. Keep `private.pem` secret and store it in your own system. 4. Sign JWTs with `private.pem`. The algorithm you use depends on the key type. For example, use the [`jsonwebtoken` Node.js library](https://www.npmjs.com/package/jsonwebtoken): ```js RS256 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const fs = require('fs'); const privateKey = fs.readFileSync('private.pem'); // RSA private key const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'RS256' } // RSA key, PKCS#1 v1.5 padding, SHA-256 ); ``` ```js RS384 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const fs = require('fs'); const privateKey = fs.readFileSync('private.pem'); // RSA private key const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'RS384' } // RSA key, PKCS#1 v1.5 padding, SHA-384 ); ``` ```js RS512 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const fs = require('fs'); const privateKey = fs.readFileSync('private.pem'); // RSA private key const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'RS512' } // RSA key, PKCS#1 v1.5 padding, SHA-512 ); ``` ```js PS256 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const fs = require('fs'); const privateKey = fs.readFileSync('private.pem'); // RSA private key const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'PS256' } // RSA key, RSA-PSS padding, SHA-256 ); ``` ```js PS384 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const fs = require('fs'); const privateKey = fs.readFileSync('private.pem'); // RSA private key const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'PS384' } // RSA key, RSA-PSS padding, SHA-384 ); ``` ```js PS512 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const fs = require('fs'); const privateKey = fs.readFileSync('private.pem'); // RSA private key const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'PS512' } // RSA key, RSA-PSS padding, SHA-512 ); ``` ```js ES256 theme={null} const jwt = require('jsonwebtoken'); // JWT signing library const fs = require('fs'); const privateKey = fs.readFileSync('private.pem'); // ECDSA private key, P-256 curve const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'ES256' } // ECDSA key on the P-256 curve, SHA-256 ); ``` `ES384` and `ES512` work the same way, but need a key generated on the P-384 or P-521 curve instead (`openssl ecparam -name secp384r1 ...` or `-name secp521r1 ...`) — the algorithm is tied to the curve the key was generated on. 1. In the **Copilot** section in the Endpoint settings, select **Public Key** in **Authentication**. 2. Enter the contents of the `public.pem` file into the **Public Keys** field. ```txt theme={null} -----BEGIN PUBLIC KEY----- MIICITANBgkqhkiG9w0BAQEFAAOCAg4AMIICCQKCAgBTPbIGqvbkfo55bY7IRJ8U RUysKvl9X3qgSoJyDJhuydav7ssnxWnYFtBLziDQNeh1NsWF97bP7RkuCpyhnGYd GuKfPa6NNX8bVrzDwMtI6nwQ8KShhyiYfkQAHz7hTh/yfF5W5rg1oRH0nuUtp/w4 ukwaOHvDuz2td9pdZO6cNq1e1K96dOd7P+VRu3W27xM0cx5u5NHSFargz2WM/6+M -----END PUBLIC KEY----- ``` After you enter a public key in the field, another input field appears. Use the new input field to add another public key. 3. Activate **Accept Only JWT Requests**. 4. Click **Save**. Asymmetric authentication. The contact center signs the JWT with a private key, and Cognigy verifies it with the corresponding public key by fetching it from a JWKS (JSON Web Key Set) endpoint you host. 1. Generate a public-private key pair, the same way as for **Public Key**. For example, you can use [OpenSSL](https://openssl-library.org/): ```sh theme={null} # Generate a 2048-bit RSA private key openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out private.pem # Derive the matching public key openssl pkey -in private.pem -pubout -out public.pem ``` 2. Host a JWKS endpoint that returns your public keys as JSON, each with a unique `kid`, for example: ```json theme={null} { "keys": [ { "kty": "RSA", "use": "sig", "kid": "copilot-key-2026-01", "alg": "RS256", "n": "0vx7agoebGcQSuuPiLJXZptN9nndrQmbXEps2aiAFbWhM78LhWx4cbbfAAtVT86zwu1RK7aPFFxuhDR1L6tSoc_BJECPebWKRXjBZCiFV4n3oknjhMstn64tZ_2W-5JsGY4Hc5n9yBXArwl93lqt7_RN5w6Cf0h4QyQ5v-65YGjQR0_FDW2QvzqY368QQMicAtaSqzs8KJZgnYb9c7d0zgdAZHzu6qMQvRL5hajrn1n91CbOpbISD08qNLyrdkt-bFTWhAI4vMQFh6WeZu0fM4lFd2NcRwr3XPksINHaQ-G_xBniIqbw0Ls1jF44-csFCur-kEgU8awapJzKnqDKgw", "e": "AQAB" } ] } ``` 3. Sign JWTs with the matching private key, and set the `kid` header to the same value published in the JWKS. A JWT without a `kid` header is rejected. The algorithm you use depends on the key type, the same as for **Public Key**: ```js RS256 theme={null} const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'RS256', // RSA key, PKCS#1 v1.5 padding, SHA-256 keyid: 'copilot-key-2026-01' // must match a "kid" in the JWKS } ); ``` ```js RS384 theme={null} const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'RS384', // RSA key, PKCS#1 v1.5 padding, SHA-384 keyid: 'copilot-key-2026-01' // must match a "kid" in the JWKS } ); ``` ```js RS512 theme={null} const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'RS512', // RSA key, PKCS#1 v1.5 padding, SHA-512 keyid: 'copilot-key-2026-01' // must match a "kid" in the JWKS } ); ``` ```js PS256 theme={null} const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'PS256', // RSA key, RSA-PSS padding, SHA-256 keyid: 'copilot-key-2026-01' // must match a "kid" in the JWKS } ); ``` ```js PS384 theme={null} const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'PS384', // RSA key, RSA-PSS padding, SHA-384 keyid: 'copilot-key-2026-01' // must match a "kid" in the JWKS } ); ``` ```js PS512 theme={null} const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, { algorithm: 'PS512', // RSA key, RSA-PSS padding, SHA-512 keyid: 'copilot-key-2026-01' // must match a "kid" in the JWKS } ); ``` ```js ES256 theme={null} const token = jwt.sign( { userId: 'user-123', sessionId: 'session-456' }, // payload privateKey, // ECDSA private key, P-256 curve { algorithm: 'ES256', // ECDSA key on the P-256 curve, SHA-256 keyid: 'copilot-key-2026-01' // must match a "kid" in the JWKS } ); ``` `ES384` and `ES512` work the same way, with a key generated on the P-384 or P-521 curve instead. 1. In the **Copilot** section in the Endpoint settings, select **Key Store** in **Authentication**. 2. Enter your JWKS URL in the **Key Store URL** field. The domain is specific to your system; the path is only a convention, not a requirement — any URL that returns a valid JWKS document works. For example: ```txt theme={null} https:///.well-known/jwks.json ``` 3. Activate **Accept Only JWT Requests**. 4. Click **Save**. ## More Information * [Endpoint Settings](/ai/agents/deploy/endpoints/overview) # Grid Example: Knowledge Retrieval Source: https://docs.cognigy.com/agent-copilot/configure/examples/knowledge-retrieval Configure Agent Copilot for knowledge retrieval to surface relevant information to human agents during live conversations. This guide shows how to configure Agent Copilot for knowledge retrieval using [Knowledge AI](/ai/agents/develop/knowledge-ai/overview). In this guide, you will use a [Copilot: Knowledge Tile](/ai/agents/develop/node-reference/agent-copilot/knowledge-tile) Node to integrate RAG capabilities into your contact center platform. This allows Agent Copilot to bring up information from your knowledge base to human agents to answer user questions. The AI Agent hands over a conversation to the human agent. The human agent receives the inquiry via chat and can search the answer in an embedded knowledge widget in the Agent Copilot workspace. In this example, you can use this [CTXT sample file](/_assets/ai/empower/knowledge-ai/knowledge-ai-pdf-sample.ctxt) about Knowledge AI to create a [Knowledge Source](/ai/agents/develop/knowledge-ai/knowledge-source/overview#working-with-knowledge-sources). ## Prerequisites * Configure a contact center platform that you can integrate with a [handover provider](/ai/escalate/handover-reference/overview). For example, for [Live Agent](/ai/escalate/handover-reference/live-agent), you need to have an [Inbox](/live-agent/settings/inboxes) with the [Project ID and the Webhook URL set up](/live-agent/settings/inboxes#edit-inboxes) and, if necessary, the **Enable Agent Copilot Workspace** option activated. * Create a [handover provider](/ai/escalate/handover-reference/overview) that integrates with your contact center platform. * Add a [Large Language Model (LLM) to your Project](/ai/agents/develop/gen-ai-and-llms/providers/all-providers) that supports [Knowledge Search and Answer Extracting](/ai/agents/develop/gen-ai-and-llms/model-support-by-feature). * Create a [Knowledge Store](/ai/agents/develop/knowledge-ai/knowledge-store) and [Knowledge Sources](/ai/agents/develop/knowledge-ai/knowledge-source/overview) in the Knowledge Store. ## Configure Knowledge Retrieval for Agent Copilot ### Configure the AI Agent Flow 1. In **Build > Flows**, create a Flow and give it a name, for example, `Knowledge Retrieval Agent Flow`. 2. Add a Say Node and configure the following settings: * **Text** — enter a greeting message, for example, `Hi, do you have any questions regarding Knowledge AI?`. Save the Node. 1. Below the Say Node, add a [Handover to Human Agent Node](/ai/agents/develop/node-reference/service/handover-to-agent) and configure the following settings: * **Handover Settings** section, select your [handover provider](/ai/escalate/handover-reference/overview) from the **Handover Provider** list. Depending on the handover provider, you need to configure additional settings. * **Handover Accepted Message** — enter a message to be displayed when the handover is accepted, for example, `I'll hand over to a human agent who can look into this matter for you.`. Save the Node. ### Configure the Agent Copilot Flow The Copilot: Knowledge Tile Node requires a specific configuration to work correctly. In this example, you need an [If Node](/ai/agents/develop/node-reference/logic/if), a [Once Node](/ai/agents/develop/node-reference/logic/once) and two Copilot: Knowledge Tile Nodes. For more information, see [Copilot: Knowledge Tile Node](/ai/agents/develop/knowledge-ai/knowledge-search-and-extraction/agent-copilot-knowledge). 1. In **Build > Flows**, create a Flow and give it a clear name, for example, `Knowledge Retrieval Copilot Flow`. 2. After the **Start** Node, add an [If Node](/ai/agents/develop/node-reference/logic/if). Under the **Condition** field, click **Use Advanced Editor** and enter the following: ```txt theme={null} input.data._cognigy._agentAssist.payload.tileId === "knowledge" ``` If you set this condition to `knowledge`, the ID of the Copilot: Knowledge Tile Node needs to be set to `knowledge`. After the **Then** Child Node of the If Node, add a [Copilot: Knowledge Tile Node](/ai/agents/develop/node-reference/agent-copilot/knowledge-tile) and configure the following settings: * **Tile ID** — enter `knowledge`. * **Knowledge Source** — select a Knowledge Source, for example, the Knowledge Source you created with the CTXT sample file about Knowledge AI. 1. After the **Else** Child Node, add a [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) and set the **Copilot Grid Configuration** as follows: ```json theme={null} { "grid": { "columns": 2, "rows": 2, "gap": 5 }, "tiles": { "next-action": { "x": 1, "y": 1, "rows": 1, "columns": 1 }, "knowledge": { "x": 1, "y": 2, "rows": 1, "columns": 1 } } } ``` 1. Below the Copilot: Set Grid Node, add an [LLM Prompt Node](/ai/agents/develop/node-reference/service/llm-prompt) and configure it to generate the next best response for the agent based on the user's latest input and to store the result in the Input object: * **System Prompt** — enter the following: ```txt theme={null} Based on the user's last message, suggest the most helpful next response for a human agent. ``` * In the **Storage & Streaming** section, configure the following: * **How to handle the result** — set to **Store in Input**. * **Input Key to store Result** — set to `input.promptResult`. 2. Add a [Copilot: Next Action Tile Node](/ai/agents/develop/node-reference/agent-copilot/next-action-tile) after the LLM Prompt Node and configure the Node as follows: * **Tile ID**: `next-action` * **Text**: ```txt theme={null} {{input.promptResult.detailedResult.choices[0].message.content}} ``` 3. Add a [Copilot: Knowledge Tile Node](/ai/agents/develop/node-reference/agent-copilot/knowledge-tile) and configure it as follows: * **Tile ID**: `knowledge` * **Knowledge Source**: select a Knowledge Source, for example, the Knowledge Source you created with the CTXT sample file about Knowledge AI. Save the Node. 1. Below the If Node, add a [Once Node](/ai/agents/develop/node-reference/logic/once). 2. Copy the first Copilot: Knowledge Tile Node by right-clicking it and selecting **Copy**. 3. Below the **On the First Time** Node, right-click add node and select **Paste** to add a [Copilot: Knowledge Tile Node](/ai/agents/develop/node-reference/agent-copilot/knowledge-tile). With this grid, the Agent Copilot workspace displays a widget with LLM-generated answers and a widget where you can search the answer in the Knowledge Source. You can test the Knowledge Tile with [Agent Copilot for chat applications](/agent-copilot/getting-started/chat). ## More Information * [Knowledge AI](/ai/agents/develop/knowledge-ai/overview) * [Knowledge Source](/ai/agents/develop/knowledge-ai/knowledge-source/overview) * [Copilot: Knowledge Tile Node](/ai/agents/develop/node-reference/agent-copilot/knowledge-tile) * [Copilot: Next Action Tile Node](/ai/agents/develop/node-reference/agent-copilot/next-action-tile) * [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) * [Handover to Human Agent Node](/ai/agents/develop/node-reference/service/handover-to-agent) # Configuration Examples Source: https://docs.cognigy.com/agent-copilot/configure/examples/overview Explore Agent Copilot configuration examples including real-time translation and knowledge retrieval setups for contact center workspace integration. This section provides examples of Agent Copilot configurations that you can use to configure the Agent Copilot workspace. This configuration example shows how to configure the Agent Copilot workspace for real-time translation with chat-to-voice applications. This configuration example shows how to configure the Agent Copilot workspace for knowledge retrieval with Knowledge AI. # Grid Example: Real-Time Translation Source: https://docs.cognigy.com/agent-copilot/configure/examples/real-time-translation Configure Agent Copilot for real-time translation in voice-to-chat conversations with multilingual support. This guide shows how to configure Agent Copilot for real-time translation in a voice-to-chat application. In this example, the AI Agent receives calls, recognizes the language of the caller, and hands them over to human agents. The human agent can chat and the user receives voice responses in their own language, both in their respective languages. This guide includes configuring the following: * AI Agent Flow — configures the AI Agent to receive calls, recognize the caller's language, and hand them over to human agents. * Agent Copilot Flow — configures the Agent Copilot workspace and the real-time translation widget. For a comprehensive guide to set up a voice-to-chat application with Agent Copilot, see [Getting Started with Agent Copilot for Voice-to-Chat](/agent-copilot/getting-started/voice-to-chat). ## Prerequisites * Access to [Voice Gateway](/voice-gateway/index). * Configure a speech provider in [Cognigy](/ai/agents/test/voice-preview#set-up-a-speech-provider). * Configure settings in the Voice Gateway Self-Service Portal: * The [phone number](/voice-gateway/webapp/phone-numbers) you use in your contact center. * A Voice Gateway [Application](/voice-gateway/webapp/applications). * A [speech provider](/voice-gateway/webapp/speech-services). * Create a [Voice Gateway Endpoint](/ai/agents/deploy/endpoint-reference/voice-gateway). * Create a [handover provider](/ai/escalate/handover-reference/overview) that integrates with your contact center platform. * Configure an LLM that supports [LLM Prompt Nodes](/ai/agents/develop/node-reference/service/llm-prompt). ## Configure Real-Time Translation for Agent Copilot ### Configure the AI Agent Flow 1. In **Build > Flows**, create a Flow and give it a name, for example, `Real-Time Translation Agent Flow`. 2. Add a Say Node and configure the following settings: * **Text** — enter a greeting message, for example, `Hello! Welcome to our customer service line!`. Save the Node. 1. Below the Say Node, add a Question Node and configure the following settings: 1. **Question Type** — select **Text**. 2. Click add channel and select **Voice Gateway** from the list. 3. **Text** — enter `What is your preferred language?`. 4. Activate **Set Activity Parameters**. 5. In the **Recognizer (STT)** section, select your speech provider from the **STT Vendor** list. 6. **STT Language** — select the Flow language, for example, English (United States). 7. Activate **Recognize Language** and select the languages you want to recognize, for example, `German (Germany)`, `Portuguese (Brazil)`, from the **Alternative Language 1** and **Alternative Language 2** lists. Save the Node. 1. Below the Question Node, add a Lookup Node and configure the following settings: * **Type** — select **CognigyScript**. * **Operator** — enter the following: ```javascript theme={null} input.data.payload?.speech?.language_code ``` This value verifies the language code for language recognition. Save the Node. 2. Set the Case Nodes as follows: * Case Node 1: * **Value** — enter `de-DE`. For language recognition, use the full [BCP-47 format](https://datatracker.ietf.org/doc/html/rfc5646#appendix-A). * Case Node 2: * **Value** — enter `pt-PT`. For language recognition, use the full [BCP-47 format](https://datatracker.ietf.org/doc/html/rfc5646#appendix-A). 3. Below each Case Node, add a Set Translation Node and configure as follows: 1. Set Translation Node for German: * **User Input Language** — enter `de`. For translation, use the [ISO 639-1 language code](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes). * **Flow Language** — enter `en`. * *(Optional)* In the **Settings** section, enter a name to distinguish the Node in the **Label** field, for example, `EN/DE`. Save the Node. 2. Set Translation Node for Portuguese: * **User Input Language** — enter `pt`. For translation, use the [ISO 639-1 language code](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes). * **Flow Language** — enter `en`. * *(Optional)* In the **Settings** section, enter a name to distinguish the Node in the **Label** field, for example, `EN/PTBR`. Save the Node. 4. Below each Set Translation Node, add a [Set Session Config Node](/ai/agents/develop/node-reference/voice/voice-gateway/parameter-details) and configure the **Synthesizer (TTS)** settings as follows: 1. Set Session Config Node for German: * **TTS Vendor** — select your speech provider. * **TTS Language** — select **German**. * **TTS Voice** — select a voice for your AI Agent to use when speaking in German. 2. Set Session Config Node for Portuguese: * **TTS Vendor** — select your speech provider. * **TTS Language** — select **Portuguese** from the **TTS Language** list. * **TTS Voice** — select a voice for your AI Agent to use when speaking in Portuguese. 1. Below the Lookup Node, add an LLM Prompt Node and configure the **System Prompt** field as: ```text theme={null} Based on the user's message, reply kindly and advise you are handing over to a human agent. ``` Save the Node. Below the Lookup or the LLM Prompt Node, add a Handover to Human Agent Node and configure the following: * **Handover Settings** section, select your [handover provider](/ai/escalate/handover-reference/overview) from the **Handover Provider** list. Depending on the handover provider, you need to configure additional settings. ### Configure the Agent Copilot Flow 1. In **Build > Flows**, create a Flow and give it a clear name, for example, `Real-Time Translation Copilot Flow`. 2. Add a [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) and set the **Copilot Grid Configuration** as follows: ```json theme={null} { "grid": { "columns": 2, "rows": 2, "gap": 5 }, "tiles": { "next-action": { "x": 1, "y": 1, "rows": 1, "columns": 1 }, "transcript": { "x": 1, "y": 2, "rows": 1, "columns": 1 } } } ``` 3. Below the Copilot: Set Grid Node, add an [LLM Prompt Node](/ai/agents/develop/node-reference/service/llm-prompt) and configure it to generate the next best response for the agent based on the user's latest input and to store the result in the Input object: * **System Prompt** — enter the following: ```txt theme={null} Based on the user's last message, suggest the most helpful next response for a human agent. ``` * In the **Storage & Streaming** section, configure the following: * **How to handle the result** — set to **Store in Input**. * **Input Key to store Result** — set to `input.promptResult`. 4. Add a [Copilot: Next Action Tile Node](/ai/agents/develop/node-reference/agent-copilot/next-action-tile) after the LLM Prompt Node and configure the Node as follows: * **Tile ID**: `next-action` * **Text**: ```txt theme={null} {{input.promptResult.detailedResult.choices[0].message.content}} ``` 5. Add a [Copilot: Transcript Tile Node](/ai/agents/develop/node-reference/agent-copilot/transcript-tile) and set **Tile ID** to `transcript`. 1. In **Deploy > Endpoints**, click **+ New Endpoint** and select **Voice Copilot**. 2. In the **New Endpoint** section, configure the following: * **Name** — enter a unique name, for example, `Real-Time Translation Copilot Endpoint`. * **Flow** — select the Agent Copilot Flow you created from the list. With this grid, the Agent Copilot workspace displays a widget with the conversation transcript and a widget with an LLM-generated next action that is translated to the user's language when sent to the user. You can test the Real-Time Translation with [Agent Copilot for voice-to-chat applications](/agent-copilot/getting-started/voice-to-chat). ## More Information * [Agent Copilot for Voice-to-Chat](/agent-copilot/getting-started/voice-to-chat) * [Set Translation Node](/ai/agents/develop/node-reference/other-nodes/set-translation) # Agent Copilot Nodes Source: https://docs.cognigy.com/agent-copilot/configure/nodes Control the Agent Copilot workspace from your Cognigy Flow using configuration, plug-and-play widget, and customization Nodes. Updated in 4.60 Agent Copilot Nodes allow you to configure and control the Agent Copilot workspace from the Flow. Agent Copilot Nodes include: * **Configuration Node** — the [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) to configure and arrange the tiles in the Agent Copilot grid. * **Plug-and-play widgets** — plug-and-play widgets are Agent Copilot Nodes that require minimal configuration to integrate into the Agent Copilot workspace. * **Customization Nodes** — Nodes that can provide advanced capabilities to the widgets in the Agent Copilot workspace. ## Configuration Node This Node allows you to configure and arrange the tiles in the Agent Copilot grid. ## Plug-and-Play Widgets This Node displays and processes user-specific information directly in the widget of your Agent Copilot workspace. This Node determines the appropriate next step or action in a conversation or process based on the user's input or the current context. This Node performs sentiment analysis on the most recent input and provides insights into the emotional tone of the user. This Node captures the most recent user answer and displays it on a designated widget in the Agent Copilot workspace. ## Customization Nodes This Node allows you to create and display adaptive cards in your Agent Copilot workspace. This Node allows you to display customized HTML content in the Agent Copilot workspace. This Node allows you to embed external websites directly into the Agent Copilot workspace. This Node allows you to provide human agents with potential answers to user questions. ## More Information * [Agent Copilot](/agent-copilot/overview) * [Agent Copilot Configuration](/agent-copilot/configure/workspace) * [Embedding Agent Copilot](/agent-copilot/deploy/embedding) # Agent Copilot Configuration Source: https://docs.cognigy.com/agent-copilot/configure/overview Learn how to configure Agent Copilot with an AI Agent, Voice Gateway, and contact center integration. To integrate Agent Copilot with an AI Agent, you need to configure different components: * [Agent Copilot](#agent-copilot) * [Voice Gateway](#voice-gateway), for voice implementations. * [Contact center integration](#contact-center-integration) ## Agent Copilot The Agent Copilot configuration includes: The Agent Copilot Flow is a Flow separate from the AI Agent Flow to which you add Agent Copilot Nodes. The Copilot: Set Grid Node is required in this Flow to set the workspace arrangement on the contact center side and the widgets in the workspace. Other Agent Copilot Nodes provide functionality to the widgets in the workspace. The Agent Copilot Grid is a JSON object you can configure in the [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) that defines the layout of the Agent Copilot workspace. For more information, see [Configure the Workspace](/agent-copilot/configure/workspace). To view the Agent Copilot workspace in the contact center interface, configure the Agent Copilot URL. The workspace is rendered at this URL as soon as the handover is triggered. To configure the URL, use the following format: `https://${AgentCopilotBaseUrl}/?userId=${userId}&sessionId=${sessionId}&URLToken=${URLToken}` Where: * `AICopilotBaseUrl` — the base URL used to access the Agent Copilot workspace. * `sessionId` — the Cognigy session ID. A session represents the interaction between the human agent and the Agent Copilot workspace. * `userId` — the Cognigy user ID. It helps Agent Copilot associate the interaction with a specific user. * `URLToken` — the Endpoint token from Cognigy. The Endpoint must be linked to the Handover Flow. To find this token, go to the Endpoint that you created previously. In the **Endpoint URL** field, copy the token after `https://endpoint-trial.cognigy.ai/`. For example, in the URL `https://endpoint-trial.cognigy.ai/f38791ae20d4961acf0e97d9f377c4fe3df92894e1eff1c7a774a8ed089a4590`, the token is `f38791ae20d4961acf0e97d9f377c4fe3df92894e1eff1c7a774a8ed089a4590`. Only authorized users can access the Agent Copilot system through this URL. Example URL: ```txt wrap theme={null} https://ai-copilot-trial.cognigy.ai/?sessionId=session123&userId=user123&URLToken=a4d5c86c98f27730311591f28d194510e05ffed30ca148e3344970defd418e7d ``` You need this URL for further steps in the [Deployment section](/agent-copilot/deploy/overview) where you choose how you want to deploy your Agent Copilot workspace. ## Voice Gateway For voice implementations, you need to configure: Set up a [Voice Gateway Endpoint](/ai/agents/deploy/endpoint-reference/voice-gateway) and [application](/voice-gateway/webapp/applications) to connect the AI Agent to Voice Gateway, and Voice Gateway to the contact center. The [Voice Copilot Endpoint](/ai/agents/deploy/endpoint-reference/voice-copilot) receives the transcript of the voice call and sends it to the Agent Copilot Flow. ## Third-Party Platform Integration You can integrate Agent Copilot with a third-party platform in the following ways: For chat applications, you need to configure the handover to human agents by adding a [Handover to Human Agent Node](/ai/agents/develop/node-reference/service/handover-to-agent) to the AI Agent Flow and by using the [Copilot section](/agent-copilot/configure/copilot-section) in the Endpoint settings. To transfer calls from the AI Agent to human agents, you need to configure the call transfer by adding a [Transfer Node](/ai/agents/develop/node-reference/voice/voice-gateway/transfer) to the AI Agent Flow. Both implementations require a [handover provider](/ai/escalate/handover-reference/overview) that supports the contact center platform you use. ## More Information * [Agent Copilot Workspace](/agent-copilot/overview) * [Getting started with Agent Copilot for Chat](/agent-copilot/getting-started/chat) * [Getting started with Agent Copilot for Voice-to-Chat](/agent-copilot/getting-started/voice-to-chat) * [Getting started with Agent Copilot for Voice](/agent-copilot/getting-started/voice) * [Agent Copilot Nodes](/ai/agents/develop/node-reference/agent-copilot/overview) # Configure the Workspace Source: https://docs.cognigy.com/agent-copilot/configure/workspace Configure the Agent Copilot workspace grid layout, widget size, and tile arrangement to display content in your contact center platform. Updated in 4.65 The Agent Copilot workspace is the interface that displays the Agent Copilot on the contact center side. The workspace includes the widgets that represent the [Agent Copilot Nodes](/agent-copilot/configure/nodes) that you configure in the [Agent Copilot Flow](/agent-copilot/configure/overview). You can configure widget size and arrangement in the workspace, and display different types of content in it, including HTML, adaptive cards, or iframes. To configure the Agent Copilot workspace, you need to set the Agent Copilot grid. Other Agent Copilot Nodes provide functionality to the widgets in the workspace. ## Agent Copilot Grid The Agent Copilot grid is a JSON object that defines the size and arrangement of the tiles, through tile IDs, in the workspace. The following table shows the JSON properties you use to configure the Agent Copilot grid: | Property | | | Type | Description | | -------- | ----------- | --------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------- | | `grid` | | | Object | Set the grid size and gap between tiles. | | | `columns` | | Number | Set the number of columns in the grid. The number of columns corresponds to the grid's x-axis. | | | `rows` | | Number | Set the number of rows in the grid. The number of rows corresponds to the grid's y-axis. | | | `gap` | | Number | Set the gap size in pixels between the tiles. If you set the value to `0`, Agent Copilot uses the default value of `10`. | | `tiles` | | | Object | Set the tiles configuration. | | | `` | | Object | Enter the [tile ID](#tile-id) and set the tile configuration. The tile ID must match the tile ID in the respective Agent Copilot Node. | | | | `x` | Number | Set the coordinate of the tile in the grid's x-axis. | | | | `y` | Number | Set the coordinate of the tile in the grid's y-axis. | | | | `rows` | Number | Set the number of rows the tile takes up. | | | | `columns` | Number | Set the number of columns the tile takes up. | To configure the Agent Copilot grid, you have the following options: Use the [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) to configure the grid directly in the Agent Copilot Flow: 1. In **Build > Flows**, create an [Agent Copilot Flow](/agent-copilot/configure/overview#agent-copilot) 2. Add a [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) after the **Start** Node. You can use the following example as a reference: ```json theme={null} "grid": { "columns": 3, "rows": 8, "gap": 10 }, "tiles": { "identity-assist": { "x": 1, "y": 1, "rows": 4, "columns": 1 }, "transcript-assist": { "x": 2, "y": 1, "rows": 2, "columns": 2 }, "next-action": { "x": 2, "y": 3, "rows": 2, "columns": 2 }, "knowledge-assist": { "x": 2, "y": 5, "rows": 4, "columns": 2 }, "event-assist": { "x": 1, "y": 5, "rows": 4, "columns": 1 } } ``` Use the [Cognigy API](https://api-trial.cognigy.ai/openapi) to create a configuration for the grid through an API request. You'll need to select the configuration in the Endpoint settings. This grid configuration is used only if there's no Copilot: Set Grid Node in the Agent Copilot Flow. You can configure the grid via API and implement it by selecting it in the **Copilot** section in the [Endpoint settings](/ai/agents/deploy/endpoints/overview). To configure the grid via API, follow these steps: 1. On the [Main page](/ai/overview/user-interface/main-page), click **user menu > My Profile** in the upper-right corner. 2. In the **API Keys** section, click **+**. 3. Enter a unique name for the API key and click **Confirm**. The API key will appear in the list. Copy the API key for later use. On the Main page, click menu**> Copy Project ID**. Save the copied Project ID for later use. 1. In the [Cognigy API](/ai/for-developers/developers/api-and-cli), go to the **AUTHENTICATION** section and paste the API key you copied earlier in the following fields: * **API Key (X-API-Key)** * **API Key (api\_key)** 2. Click **Set** next to both fields. 1. Go to the [POST](https://api-trial.cognigy.ai/openapi#post-/v2.0/aicopilotconfigs) request and configure the JSON payload: * `name` — enter a unique name for the Agent Copilot configuration. This name is displayed in the [Endpoint settings](/ai/agents/deploy/endpoints/overview). * *(Optional)* `description` — enter a description for the Agent Copilot configuration. * `config` — configure the [Agent Copilot grid](#agent-copilot-grid). 2. Paste the Project ID you copied earlier into the `projectId` field in the JSON body of the request. 3. Click **Try** to send the POST request with the JSON payload. If your request is successful, you receive the `201` status code in the response body and the Agent Copilot configuration is added to the **Copilot Config** list in the Endpoint settings. You can use the following example as a reference: ```json theme={null} { "name": "Agent Copilot Grid Example", "description": "A sample configuration for Agent Copilot showcasing the layout of tiles", "config": { "grid": { "columns": 3, "rows": 8, "gap": 10 }, "tiles": { "identity-assist": { "x": 1, "y": 1, "rows": 4, "columns": 1 }, "transcript-assist": { "x": 2, "y": 1, "rows": 2, "columns": 2 }, "next-action": { "x": 2, "y": 3, "rows": 2, "columns": 2 }, "knowledge-assist": { "x": 2, "y": 5, "rows": 4, "columns": 2 }, "event-assist": { "x": 1, "y": 5, "rows": 4, "columns": 1 } } }, "projectId": "your-project-id" } ``` ## Tile ID Each tile must have a unique tile ID, for example, `transcript-tile`, because the tile ID corresponds to a JSON key. You need to use the tile ID in the respective Agent Copilot Node to map it correctly to the tile in the workspace. If Agent Copilot receives updates for a tile ID that isn't in the Agent Copilot configuration, the tile isn't rendered. Additionally, a warning indicator is displayed in the lower-right corner of the workspace, indicating that an unknown tile update has been received. In these cases, check the tile IDs in your Agent Copilot grid. ## Transcript Tile The Transcript Tile acts as a chat interface and allows human agents to read messages from end users and reply to them directly in the workspace. The tile ID of the Transcript Tile is `transcript` and must be included in your Agent Copilot configuration. This tile is intended for [chat use cases](/agent-copilot/getting-started/chat) in [standalone Agent Copilot applications](/agent-copilot/deploy/standalone). For voice-related scenarios, use the [Copilot: Transcript Tile Node](/ai/agents/develop/node-reference/agent-copilot/transcript-tile). To activate the Transcript Tile, go to the **Copilot** section in the Endpoint settings and use the settings in **Transcript Tile**: | Setting | Description | | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Enable Transcript Tile with ID 'transcript' in the Agent Copilot workspace | Activates the Transcript Tile. | | Enable the chat input for the Transcript Tile to enable the agent to send messages to the customer | Allows human agents to send messages to the end user from the Transcript Tile. The following handover providers don't support this setting: Genesys Cloud Open Messaging, NiCE CXone, storm, and 8x8. | | Enable redaction of Transcript Tile messages | Redacts credit card numbers in messages in the Transcript Tile and replaces them with the `CREDIT_CARD_NUMBER` placeholder. | # Agent Copilot Custom Integration Source: https://docs.cognigy.com/agent-copilot/deploy/custom-integration This guide shows how to embed Agent Copilot into a custom contact center or agent desktop using the Voice Copilot Endpoint. It helps developers test and validate Copilot quickly without a full contact-center setup. Works for both chat and voice. ## Prerequisites * Configured the Voice Gateway integration: * If a Voice Copilot Endpoint is used for voice or chat use cases. * If a Webhook Endpoint is used for voice use cases. ## Restrictions * If you use a Webhook Endpoint, you will be charged for two conversations: one with the webhook and one with Agent Copilot. ## Create an Endpoint Mock a request via Postman or curl to validate the webhook accepts your session. 1. In the left-side menu of your Project, click **Deploy > Endpoints**. 2. On the **Endpoints** page, click **+ New Endpoint**. 3. In the **New Endpoint** section, do the following: 1. Select the **Voice Copilot** Endpoint type. 2. Specify a unique name. 3. Select a Flow from the list. Save changes. 4. Go to the **Configuration Information** section and copy the URL from the **Endpoint URL** field. 1. In the left-side menu of your Project, click **Deploy > Endpoints**. 2. On the **Endpoints** page, click **+ New Endpoint**. 3. In the **New Endpoint** section, do the following: 1. Select the **Webhook** Endpoint type. 2. Specify a unique name. 3. Select a Flow from the list. Save changes. 4. Go to the **Configuration Information** section and copy the URL from the **Endpoint URL** field. ## Mock a Request Send a `POST` request to the Endpoint which you configured in the previous step. Your web server should accept `POST` requests and process the JSON payload sent by Cognigy. For testing purposes, you can use [webhook.site](https://webhook.site) as a temporary web server. Replace `https://` with the Endpoint URL from your Endpoint's settings. ```bash theme={null} curl -X POST https:// \ -H "Content-Type: application/json" \ -d '{ "userId": "user123", "sessionId": "session123", "text": "Hello, I need help with my order", "data": { "exampleKey": "exampleValue" } }' ``` 1. Open the Postman collection, select **Add a request**, then set the request type to `POST`. 2. Enter the Endpoint URL as the request URL. 3. Go to the **Headers** tab and add `Content-Type: application/json`. 4. Go to the **Body** tab, select **raw**, then select **JSON** as the format. 5. Paste the request body: ```json theme={null} { "userId": "user123", "sessionId": "session123", "text": "Hello, I need help with my order", "data": { "exampleKey": "exampleValue" } } ``` | Parameter | Type | Description | Required | | --------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- | | userId | String | The ID of the end user. | Yes | | sessionId | String | The ID used to track the current session and maintain its state. Generate a new unique ID for each new session. For testing, you can use any string and change it whenever you want to start a new session. | Yes | | text | String | The text that the assigned Flow should process. | No, if `data` is specified[1](#footnote1) | | data | Object | The data that the assigned Flow should process. | No, if `text` is specified[1](#footnote1) | ## Configure the Agent Copilot URL When setting up Agent Copilot, you can choose between embedded or standalone Agent Copilot versions. For standalone Agent Copilot, use the URL format to access the workspace: ```txt theme={null} https://${AgentCopilotBaseUrl}/?userId=${userId}&sessionId=${sessionId}&URLToken=${URLToken} ``` For the configuration details, refer to the [Agent Copilot URL](/agent-copilot/configure/overview#agent-copilot-url) section. ### (Optional) Embed in the Agent Desktop You can embed Agent Copilot into any contact center interface using an iframe. Some platforms may require additional setup, such as enabling scripts or granting API access. Embedding is specific to the contact center, so verify the integration on the provider's side to ensure proper functionality. ```html theme={null} ``` ## More Information * [Overview](/agent-copilot/deploy/overview) *** 1: You must provide at least one of `text` or `data`. You can send either, or both. If both are missing or invalid, the REST Endpoint throws an error. # Embedded Agent Copilot Source: https://docs.cognigy.com/agent-copilot/deploy/embedding Updated in 2026.15 You can embed Agent Copilot directly into your contact center interface. In this mode, Copilot runs inside the agent workspace, allowing agents to interact with AI assistance without leaving their primary contact center application. This option is useful if you want to provide a seamless in-app experience and reduce context switching for agents. All features remain available, including real-time guidance, transcript sharing, and support for both chat and voice use cases. ## How to Use 1. Make sure you configured an Agent Copilot URL using the following pattern: `https://${AgentCopilotBaseUrl}/?userId=${userId}&sessionId=${sessionId}&URLToken=${URLToken}`. For the configuration details, refer to the [Agent Copilot URL](/agent-copilot/configure/overview#agent-copilot-url) section. 2. Pass this URL along with the handover to the human agent: * For native integrations, the embedded version is supported automatically. * For custom integrations, include the link in your handover configuration and embed it via **iFrame**: ```html theme={null} ``` 3. If you are using a **voice use case**, check the **Transfer Node** in your Flow and ensure the **UUIValue** is forwarded via SIP headers during the transfer to the human agent. ### Secure Access with JWT You can secure access to Agent Copilot by passing a JWT in the URL. This approach ensures that only authenticated users can open the Agent Copilot workspace. ```txt theme={null} https://${AgentCopilotBaseUrl}/?URLToken=${URLToken}&auth={JWT} ``` Where `auth` is the JWT used for authentication. In the **Copilot** section of the Endpoint settings, you can control how the JWT is verified with the **Authentication** and **Accept Only JWT Requests**. The following methods support JWT authentication: * **Default (built-in)** — Agent Copilot handles the JWT authentication between the contact center platform and Cognigy. Activate **Accept Only JWT Requests** in the [Endpoint settings](/agent-copilot/configure/copilot-section#parameters). * **Token Secret** — the contact center and Cognigy share a 256-bit JWT secret. Configure it by selecting or creating a connection in the **Agent Copilot Authentication** field. The contact center platform must sign the JWT with the shared secret before passing it in the URL. * **Public Key** — enter one or more PEM-encoded public keys into the **Public Keys** field. The JWT must be signed with the corresponding private key. Multiple keys are supported to allow for key rotation. * **Key Store** — provide a JWKS URL in the **Key Store URL** field. The Agent Copilot backend retrieves the public key from the key store using the `kid` claim in the JWT header. The contact center integration must proceed as follows: 1. Creates values for `userId` and `sessionId`. 2. Uses `URLToken` from the respective Cognigy Endpoint. 3. Reads the signing key from an internal storage. 4. Signs a JWT with a payload containing the `userId` and `sessionId`. The Agent Copilot backend proceeds as follows: 1. Checks if the `auth` parameter is passed in the URL. 2. If `auth` is passed, the value is treated as a JWT and the Agent Copilot backend verifies the JWT signature using the configured authentication method. 3. During verification, Agent Copilot decodes the payload of the JWT to retrieve the `userId` and `sessionId` parameters, and reads `URLToken` from the URL query string. For more information about JWTs, read the [JWT documentation](https://www.jwt.io/introduction). ## More Information * [Agent Copilot](/agent-copilot/overview) * [Getting started with Agent Copilot](/agent-copilot/getting-started/chat) * [Agent Copilot Configuration](/agent-copilot/configure/overview) * [Agent Copilot Nodes](/ai/agents/develop/node-reference/agent-copilot/overview) * [Integration with Contact Centers](/agent-copilot/configure/overview) # NiCE CXone AAH Source: https://docs.cognigy.com/agent-copilot/deploy/nice-aah Added in 2026.4 NiCE CXone AAH Endpoint configuration panel in Cognigy The NiCE CXone AAH Endpoint enables you to deploy [Agent Copilot](/agent-copilot/overview) directly through [NiCE CXone Agent Assist Hub (AAH)](https://help.nicecxone.com/content/aiassistantsandbots/agentassisthub/cognigyagentassist/cognigyagentassist.htm). This deployment mode lets you use Agent Copilot in the NiCE CXone Mpower contact center without a Cognigy Agent. ## Prerequisites * An account on the [NiCE CXone](https://cxone.niceincontact.com/) platform. * Access to the [CXone Mpower Agent](https://help.nicecxone.com/content/agent/agentapplicationadministration/cxoneagent/cxoneagentforadministrators.htm) in NiCE CXone AAH. * Install the [NiCE CXone Agent WebRTC extension](https://help.nicecxone.com/content/agent/cxoneagent/addcxawebrtcext.htm). * Generate a [Cognigy API key](/ai/administer/user-menu/my-profile#api-keys). * Configure an [Agent Copilot Flow](/agent-copilot/configure/overview#agent-copilot). * A 256-bit string secret to sign a JSON Web Token (JWT). Both [Cognigy](#setup-on-the-cognigy-ai-side) and [NiCE CXone](#setup-on-the-nice-cxone-side) use the same secret to authenticate via JWT and establish a secure connection. For more information, read the [JWT documentation](https://www.jwt.io/introduction). ## Limitations * When the end user hangs up, the Agent Copilot window on the NiCE CXone AAH platform closes, and the human agent can no longer access it. ## General Endpoint Settings | Setting | Description | | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Flow | Select the [Agent Copilot Flow](/agent-copilot/configure/overview#agent-copilot) to use for the Endpoint.

You can enter manually by clicking **Manual Input** below the Flow list. Click open flow next to the **Flow** list to open the selected Flow in the Flow editor. | | Endpoint URL | The Endpoint URL serves as the interface to the Endpoint. You need this URL to configure the AAH in NiCE CXone. | | Enable Endpoint | Toggle to activate or deactivate the Endpoint. This setting is enabled by default. | ## Specific Endpoint Settings | Parameter | Description | | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | NiCE CXone AAH Authentication | Select a NiCE CXone AAH connection from the list.
Alternatively, click add NiCE CXone AAH connection next to the list to configure a connection to NiCE CXone AAH by filling in the following fields: | ## How to Set Up ### Setup on the Cognigy Side 1. Go to **Deploy > Endpoints**. 2. On the **Endpoints** page, click **+ New Endpoint**. 3. In the **New Endpoint** section, configure the following: 1. Select the **NiCE CXone AAH** Endpoint type. 2. Add a unique name. 3. Select a relevant Agent Copilot Flow from the list. Save changes. 4. In the **Configuration Information** section, copy the Endpoint URL and save it for later use in NiCE CXone. This URL is composed of two parts, the server address and the URL token. For example, if the Endpoint URL is `https://endpoint-trial.cognigy.ai/69ad2e3f9a1bc351eac7aa234cee41c2967d7b0b9dbbdba6b5711357bdgaa1a8`, then: * The server address is `https://endpoint-trial.cognigy.ai/`. * The URL token is `69ad2e3f9a1bc351eac7aa234cee41c2967d7b0b9dbbdba6b5711357bdgaa1a8`. 5. Activate the **Enable Endpoint** setting. 6. In the **NiCE CXone AAH Setup** section, click add NiCE CXone AAH connection next to the **NiCE CXone AAH Authentication** field and add a NiCE CXone AAH connection by filling in the following fields: * **Connection name** — enter a unique name. * **API Key** — enter a [Cognigy API key](#prerequisites). 7. In the **Copilot** section, configure the following: * **Copilot Type** — select **Workspace**. 8. Toggle on the **Enable Copilot Authentication** option. 9. Click add JWT connection next to the **Agent Copilot Authentication** field to configure the JWT connection: * **Connection name** — enter a unique name. * **JWT Secret** — enter the [string](#prerequisites) to be used as the JWT secret. 10. *(Optional)* Activate the **Accept Only JWT Requests** option to block any requests to the Agent Copilot URL that don't contain a valid JWT. This parameter is deactivated by default. Activating this parameter is useful for security reasons because it ensures that access requests that include only the user and session IDs are blocked. ### Setup on the NiCE CXone Side 1. On the [NiCE CXone](https://cxone.niceincontact.com/) platform, click the **Applications** selector in the upper-left corner. 2. Go to **Others > Automation & AI**. The **Automation & AI** window opens. 3. In the left-side **CXone Mpower Hubs** menu, select **Agent Assist Hub**. The **Agent Assist Hub** panel appears. Click **Add Agent Assist App**. 4. At **Step 1: General Information**, configure the following: * **Agent Assist App Name** — enter a unique name. Copy and save the name for later use in NiCE CXone. * **Select Agent Assist App Type** — select **Cognigy Assist**. 5. At **Step 2: Configuration**, configure the following: * **Endpoint URL** — enter the server address from the Endpoint URL that you saved previously, for example, `https://endpoint-trial.cognigy.ai/`. * **Agent Assist URL** — enter the base URL of Agent Copilot, for example, `https://agent-copilot-trial.cognigy.ai/`. * **URL Token** — enter the URL token from the Endpoint URL that you saved previously, for example, `69ad2e3f9a1bc351eac7aa234cee41c2967d7b0b9dbbdba6b5711357bdgaa1a8`. * **API Key** — enter the API key generated in NiCE CXone. * **JWT Secret Key** — enter the [string](#prerequisites) to be used as the JWT secret. 6. Click **Create**. 1. In the **CXone Mpower Hubs** menu, select **Transcription Hub > Continuous Stream** and click **Add Transcription Profile** and configure the following: 1. At **Step 1: General Information**, configure the following: * **Transcription Profile Name** — enter a unique name. Copy and save the name for later use in NiCE CXone. * **Select Provider** — select your transcription provider. 2. At **Step 2: Configuration**, configure according to the selected provider. 2. Click **Create** and close the **Automation & AI** window. 1. On the [NiCE CXone](https://cxone.niceincontact.com/) platform, click the **Applications** selector in the upper-left corner and select **ACD**. 2. In the left-side menu, select **Campaigns**. 3. In the upper-right corner, click **+ Create Campaign** and give the campaign a unique name. 1. On the [NiCE CXone](https://cxone.niceincontact.com/) platform, click the **Applications** selector in the upper-left corner and select **Studio**. 2. In the upper-right corner, click **New Script** and select **Phone**. 3. In the left-side menu, click actions and type `Begin` in the **Search actions** field. 4. Drag the **Begin** action onto the canvas. 5. Hover over the **Begin** action and click the circle on the right. The **Choose Action** widget opens. 6. Type `Agent Assist` in the **Search actions** field and select the **Agent Assist** action from the list. The **Agent Assist** is set on the canvas. 7. Click the **Agent Assist** action and paste the Agent Assist App Name that you saved previously in the **Assist Launch Config Name** field. 8. Hover over the **Agent Assist** action and click the circle on the right. The **Choose Action** widget opens. 9. Type `Continuous Transcription` in the **Search actions** field and select the **Continuous Transcription** action from the list. The **Continuous Transcription** action is set on the canvas. 10. Click the **Continuous Transcription** action and configure the following: * **TranscriptionProfileName** — paste the Transcription Profile Name that you saved previously. * **Enabled** — enter `true`. * **Participants** — enter `Both`. * **GenerateUtteranceEvents** — enter `false`. 11. In the upper-right corner, click **Create**. 12. Enter a unique name in the **Name** field and click **Create**. 1. In the left-side menu of the ACD application, select **ACD Skills**. 2. Click **+ Create New** and select **Single Skill**. 3. In the **Name & Other Details** section, configure the following: * **Media Type** — select **Phone Call**. * **Skill Name** — enter a unique name. * **Inbound/Outbound** — select **Outbound**. * **Campaign** — select the campaign you created previously. * **Custom Script** — select the script you created previously. 4. In the upper-right corner, click **Create**. 1. In the left-side menu of the ACD application, select **ACD Users**. 2. Select the ACD user you want to assign the skill to from the list. You can type their name in the **Search** field to find them. 3. Go to the **Skills** tab, select the skill you previously created from the **Add Skills** list and click **Add Skills**. The skill is moved to the **Assigned Skills** list. 4. In the **Proficiency** column of the skill you assigned, select **1 - Highest** from the list. Click **Save Proficiencies**. ## Test the Endpoint After you've set up the Endpoint, you can test Agent Copilot by clicking the **Screen Pops** icon and making a call through the [NiCE CXone Agent interface](https://help.nicecxone.com/content/agent/cxoneagent/cxoneagent.htm?tocpath=Agents%7CAgent%20%7C_____0#TheAgentInterface). ## More Information * [Cognigy in NiCE CXone](https://help.nicecxone.com/content/aiassistantsandbots/agentassisthub/cognigyagentassist/cognigyagentassist.htm?) * [Integrate Cognigy with NiCE CXone](https://help.nice-incontact.com/content/aiassistantsandbots/virtualagenthub/integratecognigy.htm?tocpath=Virtual%20Agent%20Hub%7CVirtual%20Agent%20Hub%7CVirtual%20Agent%20Integrations%7CCognigy%7C_____1) * [NiCE CXone Studio](https://help.nicecxone.com/content/studio/gettingstarted/startusingstudiocx.htm?Highlight=studio) * [NiCE CXone ACD](https://help.nicecxone.com/content/acd/welcometoacd.htm) * [NiCE CXone Automation and AI](https://help.nicecxone.com/content/aiassistantsandbots/aiassistantsandbots.htm) * [NiCE CXone Agent](https://help.nicecxone.com/content/agent/cxoneagent/cxoneagent.htm) # Deploy and Integrate Agent Copilot Source: https://docs.cognigy.com/agent-copilot/deploy/overview Deploy Agent Copilot as standalone or embedded, with integrations for Genesys, Salesforce, and NiCE CXone. The Agent Copilot workspace is a web-based application that provides customer service agents with AI-powered assistance during their interactions with customers. It can be deployed in various ways to suit your contact center's architecture and requirements. ## Deployment Options The Agent Copilot workspace is designed for flexible integration into any contact center environment. Depending on your needs, it can be deployed in two primary ways: * **Standalone Deployment:** The Agent Copilot workspace can be used as a standalone application, accessible via a web browser. * **Embedded Deployment:** The workspace can be embedded directly into an existing third-party application, such as a contact center agent desktop. This provides a seamless user experience for agents. ## Integrations ### Native Integrations Cognigy also provides out-of-the-box native integrations for the following contact centers, simplifying the setup process and ensuring a streamlined connection. * **Genesys Cloud**: [Genesys Cloud Open Messaging](/ai/escalate/handover-reference/genesys-cloud-open-messaging) * **Salesforce**: [Salesforce Service Cloud](/ai/escalate/handover-reference/salesforce) and [Salesforce MIAW](/ai/escalate/handover-reference/salesforce-miaw) * **NiCE CXone**: [NiCE CXone AAH](/agent-copilot/deploy/nice-aah) ### Custom Integration For all contact centers, the Agent Copilot workspace can be integrated via a custom integration. This approach gives you full control over how the workspace is configured and deployed within your specific environment. # Standalone Agent Copilot Source: https://docs.cognigy.com/agent-copilot/deploy/standalone Updated in 2026.15 You can deploy Agent Copilot as a standalone app. In this mode, Copilot is accessed via a dedicated URL and can be opened on a separate browser tab instead of being embedded into a contact center interface. This option is useful if your contact center doesn't support embedding, or if human agents prefer working with Agent Copilot in a full-screen view. All features remain available, including real-time guidance, transcript sharing, and support for both chat and voice use cases. ## How to Use 1. Make sure you configured an Agent Copilot URL using the following pattern: `https://${AgentCopilotBaseUrl}/?userId=${userId}&sessionId=${sessionId}&URLToken=${URLToken}`. For the configuration details, refer to the [Agent Copilot URL](/agent-copilot/configure/overview#agent-copilot-url) section. 2. Pass this URL along with the handover to the human agent. * For native integrations, the link is passed automatically. * For custom integrations, include the link in your handover configuration. 3. If you work with a voice use case, check the Transfer Node in your Flow. 4. Configure the Transfer Node: 1. Fill in the **Transcription Webhook** field with your Agent Copilot URL. 2. Activate **Enable Copilot**. 3. Specify the header that carries the UUIValue in the **Copilot Headers Key** field. The default is `X-Custom-Header`. This header will be sent to the Agent Copilot transcription webhook, while the UUIValue is also forwarded via SIP headers when transferring the call to the human agent. ### Secure Access with JWT You can secure access to Agent Copilot by passing a JWT in the URL. This approach ensures that only authenticated users can open the Agent Copilot workspace. ```txt theme={null} https://${AgentCopilotBaseUrl}/?URLToken=${URLToken}&auth={JWT} ``` Where `auth` is the JWT used for authentication. In the **Copilot** section of the Endpoint settings, you can control how the JWT is verified with the **Authentication** and **Accept Only JWT Requests**. The following methods support JWT authentication: * **Default (built-in)** — Agent Copilot handles the JWT authentication between the contact center platform and Cognigy. Activate **Accept Only JWT Requests** in the [Endpoint settings](/agent-copilot/configure/copilot-section#parameters). * **Token Secret** — the contact center and Cognigy share a 256-bit JWT secret. Configure it by selecting or creating a connection in the **Agent Copilot Authentication** field. The contact center platform must sign the JWT with the shared secret before passing it in the URL. * **Public Key** — enter one or more PEM-encoded public keys into the **Public Keys** field. The JWT must be signed with the corresponding private key. Multiple keys are supported to allow for key rotation. * **Key Store** — provide a JWKS URL in the **Key Store URL** field. The Agent Copilot backend retrieves the public key from the key store using the `kid` claim in the JWT header. The contact center integration must proceed as follows: 1. Creates values for `userId` and `sessionId`. 2. Uses `URLToken` from the respective Cognigy Endpoint. 3. Reads the signing key from an internal storage. 4. Signs a JWT with a payload containing the `userId` and `sessionId`. The Agent Copilot backend proceeds as follows: 1. Checks if the `auth` parameter is passed in the URL. 2. If `auth` is passed, the value is treated as a JWT and the Agent Copilot backend verifies the JWT signature using the configured authentication method. 3. During verification, Agent Copilot decodes the payload of the JWT to retrieve the `userId` and `sessionId` parameters, and reads `URLToken` from the URL query string. For more information about JWTs, read the [JWT documentation](https://www.jwt.io/introduction). # Getting Started with Agent Copilot for Chat Source: https://docs.cognigy.com/agent-copilot/getting-started/chat Get started with Agent Copilot for chat: configure your first workspace with widgets that suggest next actions to human agents in your contact center. In this guide, you will learn how to configure your first embedded Agent Copilot workspace for the chat AI Agent. This configuration provides an Agent Copilot workspace that includes two widgets that suggest next actions to the human agent. ## Prerequisites * Configure a contact center platform that you can integrate with a [handover provider](/ai/escalate/handover-reference/overview). For example, for [Live Agent](/ai/escalate/handover-reference/live-agent), you need to have an [Inbox](/live-agent/settings/inboxes) with the [Project ID and the Webhook URL set up](/live-agent/settings/inboxes#edit-inboxes) and, if necessary, the **Enable Agent Copilot Workspace** option activated. * Add a [compatible LLM](/ai/agents/develop/gen-ai-and-llms/model-support-by-feature) for the LLM Prompt and Copilot: Sentiment Tile Nodes and configure the LLM in the [Generative AI settings](/ai/agents/develop/gen-ai-and-llms/generative-ai). ## Setup Process The setup process includes the following steps: 1. Create a handover provider. The handover provider connects the AI Agent and Agent Copilot to your contact center. 2. Create a Handover Flow. The Handover Flow controls the interaction with the AI Agent and the handover to a human agent. 3. Create an Agent Copilot Flow. The Agent Copilot Flow controls the Agent Copilot workspace and the individual widgets in it. 4. Test the Agent Copilot workspace through a Webchat v3 Endpoint. ## Set Up Agent Copilot for Chat In **Deploy > Handover Providers**, create a [Handover Provider](/ai/escalate/handovers) according to your contact center platform. 1. In **Build > Flows**, create a [Flow](/ai/agents/develop/projects-and-flows/overview) and give it a clear name, for example, `Handover`. 2. In the Flow editor, add a [Say Node](/ai/agents/develop/node-reference/basic/say) and set its **Text** parameter to `Hi, let's hand you over to the human agents.`. 3. Add a [Handover to Human Agent Node](/ai/agents/develop/node-reference/service/handover-to-agent) and configure as follows: * **Handover Provider** — set to the previously [created Handover Provider](#create-a-handover-provider), and [configure it accordingly](/ai/escalate/handover-reference/overview). For example, if you use [Live Agent](/ai/escalate/handover-reference/live-agent), you need to set the **Live Agent Inbox ID**. * **Handover Accepted Message** — enter `Transferring to human agents...`. 1. In **Build > Flows**, create a Flow and give it a clear name, for example, `Agent Copilot`. 2. Add a [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) and configure the grid as follows: ```json theme={null} { "grid": { "columns": 2, "rows": 2, "gap": 5 }, "tiles": { "next-best-action": { "x": 1, "y": 1, "rows": 1, "columns": 1 }, "sentiment": { "x": 2, "y": 1, "rows": 1, "columns": 1 } } } ``` 3. After the Copilot: Set Grid Node, add an [LLM Prompt Node](/ai/agents/develop/node-reference/service/llm-prompt). Configure it to generate the next best response for the agent based on the user's latest input and to store the result in the Input object: * **System Prompt** — enter the following: ```txt theme={null} Based on the user's last message, suggest the most helpful next response for a human agent. ``` * In the **Storage & Streaming** section, configure the following: * **How to handle the result** — set to **Store in Input**. * **Input Key to store Result** — set to `input.promptResult`. 4. Add the following Agent Copilot Nodes after the LLM Prompt Node and configure them as follows: * **[Copilot: Next Action Tile Node](/ai/agents/develop/node-reference/agent-copilot/next-action-tile)**: * **Tile ID** — `next-best-action` * **Text**: ```txt theme={null} {{input.promptResult.detailedResult.choices[0].message.content}} ``` This expression dynamically retrieves the LLM-generated suggestion for the tile. * *(Optional)* In the **Settings** section, set **Label** to `Next Best Action`. * **[Copilot: Sentiment Tile Node](/ai/agents/develop/node-reference/agent-copilot/sentiment-tile)**: * **Tile ID** — `sentiment`. * *(Optional)* In the **Settings** section, set **Label** to `Customer Sentiment`. To test Agent Copilot, create a Webchat v3 Endpoint: 1. In **Deploy > Endpoints**, create a [Webchat v3 Endpoint](/webchat/v3/configuration) 2. In the Endpoint settings, configure the following: * Set **Flow** to the previously created Handover Flow, for example, `Handover`. * In the **Copilot** section, set **Copilot Flow** to the previously created Agent Copilot Flow, for example, `Agent Copilot`. 3. Click **Save** to activate the **Open Demo Webchat** button. Then, to simulate a user interaction and test Agent Copilot, follow these steps: 1. In the Webchat v3 Endpoint settings you created, click **Open Demo Webchat** in the upper-right corner. Demo Webchat opens. 2. Click **Start conversation** and send the AI Agent a message, for example, `Hello, I need help with my order`. You should receive a message with the text you set in the Say Node followed by the text from the Handover to Human Agent Node. At the start of a conversation, the `Initial message for AI Copilot` reply may appear in the human agent's chat as if it were sent by the end user. This reply is added automatically to trigger Agent Copilot and is visible only to the human agent. 3. Go to your contact center platform and search for the session with the message you sent. The Agent Copilot workspace displays two widgets that suggest next actions. ## More Information * [Agent Copilot](/agent-copilot/overview) * [Agent Copilot Nodes](/ai/agents/develop/node-reference/agent-copilot/overview) * [Agent Copilot for Voice](/agent-copilot/getting-started/voice) # Overview Source: https://docs.cognigy.com/agent-copilot/getting-started/overview Get started with Agent Copilot setup guides for chat, voice, and voice-to-chat AI agent modes. These getting started guides help you set up Agent Copilot in different modes. Set up Agent Copilot for AI Agents in chat applications. Set up Agent Copilot for voice AI Agents with Voice Gateway. Set up Agent Copilot for voice AI Agents in chat applications that respond to users with voice via TTS. # Getting Started with Agent Copilot for Voice Source: https://docs.cognigy.com/agent-copilot/getting-started/voice Set up Agent Copilot for voice applications with a workspace including next action widgets and call transcripts for human agents in contact centers. In this guide, you will learn how to configure your first embedded Agent Copilot workspace for a voice AI Agent. This configuration provides an Agent Copilot workspace that includes two widgets: * A [Copilot: Next Action Tile Node](/ai/agents/develop/node-reference/agent-copilot/next-action-tile) that suggests a next action to the human agent. * A [Copilot: Transcript Tile Node](/ai/agents/develop/node-reference/agent-copilot/transcript-tile) that displays the conversation transcript to the human agent. ## Prerequisites * Access to [Voice Gateway](/voice-gateway/index). * Configure a speech provider in [Cognigy](/ai/agents/test/voice-preview#set-up-a-speech-provider) and the [Voice Gateway Self-Service Portal](/voice-gateway/webapp/speech-services). * Configure the [phone number](/voice-gateway/webapp/phone-numbers) you use in your contact center in the Voice Gateway Self-Service Portal. * Configure a contact center platform that supports voice calls, for example, [Genesys Cloud Open Messaging](/ai/escalate/handover-reference/genesys-cloud-open-messaging), and can integrate with a [handover provider](/ai/escalate/handover-reference/overview). * Add a [compatible LLM](/ai/agents/develop/gen-ai-and-llms/model-support-by-feature) for the LLM Prompt Node. ## Setup Process 1. Create a handover provider. The handover provider connects the AI Agent to your contact center platform. 2. Create an Agent Copilot Flow. The Agent Copilot configures the Agent Copilot workspace and the individual widgets. 3. Create a Voice Copilot Endpoint. The Voice Copilot Endpoint receives the transcript of the voice call and sends it to the Agent Copilot workspace. 4. Create a Transfer Flow. The Transfer Flow configures the user interaction with the AI Agent and the handover to a human agent. 5. Create a Voice Gateway Endpoint. The Voice Gateway Endpoint connects the AI Agent to Voice Gateway. 6. Create an [application](/voice-gateway/webapp/applications) in the Voice Gateway Self-Service Portal. The Voice Gateway application connects your contact center phone number to the Voice Gateway Endpoint. 7. Test the Agent Copilot workspace by calling the phone number you configured in the Voice Gateway application. ## Set Up Agent Copilot for Voice In **Deploy > Handover Providers**, create a [handover provider](/ai/escalate/handovers) according to your contact center platform. Depending on the platform, you may need to configure different settings for the Transfer Flow. 1. In **Build > Flows**, create a [Flow](/ai/agents/develop/projects-and-flows/overview) and give it a clear name, for example, `Agent Copilot`. 2. Add a [Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) and set the grid as follows: ```json theme={null} { "grid": { "columns": 2, "rows": 2, "gap": 5 }, "tiles": { "next-action": { "x": 1, "y": 1, "rows": 1, "columns": 1 }, "transcript": { "x": 1, "y": 2, "rows": 1, "columns": 1 } } } ``` 3. After the Copilot: Set Grid Node, add an [LLM Prompt Node](/ai/agents/develop/node-reference/service/llm-prompt). Configure it to generate the next best response for the agent based on the user's latest input and to store the result in the Input object: * **System Prompt** — enter the following: ```txt theme={null} Based on the user's last message, suggest the most helpful next response for a human agent. ``` * In the **Storage & Streaming** section, configure the following: * **How to handle the result** — set to **Store in Input**. * **Input Key to store Result** — set to `input.promptResult`. 4. Add the following Agent Copilot Nodes after the LLM Prompt Node and configure them as follows: * **[Copilot: Next Action Tile Node](/ai/agents/develop/node-reference/agent-copilot/next-action-tile)**: * **Tile ID** — `next-action` * **Text**: ```txt theme={null} {{input.promptResult.detailedResult.choices[0].message.content}} ``` This expression dynamically retrieves the LLM-generated suggestion for the widget. * **[Copilot: Transcript Tile Node](/ai/agents/develop/node-reference/agent-copilot/transcript-tile)**: * **Tile ID** — `transcript` 1. In **Deploy > Endpoints**, click **+ New Endpoint** and select **Voice Copilot**. 2. In the **New Endpoint** section, configure the following: * **Name** — enter a unique name, for example, `Voice Agent Copilot Endpoint`. * **Flow** — select the Agent Copilot Flow you created from the list. 3. Copy the Endpoint URL for later use in the Transfer Flow and save the changes. 1. In **Build > Flows**, create a [Flow](/ai/agents/develop/projects-and-flows/overview) and give it a clear name, for example, `Transfer`. 2. In the Flow editor, add a [Say Node](/ai/agents/develop/node-reference/basic/say) and set its **Text** parameter to `Hi, I'll transfer you to the humans.`. 3. Add a [Transfer Node](/ai/agents/develop/node-reference/voice/voice-gateway/transfer) and configure the following: * **Transfer Type** — select `Dial`. * **Transfer** — enter the phone number to redirect the call to a human agent. For testing purposes, use a phone number you have access to. * Activate the **Enable Copilot** toggle. * Enter the **Copilot Headers Key**. The key is provider-dependent. For example, for [Genesys Cloud Open Messaging](/ai/escalate/handover-reference/genesys-cloud-open-messaging), the key is `User-to-User`. * In the **Transcribe** section, enter the Voice Copilot Endpoint URL you copied from the Voice Copilot Endpoint settings in **Transcription Webhook**. 1. In **Deploy > Endpoints**, click **+ New Endpoint** and select **Voice Gateway**. 2. In the **New Endpoint** section, configure the following: * **Name** — enter a unique name. * **Flow** — select the Transfer Flow from the list, in this example, `Transfer`. 3. Copy the Endpoint URL for later use in the Voice Gateway application and save the changes. 1. In the Voice Gateway Self-Service Portal, click **Application** in the left-side menu, then **Add application**. 2. On the **Add an application** page, configure the following: * **Application name** — enter a unique name, for example, `Voice App`. * **Calling webhook** — enter the Endpoint URL you copied from the Voice Gateway Endpoint settings and make sure to select the **POST** in the **METHOD** field. * **Call status webhook** — enter the Endpoint URL you copied from the Voice Gateway Endpoint settings and make sure to select the **POST** in the **METHOD** field. * **Speech synthesis vendor** and **Speech recognizer vendor** — make sure you configure the same speech provider as configured in [Cognigy](/ai/agents/test/voice-preview#set-up-a-speech-provider). 3. Click **Save**, then **Phone Numbers** in the left-side menu. 4. Select the phone number you use in your contact center. 5. In the **Application** field, select **Voice App** and save the changes. Your voice AI Agent can now receive calls and hand them over to a human agent with access to the Agent Copilot workspace. To test Agent Copilot, follow these steps: 1. Open your contact center platform and call the number you configured in the Voice Gateway Application. The voice AI Agent answers the call and creates a session in the contact center platform. 2. Say something to the voice AI Agent, for example, `Thanks, I'll wait for the human agent.`. The AI Agent will transfer your call to the phone number you configured in the Transfer Flow. 3. Pick up the call from the phone number you configured in the Transfer Flow. At the start of a conversation, the `Initial message for AI Copilot` reply may appear in the human agent's chat as if it were sent by the end user. This reply is added automatically to trigger Agent Copilot and is visible only to the human agent. 4. The Agent Copilot workspace displays a widget with the conversation transcript and a widget with the next action. 5. Say the next action text into the phone. ## More Information * [Agent Copilot](/agent-copilot/overview) * [Agent Copilot for Chat](/agent-copilot/getting-started/chat) * [Agent Copilot Nodes](/ai/agents/develop/node-reference/agent-copilot/overview) * [Agent Copilot for Voice](/agent-copilot/getting-started/voice) # Getting Started with Agent Copilot for Voice-to-Chat Source: https://docs.cognigy.com/agent-copilot/getting-started/voice-to-chat Configure Agent Copilot for voice-to-chat applications with next action suggestion and conversation transcript widgets for human agents in contact centers. In this guide, you will learn how to configure your first embedded Agent Copilot workspace for voice-to-chat applications. In these applications, the end user calls a voice AI Agent and the AI Agent hands over to a human agent. The human agent keeps supporting the end user through a chat in the contact center platform, and the text is converted to voice by a text-to-speech provider. This configuration provides an Agent Copilot workspace that includes two widgets: * A [Copilot: Next Action Tile Node](/ai/agents/develop/node-reference/agent-copilot/next-action-tile) that suggests a next action to the human agent. * A [Copilot: Transcript Tile Node](/ai/agents/develop/node-reference/agent-copilot/transcript-tile) that displays the conversation transcript to the human agent. ## Prerequisites * Access to [Voice Gateway](/voice-gateway/index). * Configure a speech provider in [Cognigy](/ai/agents/test/voice-preview#set-up-a-speech-provider) and the [Voice Gateway Self-Service Portal](/voice-gateway/webapp/speech-services). * Configure the [phone number](/voice-gateway/webapp/phone-numbers) you use in your contact center in the Voice Gateway Self-Service Portal. * Configure a contact center platform that you can integrate with a [handover provider](/ai/escalate/handover-reference/overview). For example, for [Live Agent](/ai/escalate/handover-reference/live-agent), you need to have an [Inbox](/live-agent/settings/inboxes) with the [Project ID and the Webhook URL set up](/live-agent/settings/inboxes#edit-inboxes) and, if necessary, the **Enable Agent Copilot Workspace** option activated. * Add a [compatible LLM](/ai/agents/develop/gen-ai-and-llms/model-support-by-feature) for the LLM Prompt Node. ## Setup Process 1. Create a handover provider. The handover provider connects the AI Agent to your contact center platform. 2. Create a Handover Flow. The Handover Flow configures the interaction with the AI Agent and the handover to a human agent. 3. Create an Agent Copilot Flow. The Agent Copilot Flow configures the Agent Copilot workspace and the individual widgets. 4. Create a Voice Copilot Endpoint. The Voice Copilot Endpoint receives the transcript of the voice call and sends it to the Agent Copilot workspace. 5. Create a Voice Gateway Endpoint. The Voice Gateway Endpoint connects the AI Agent to Voice Gateway. 6. Create an [application](/voice-gateway/webapp/applications) in the Voice Gateway Self-Service Portal. The Voice Gateway application connects your contact center phone number to the Voice Gateway Endpoint. 7. Test the Agent Copilot workspace by calling the phone number you configured in the Voice Gateway application. ## Set Up Agent Copilot for Voice-to-Chat In **Deploy > Handover Providers**, create a [handover provider](/ai/escalate/handovers) according to your contact center platform. Depending on the platform, you may need different settings for the Handover Flow. 1. In **Build > Flows**, create a [Flow](/ai/agents/develop/projects-and-flows/overview) and give it a clear name, for example, `Handover`. 2. In the Flow editor, add a [Say Node](/ai/agents/develop/node-reference/basic/say) and set its **Text** parameter to `Hi, let's hand you over to the humans.`. 3. Add a [Handover to Human Agent Node](/ai/agents/develop/node-reference/service/handover-to-agent) and configure the following: * **Handover Provider** — set to the previously [created Handover Provider](#create-a-handover-provider), and [configure it accordingly](/ai/escalate/handover-reference/overview). For example, if you use [Live Agent](/ai/escalate/handover-reference/live-agent), you need to set the **Live Agent Inbox ID**. * **Handover Accepted Message** — enter `Transferring to humans...`. 1. In your Cognigy Project, go to **Build > Flows** and create a [Flow](/ai/agents/develop/projects-and-flows/overview) and give it a clear name, for example, `Agent Copilot`. 2. Add a [Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) and set the **Copilot Grid Configuration** as follows: ```json theme={null} { "grid": { "columns": 2, "rows": 2, "gap": 5 }, "tiles": { "next-action": { "x": 1, "y": 1, "rows": 1, "columns": 1 }, "transcript": { "x": 1, "y": 2, "rows": 1, "columns": 1 } } } ``` 3. After the Copilot: Set Grid Node, add an [LLM Prompt Node](/ai/agents/develop/node-reference/service/llm-prompt). Configure it to generate the next best response for the agent based on the user's latest input and to store the result in the Input object: * **System Prompt** — enter the following: ```txt theme={null} Based on the user's last message, suggest the most helpful next response for a human agent. ``` * In the **Storage & Streaming** section, configure the following: * **How to handle the result** — set to **Store in Input**. * **Input Key to store Result** — set to `input.promptResult`. 4. Add the following Agent Copilot Nodes after the LLM Prompt Node and configure them as follows: * **[Copilot: Next Action Tile Node](/ai/agents/develop/node-reference/agent-copilot/next-action-tile)**: * **Tile ID** — `next-action` * **Text**: ```txt theme={null} {{input.promptResult.detailedResult.choices[0].message.content}} ``` This expression dynamically retrieves the LLM-generated suggestion for the tile. * **[Copilot: Transcript Tile Node](/ai/agents/develop/node-reference/agent-copilot/transcript-tile)**: * **Tile ID** — `transcript` 1. In **Deploy > Endpoints**, click **+ New Endpoint** and select **Voice Copilot**. 2. In the **New Endpoint** section, configure the following: * **Name** — enter a unique name, for example, `Voice Agent Copilot Endpoint`. * **Flow** — select the Agent Copilot Flow you created from the list. 1. In **Deploy > Endpoints**, click **+ New Endpoint** and select **Voice Gateway**. 2. In the **New Endpoint** section, configure the following: * **Name** — enter a unique name. * **Flow** — select the Handover Flow from the list, in this example, `Handover`. 3. Copy the Endpoint URL for later use in the Voice Gateway application and save the changes. 1. In the [Voice Gateway Self-Service Portal](/voice-gateway/webapp/overview), click **Application** in the left-side menu, then **Add application**. 2. On the **Add an application** page, configure the following: * **Application name** — enter a unique name, for example, `Voice-to-Chat App`. * **Calling webhook** — enter the Endpoint URL you copied from the Voice Gateway Endpoint settings and make sure to select the **POST** in the **METHOD** field. * **Call status webhook** — enter the Endpoint URL you copied from the Voice Gateway Endpoint settings and make sure to select the **POST** in the **METHOD** field. * **Speech synthesis vendor** and **Speech recognizer vendor** — make sure you configure the same speech provider as configured in [Cognigy](/ai/agents/test/voice-preview#set-up-a-speech-provider). 3. Click **Save**, then **Phone Numbers** in the left-side menu. 4. Select the phone number you use in your contact center. 5. In the **Application** field, select **Voice-to-Chat App** and save the changes. Your voice AI Agent can now receive calls and hand them over to a human agent with access to the Agent Copilot workspace. To test Agent Copilot, follow these steps: 1. Open your contact center platform and call the number you configured in the Voice Gateway Application. The voice AI Agent answers the call and creates a chat session in the contact center platform. 2. Say something to the voice AI Agent, for example, `Thanks, I'll wait for the human agent.`. Your voice message is sent as text to the chat in the contact center platform. 3. Find and select the corresponding chat in the contact center platform. At the start of a conversation, the `Initial message for AI Copilot` reply may appear in the human agent's chat as if it were sent by the end user. This reply is added automatically to trigger Agent Copilot and is visible only to the human agent. 4. The Agent Copilot workspace displays a widget with the conversation transcript and a widget with the next action. 5. Click the icon to paste the next action text into the chat and send the message. The voice AI Agent responds with the text from the next action widget. ## More Information * [Agent Copilot](/agent-copilot/overview) * [Getting started with Agent Copilot](/agent-copilot/getting-started/chat) * [Agent Copilot Configuration](/agent-copilot/configure/overview) * [Agent Copilot Nodes](/ai/agents/develop/node-reference/agent-copilot/overview) * [Agent Copilot Embedding](/agent-copilot/deploy/embedding) * [Agent Copilot for Voice](/agent-copilot/getting-started/voice) * [Integration with Contact Centers](/agent-copilot/configure/overview) # Agent Copilot Glossary Source: https://docs.cognigy.com/agent-copilot/glossary Definitions for Agent Copilot terms including workspace, grid, tiles, widgets, and deployment methods. Agent Copilot terms listed in alphabetical order. All terms in the glossary are provided for informational purposes. ## A **Agent Copilot** A Cognigy product that offers a variety of features in a [workspace](#w) and empowers human agents to provide faster and more accurate customer support. You can customize the Agent Copilot workspace with [widgets](#w) that display the most relevant information for chat and voice use cases. When embedded into your contact center's desktop, Agent Copilot enhances the overall efficiency of your contact center. For more information, read the [Agent Copilot](/agent-copilot/overview) documentation. **Agent Copilot Flow** A Flow separate from the AI Agent Flow to which you add [Agent Copilot Nodes](#a). The Agent Copilot Flow controls the [workspace](#w) arrangement on the contact center side and the [widgets](#w) in the workspace. The Copilot: Set Grid Node is required in this Flow to set the workspace layout. Other Agent Copilot Nodes provide functionality to the widgets in the workspace. For more information, read the [Agent Copilot Configuration](/agent-copilot/configure/overview) documentation. **Agent Copilot Nodes** Nodes that allow you to configure and control the [Agent Copilot](#a) [workspace](#w) from a Flow. Agent Copilot Nodes include configuration Nodes, [plug-and-play widgets](#p), and customization Nodes that provide advanced capabilities to the [widgets](#w) in the workspace. For more information, read the [Agent Copilot Nodes](/agent-copilot/configure/nodes) documentation. ## E **Embedded Deployment** A deployment method where [Agent Copilot](#a) is integrated directly into the contact center's agent desktop interface, providing human agents with real-time assistance within their existing workflow. For more information, read the [Agent Copilot Embedding](/agent-copilot/deploy/embedding) documentation. ## G **Grid** A JSON object that defines the layout structure of the [Agent Copilot](#a) [workspace](#w). The grid specifies the number of columns and rows, the gap between [tiles](#t), and the position and size of each tile through [tile IDs](#t). You configure the grid using the Copilot: Set Grid Node or via the Cognigy API. For more information, read the [Configure the Workspace](/agent-copilot/configure/workspace) documentation. ## P **Plug-and-Play Widgets** Pre-built [Agent Copilot Nodes](#a) that require minimal configuration to integrate into the [Agent Copilot](#a) [workspace](#w). Examples include the Identity Tile, Next Action Tile, Sentiment Tile, and Transcript Tile. These [widgets](#w) provide ready-to-use functionality for common use cases. For more information, read the [Agent Copilot Nodes](/agent-copilot/configure/nodes) documentation. ## S **Standalone Deployment** A deployment method where [Agent Copilot](#a) operates as an independent application rather than being embedded into a contact center platform. For more information, read the [Standalone Agent Copilot](/agent-copilot/deploy/standalone) documentation. ## T **Tile** A configuration object in the [Agent Copilot](#a) [grid](#g) that represents a visual component in the Agent Copilot [workspace](#w). Each tile corresponds to an [Agent Copilot Node](#a) in the [Agent Copilot Flow](#a) and must have a unique [tile ID](#t). Tiles can display content such as HTML, adaptive cards, iframes, or specialized [widgets](#w) like sentiment analysis or knowledge retrieval. For more information, read the [Configure the Workspace](/agent-copilot/configure/workspace) documentation. **Tile ID** A unique identifier assigned to each [tile](#t) in the [Agent Copilot](#a) [workspace](#w). The tile ID is used in the [grid](#g) configuration to define the tile's position and size, and it must match the tile ID specified in the corresponding [Agent Copilot Node](#a). For example, `transcript`, `knowledge`, or `next-action`. For more information, read the [Tile ID](/agent-copilot/configure/workspace#tile-id) documentation. ## W **Widget** A visual component in the [Agent Copilot](#a) [workspace](#w) that displays information or provides interactive functionality to human agents. Widgets are created using [Agent Copilot Nodes](#a) and are arranged within [tiles](#t) in the [grid](#g). Examples include sentiment analysis widgets, knowledge retrieval widgets, and next action suggestion widgets. Also referred to as a tile. For more information, read the [Agent Copilot](/agent-copilot/overview) documentation. **Workspace** The customizable interface that displays [Agent Copilot](#a) on the contact center side. The workspace contains [widgets](#w) arranged in a [grid](#g) layout that show the most relevant information for chat and voice use cases. You can configure the workspace layout, widget size, and arrangement to optimize the human agent's workflow. For more information, read the [Configure the Workspace](/agent-copilot/configure/workspace) documentation. # Cognigy Agent Copilot Source: https://docs.cognigy.com/agent-copilot/index
*Cognigy Agent Copilot* offers a variety of advanced features that empower agents to provide faster and more accurate customer support.

The workspace is fully customizable with widgets that display the most relevant information for any chat and voice use case.

When embedded into your contact center's agent desktop, it enhances the overall efficiency of your contact center.

Discover Agent Copilot's capabilities. Build your Agent Copilot using Agent Copilot Nodes and ready-to-use widgets. Define the use case your Agent Copilot will handle. Set up the connection to your contact center. Diagnose and resolve common Agent Copilot issues. # Browser Requirements Source: https://docs.cognigy.com/agent-copilot/installation/browser-requirements Supported browsers and minimum version requirements for Agent Copilot. The Agent Copilot web frontend is compatible with most modern web browsers. The table below provides a list of supported web browsers. | Browser | Version | | --------------- | ------------- | | Mozilla Firefox | 110 or higher | | Google Chrome | 110 or higher | | Chromium | 87 or higher | | Apple Safari | 14 or higher | | Microsoft Edge | 110 or higher | # Agent Copilot Source: https://docs.cognigy.com/agent-copilot/overview Learn about Agent Copilot features, including customizable workspaces, rich media capabilities, and integration with contact center platforms for human agent support. *Cognigy Agent Copilot* offers a variety of features in a workspace and empowers human agents to provide faster and more accurate customer support. You can customize the Agent Copilot workspace with widgets that display the most relevant information for chat and voice use cases. When embedded into your contact center's desktop, Agent Copilot enhances the overall efficiency of your contact center. ## Key features * Displays interactive micro applications in a customizable workspace with rich-media capabilities. * Standalone or embedded deployment into contact center platforms. * Shows any type of information, such as PDFs, automatic search results, or even interactive 3D animations. * Access to 100% of Cognigy features, including Extensions. ## More Information * [Getting started with Agent Copilot](/agent-copilot/getting-started/overview) * [Agent Copilot Configuration](/agent-copilot/configure/overview) * [Agent Copilot Nodes](/ai/agents/develop/node-reference/agent-copilot/overview) * [Agent Copilot Embedding](/agent-copilot/deploy/embedding) * [Agent Copilot for Voice](/agent-copilot/getting-started/voice) * [Agent Copilot for Chat](/agent-copilot/getting-started/chat) * [Integration with Contact Centers](/agent-copilot/configure/overview) * [Agent Copilot in Live Agent](/live-agent/assistants/agent-copilot) # Troubleshooting Source: https://docs.cognigy.com/agent-copilot/troubleshooting Fix common Agent Copilot issues including missing tiles, connection errors, and sentiment tile failures. This page lists common issues you may encounter while using Agent Copilot and provides troubleshooting steps to resolve them. You may see a message like `The following tiles are not registered in the workspace layout and will not be rendered: , .` This occurs because some of the Nodes in your Flow aren't correctly configured in the [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid). To fix this issue, ensure all Copilot Nodes are added to the Set Grid Node with the exact same Tile ID; check for typos. If the tiles are not needed, delete the unused tiles from the grid and related Nodes from your Flow. This usually indicates the workspace is pointing to the wrong host. Use the correct base URL (`AICopilotBaseUrl`) for your installation. Two key issues can prevent the Sentiment tile from displaying: * No model selected for Sentiment Analysis. In **Manage > Settings > Generative AI Settings**, make sure a model, such as `gpt-4o` is selected. Without this model, Agent Copilot can't render the tile and may return a 500 error. * Flow contains incompatible Nodes. Standard output Nodes, such as Say and Question Nodes, can't be placed below the [Copilot: Set Grid Node](/ai/agents/develop/node-reference/agent-copilot/set-grid) in the Agent Copilot Flow. Remove or disable incompatible Nodes to render the tile correctly. # Use Cases Source: https://docs.cognigy.com/agent-copilot/use-cases Explore Agent Copilot use cases for sentiment analysis, knowledge retrieval, call summaries, and real-time translation. Agent Copilot helps human agents support customers more effectively by streamlining workflows and simplifying daily tasks. The following use cases show how these features can be used in practice. ## Access Relevant Customer Data with Contextual Handover When a live chat with a human agent begins, Agent Copilot retrieves relevant CRM data, previous queries, and interaction summaries. All context is displayed directly in the Agent Copilot workspace. Human agents get a complete view of the customer's situation without switching tabs or navigating multiple systems, which leads to faster and more efficient issue resolution.