Back to Integrations List Integrate Kore with NICE CXOne using studio scripting to dispatch SIP headers, transfer calls from the bot, and transition to NICE CXOne after the app flow concludes. This approach doesn’t require a VAH (Virtual Agent Hub) license or proxy.Documentation Index
Fetch the complete documentation index at: https://koreai.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Architecture

Reference Documentation
| Document | Link |
|---|---|
| SIP Headers | SIP headers |
| Voicebot Conversation | Voicebot Conversation |
| Signal API | Admin API |
Shared Responsibilities
| Activity | CXOne Customer | Kore |
|---|---|---|
| NICE SIP Trunk Configuration | NA | NA |
| DID Number Procurement | DID numbers from NICE | — |
| ACD Configuration | Skills creation and mapping, Hours of Operation, Points of Contact, Campaign, Script customization (2) | Minimal functionality voice call scripts (2): Main Script (accept call on DID), Spawn Script (SIP trunk the call to Kore) |
| CXOne Studio Script | Customize Main and Spawn Scripts: add SIP headers, add DID | Share sample scripts: SIP Main Script, SIP Spawn Script |
| Setup Authentication | Configure CXOne Authentication for Signal API access | — |
| Setup Kore IVR | Create an AI for Service account | — |
| SIP Trunk Configuration | Network IPs, DID number, Transport Type: TLS, Inbound forward-to-phone-number | SIP URI (pre-filled) |
| SIP Trunk Attach Flow | Create a flow, attach SIP config to Experience Flow | — |
| AI for Service App Flow | Create an AI Agent flow; read SIP headers from CXOne Studio script | — |
| Signal API to return call | Get CXOne auth in Kore Bot; trigger Signal API (domain must match NICE account domain) | — |
CXOne Channel Specifications
ACD configuration requires:- 1 skill (created and mapped)
- 1 Hours of Operation
- 1 Point of Contact (Phone)
- 1 Campaign
- 2 minimal functionality voice call scripts
Kore Bot Platform Requirements
Telephony Gateway
- DID or TFN phone number to receive calls.
- All SIP header information.
- Signal API configuration to return control to NICE CXOne.
SIP Trunk Configuration
CXOne Studio Configuration
- Download the SIP Main Script and SIP Spawn Script and save locally.
- Import the Studio Script:
- Log in to NICE CXOne Studio.
-
Go to File > Import from File.

-
Open the saved studio script.



-
In the SIP Main Script, select the SIP Spawn Script in the Spawn action.

-
Add SIP headers in the Sipputheader actions:
- headerName: Key starting with
X-* - headerValue: The header value

- headerName: Key starting with
-
Add the SIP phone number in the Placecall action. Enter the SIP DID number configured in the AI for Service SIP Trunk.


AI for Service Configuration
Configure a flow with an app on AI for Service. In the Script Task window, add the following code before the Run Automation action to pass SIP headers to the AI Agent:

NICE CXOne Authentication
Required parameters:- Authentication API URL from NICE CXOne
- Access Key ID
- Access Key Secret
- Log in to the NICE Cluster.
-
Click your profile (top right) and select My Profile.

-
Go to the ACCESS KEYS tab and click Add access key.

- Copy the Access Key ID and Access Key Secret.
-
Send a POST request to the authentication URL (adjust the base URL for your region, for example
na1.nice-incontact.com):Request body: -
The response returns an
access_tokenused to authenticate the Signal API.
Bot Configuration
Configure a dialog task to transition to NICE CXOne when the customer requests an agent transfer.Fetch the NICE Authentication Access Token
-
Add a bot action with a Service Node to get the
access_token.
-
Set Service Type to Custom Service and Sub Type to REST.

-
Click Edit Request, select POST, and enter the authentication URL.

-
On the Headers tab, add
Content-Type: application/json.
-
On the Body tab, add the request body.

-
Click Test, then Save as Sample Response.

Fetch SIP Headers in the AI Agent
Use a Script Node in a bot action to extract headers:

ContactId in BotUserSession to use when triggering the Signal API.
If the AI Agent triggers the Signal API to transfer to a live agent or end the conversation, the call must end from Kore, or the user must be disconnected from the Kore AI Agent and CCAI flow.
Trigger the Signal API
-
Add a bot action with a Service Node to trigger the Signal API.

-
Set Service Type to Custom Service and Sub Type to REST.

-
Click Edit Request, select POST, and enter the Signal API URL (replace
{cluster}with your NICE cluster, for exampleapi-b32):ContactIdis extracted from SIP headers and stored inBotUserSession. Thep1=AgentHandoffparameter triggers the agent transfer.
-
On the Headers tab, add:
- Key:
Authorization - Value:
Bearer {{context.RestAPICall.response.body.access_token}}

- Key:
- Click Save.