--- title: "8x8 Contact Center External IVR API" slug: "8x8-contact-center-external-ivr-api" updated: 2026-05-17T17:37:42Z published: 2026-05-21T21:25:23Z canonical: "help.8x8.com/8x8-contact-center-external-ivr-api" --- > ## Documentation Index > Fetch the complete documentation index at: https://help.8x8.com/llms.txt > Use this file to discover all available pages before exploring further. # 8x8 Contact Center External IVR API ## Overview The 8x8 External IVR API is a HTTP API that provides tenants the ability to integrate with an external IVR system. The feature is embedded in the current 8x8 virtual contact center IVR server. Once a customer call enters the 8x8 IVR server, a tenant administrator has the capability to configure the IVR script to relay a call to an external IVR server. This document describes the supported parameters for using the External IVR API. Examples are provided for references. All API requests are authenticated using a token that is issued to a valid 8x8 tenant. For security reasons, the External IVR API only accepts request using HTTPS, so that request headers and response data are encrypted. ## Authentication In order to make an API request, you must first obtain an authentication token that has been issued for your tenant. This token combines username and password into a single long string. To get your token, log into the Configuration Manager, select **Integration**, and click the **API Token** tab. The **Action Request Token** needs to be used in all API requests. Next, click **New Token**. This generates a new private token for your tenant. You will use this token in all requests to this API. You may generate a new token at any time; however, once a new token is generated, the old token becomes invalid. ![](https://cdn.us.document360.io/e3a59e39-abd3-4423-964c-0a4008dc5673/Images/Documentation/10572?sv=2026-02-06&spr=https&st=2026-11-03T22%3A20%3A07Z&se=2026-11-03T23%3A20%3A07Z&sr=c&sp=r&sig=olbEuART1p0hNvKAGuX00TIjdayzATfTUMiaF4rg80A%3D) ## Configuration Follow the steps below to set up an incoming call channel to route a call to external IVR. 1. Add new **Forward to External IVR** node to an existing IVR script.![](https://cdn.us.document360.io/e3a59e39-abd3-4423-964c-0a4008dc5673/Images/Documentation/10574?sv=2026-02-06&spr=https&st=2026-11-03T22%3A20%3A07Z&se=2026-11-03T23%3A20%3A07Z&sr=c&sp=r&sig=olbEuART1p0hNvKAGuX00TIjdayzATfTUMiaF4rg80A%3D) 2. Assign label name and access phone number of the external IVR server.![](https://cdn.us.document360.io/e3a59e39-abd3-4423-964c-0a4008dc5673/Images/Documentation/10573?sv=2026-02-06&spr=https&st=2026-11-03T22%3A20%3A07Z&se=2026-11-03T23%3A20%3A07Z&sr=c&sp=r&sig=olbEuART1p0hNvKAGuX00TIjdayzATfTUMiaF4rg80A%3D) 3. Add resume action when external IVR server terminate the call without sending API request via this API interface or fail to connect the external IVR server. If an external IVR request was successfully submitted before the call the terminated, the resume action will have no effect and the call will be routed base on the API request.![](https://cdn.us.document360.io/e3a59e39-abd3-4423-964c-0a4008dc5673/Images/Documentation/10570?sv=2026-02-06&spr=https&st=2026-11-03T22%3A20%3A07Z&se=2026-11-03T23%3A20%3A07Z&sr=c&sp=r&sig=olbEuART1p0hNvKAGuX00TIjdayzATfTUMiaF4rg80A%3D) ## Query Parameters #### GET/POST Parameters The following parameters are allowed parameters that can be passed along with the External IVR URL using GET or POST method. There is a limit of 500 characters. | **Parameter Name** | **Description** | **Accepted value** | **Mandatory** | | --- | --- | --- | --- | | **tenant** | Tenant name | System provided tenant id | Yes | | **token** | Authentication token | | Yes | | **sip_id** | Unique sip call id | The unique sip call id of the call, which is defined in Call-ID header of a SIP message | Yes | | **action** | Type of call routing action to be executed | wForwardACDwForwardAgent (not yet available) | Yes | | **param** | Action parameter. The parameter will be defined base on action type. | wForwardACD – a valid queue idwForwardAgent – a valid agent id | Yes | | **extIvrData** | This attribute can be used to pass name value pairs that will be used for populating the transaction panel when an agent is offered the interaction. Each name value pair is enclosed by [ ] and the name/value are separated by “\|”. | There is a limit of 500 characters. | No | #### Tenant Name Tenant name can be found in Configuration Manager under **Home** > **Profile** panel. #### Queue Id # **8x8 Contact Center APIs** The per-tenant unique queue id can be obtained under the **Queues** panel in Configuration Manager ![](https://cdn.us.document360.io/e3a59e39-abd3-4423-964c-0a4008dc5673/Images/Documentation/10569?sv=2026-02-06&spr=https&st=2026-11-03T22%3A20%3A07Z&se=2026-11-03T23%3A20%3A07Z&sr=c&sp=r&sig=olbEuART1p0hNvKAGuX00TIjdayzATfTUMiaF4rg80A%3D) #### External Data External call data to be passed back to 8x8 Virtual Contact Center platform, which will then be available for agent to view in AGUI call transaction panel. The data should be in name value pair separated by | character. And each name value pair should be enclosed with open and close square brackets, such as [name|value] Example: ```plaintext extIvrData=[First Name|John][Last Name|Smith] ``` ![](https://cdn.us.document360.io/e3a59e39-abd3-4423-964c-0a4008dc5673/Images/Documentation/10571?sv=2026-02-06&spr=https&st=2026-11-03T22%3A20%3A07Z&se=2026-11-03T23%3A20%3A07Z&sr=c&sp=r&sig=olbEuART1p0hNvKAGuX00TIjdayzATfTUMiaF4rg80A%3D) **Sample API Request URL** The web callback API makes it easy to submit a query, for experimentation, testing or debugging purposes. From a web browser, simply enter the URL. For example, ```plaintext https://vcc-na4.8x8.com/SC/externalIvrAction.php?tenant=klvm2&token=92bd5cbf9ab120b3a47bdef9284b323d&sip_id=MDc5ZGI5ZDgyYjY2NGRiNjNjMjQ3ZjkyMGQyMzljMzY&action=wForwardACD¶m=102 ``` The request above will try to route to call to queue with id 102 after the call is terminated from the external IVR system. Revise your query URL based on the login URL of your Tenant. Refer to the [8x8 Contact Center Platform URL Guide](/support/docs/8x8-contact-center-platform-url-guide) to retrieve your login URL. ## Examples **VoiceXML Example:** The following script will redirect a call to queue with id 114 once the IVR server hangs up the call. ```plaintext            Welcome to the 8 by 8 External IVR Demo.      To redirect your call to an ACD queue, press 1.                        Invalid choice. Please try again.                                        Please wait while we redirect your call.                thank you for waiting. your call is being redirected to queue $param;.           ```