Cisco Voice Portal Call Management API
Manage and control active calls
Manage and control active calls
openapi: 3.1.0
info:
title: Cisco Voice Portal Administration Application Configuration Call Management API
description: The Cisco Unified Customer Voice Portal (CVP) Operations, Administration, Maintenance, and Provisioning (OAMP) API provides RESTful web services for managing CVP deployment configuration. This API enables programmatic access to device management, application deployment, system settings, and provisioning operations through the CVP OAMP Server. The OAMP Server is the central management component of the CVP solution, typically accessed via the Unified CVP Operations Console (OAMP web interface) on port 9443.
version: 12.6.0
contact:
name: Cisco Developer Support
url: https://developer.cisco.com/
license:
name: Cisco DevNet
url: https://developer.cisco.com/site/license/
x-provider: cisco
x-product: unified-customer-voice-portal
servers:
- url: https://{oamp-server}:9443/oamp/rest
description: CVP OAMP Server REST API
variables:
oamp-server:
default: cvp-oamp.example.com
description: Hostname or IP of the CVP OAMP Server
security:
- basicAuth: []
- sessionCookie: []
tags:
- name: Call Management
description: Manage and control active calls
paths:
/call:
get:
operationId: listActiveCalls
summary: Cisco Voice Portal List Active Calls
description: Retrieves a list of all currently active calls on this Call Server. Each entry includes the call GUID, current state, and associated SIP session information.
tags:
- Call Management
parameters:
- name: state
in: query
description: Filter by call state
schema:
type: string
enum:
- ringing
- connected
- queued
- self_service
- transferring
- name: calledNumber
in: query
description: Filter by DNIS
schema:
type: string
- name: limit
in: query
schema:
type: integer
default: 100
maximum: 1000
responses:
'200':
description: List of active calls
content:
application/json:
schema:
type: object
properties:
totalActiveCalls:
type: integer
calls:
type: array
items:
$ref: '#/components/schemas/ActiveCall'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/call/{callGuid}:
get:
operationId: getCallDetails
summary: Cisco Voice Portal Get Active Call Details
description: Retrieves detailed information about a specific active call, including SIP session details, current state, call variables, and routing information.
tags:
- Call Management
parameters:
- $ref: '#/components/parameters/CallGuid'
responses:
'200':
description: Call details
content:
application/json:
schema:
$ref: '#/components/schemas/ActiveCallDetail'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
description: Call not found or no longer active
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/call/{callGuid}/transfer:
post:
operationId: transferCall
summary: Cisco Voice Portal Transfer an Active Call
description: Initiates a transfer of an active call to a specified destination. The transfer can be a blind transfer or a consultation transfer. This operation sends the appropriate SIP REFER or re-INVITE to execute the transfer.
tags:
- Call Management
parameters:
- $ref: '#/components/parameters/CallGuid'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TransferRequest'
responses:
'202':
description: Transfer initiated
content:
application/json:
schema:
$ref: '#/components/schemas/CallOperationResult'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
description: Call not found or no longer active
'409':
description: Call is in a state that does not allow transfer
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/call/{callGuid}/terminate:
post:
operationId: terminateCall
summary: Cisco Voice Portal Terminate an Active Call
description: Terminates an active call by sending a SIP BYE request. The call is disconnected and a CDR is generated.
tags:
- Call Management
parameters:
- $ref: '#/components/parameters/CallGuid'
requestBody:
content:
application/json:
schema:
type: object
properties:
reason:
type: string
description: Reason for termination
enum:
- administrative
- timeout
- error
- requested
responses:
'200':
description: Call terminated
content:
application/json:
schema:
$ref: '#/components/schemas/CallOperationResult'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
description: Call not found or already terminated
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/call/{callGuid}/variables:
get:
operationId: getCallVariables
summary: Cisco Voice Portal Get Call Variables
description: Retrieves the Expanded Call Context (ECC) variables and peripheral variables associated with an active call. These variables carry data between CVP, ICM, and the VXML application.
tags:
- Call Management
parameters:
- $ref: '#/components/parameters/CallGuid'
responses:
'200':
description: Call variables
content:
application/json:
schema:
$ref: '#/components/schemas/CallVariables'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
description: Call not found
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
put:
operationId: setCallVariables
summary: Cisco Voice Portal Set Call Variables
description: Sets or updates ECC variables on an active call. These variables are passed to the VXML application and to ICM for routing decisions.
tags:
- Call Management
parameters:
- $ref: '#/components/parameters/CallGuid'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CallVariablesUpdate'
responses:
'200':
description: Variables updated
content:
application/json:
schema:
$ref: '#/components/schemas/CallVariables'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
description: Call not found
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
parameters:
CallGuid:
name: callGuid
in: path
required: true
description: Globally unique call identifier
schema:
type: string
schemas:
TransferRequest:
type: object
required:
- destination
properties:
destination:
type: string
description: Transfer destination (phone number, SIP URI, or agent extension)
example: example_value
transferType:
type: string
enum:
- blind
- consultation
default: blind
description: Type of transfer
example: blind
label:
type: string
description: ICM label for the transfer destination. Used when routing through ICM/UCCE.
example: Example Title
eccVariables:
type: object
additionalProperties:
type: string
description: ECC variables to pass with the transfer
example: example_value
CallVariablesUpdate:
type: object
properties:
eccVariables:
type: object
additionalProperties:
type: string
example: example_value
peripheralVariables:
type: object
additionalProperties:
type: string
example: example_value
callVariables:
type: object
additionalProperties:
type: string
example: example_value
CallVariables:
type: object
properties:
callGuid:
type: string
example: '500123'
eccVariables:
type: object
additionalProperties:
type: string
description: Expanded Call Context variables
example: example_value
peripheralVariables:
type: object
properties:
peripheral1:
type: string
peripheral2:
type: string
peripheral3:
type: string
peripheral4:
type: string
peripheral5:
type: string
peripheral6:
type: string
peripheral7:
type: string
peripheral8:
type: string
peripheral9:
type: string
peripheral10:
type: string
description: ICM peripheral variables (1-10)
example: example_value
callVariables:
type: object
properties:
callVariable1:
type: string
callVariable2:
type: string
callVariable3:
type: string
callVariable4:
type: string
callVariable5:
type: string
callVariable6:
type: string
callVariable7:
type: string
callVariable8:
type: string
callVariable9:
type: string
callVariable10:
type: string
description: ICM call variables (1-10)
example: example_value
ActiveCallDetail:
type: object
properties:
callGuid:
type: string
example: '500123'
state:
type: string
enum:
- ringing
- connected
- queued
- self_service
- transferring
- on_hold
example: ringing
callingNumber:
type: string
example: example_value
calledNumber:
type: string
example: example_value
startTime:
type: string
format: date-time
example: '2026-01-15T10:30:00Z'
duration:
type: integer
example: 10
applicationName:
type: string
example: example_value
sipCallId:
type: string
description: SIP Call-ID
example: '500123'
sipFromTag:
type: string
example: example_value
sipToTag:
type: string
example: example_value
icmRouteResult:
type: object
properties:
routeLabel:
type: string
skillGroup:
type: string
agentId:
type: string
example: example_value
vxmlServer:
type: string
description: VXML Server currently handling the call
example: example_value
callHistory:
type: array
items:
type: object
properties:
timestamp:
type: string
format: date-time
event:
type: string
details:
type: string
description: Chronological list of call events
example: []
eccVariables:
type: object
additionalProperties:
type: string
example: example_value
ActiveCall:
type: object
properties:
callGuid:
type: string
description: Globally unique call identifier
example: '500123'
state:
type: string
enum:
- ringing
- connected
- queued
- self_service
- transferring
- on_hold
example: ringing
callingNumber:
type: string
description: Caller ANI
example: example_value
calledNumber:
type: string
description: Called DNIS
example: example_value
startTime:
type: string
format: date-time
example: '2026-01-15T10:30:00Z'
duration:
type: integer
description: Current call duration in seconds
example: 10
applicationName:
type: string
description: Current VXML application handling the call
example: example_value
CallOperationResult:
type: object
properties:
callGuid:
type: string
example: '500123'
operation:
type: string
example: example_value
status:
type: string
enum:
- success
- pending
- failed
example: success
message:
type: string
example: example_value
timestamp:
type: string
format: date-time
example: '2026-01-15T10:30:00Z'
Error:
type: object
properties:
code:
type: string
example: example_value
message:
type: string
example: example_value
details:
type: string
example: example_value
timestamp:
type: string
format: date-time
example: '2026-01-15T10:30:00Z'
responses:
Unauthorized:
description: Authentication required or credentials invalid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
BadRequest:
description: Invalid request parameters
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
InternalError:
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
basicAuth:
type: http
scheme: basic
description: HTTP Basic authentication using CVP OAMP administrative credentials. The default administrator account is configured during CVP installation.
sessionCookie:
type: apiKey
in: cookie
name: JSESSIONID
description: Session-based authentication obtained after login. The JSESSIONID cookie is returned after successful basic authentication.