Cisco Voice Portal Device Management API
Manage CVP devices (Call Servers, VXML Servers, Reporting Servers)
Manage CVP devices (Call Servers, VXML Servers, Reporting Servers)
openapi: 3.1.0
info:
title: Cisco Voice Portal Administration Application Configuration Device 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: Device Management
description: Manage CVP devices (Call Servers, VXML Servers, Reporting Servers)
paths:
/device:
get:
operationId: listDevices
summary: Cisco Voice Portal List All Managed Devices
description: Retrieves a list of all devices registered with the CVP OAMP Server, including Call Servers, VXML Servers, Reporting Servers, and Media Servers. Each device entry contains its type, hostname, IP address, and current operational status.
tags:
- Device Management
responses:
'200':
description: List of managed devices
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Device'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
operationId: addDevice
summary: Cisco Voice Portal Add a New Device
description: Registers a new device (Call Server, VXML Server, Reporting Server, or Media Server) with the CVP OAMP Server for centralized management.
tags:
- Device Management
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceCreateRequest'
responses:
'201':
description: Device created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Device'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'409':
description: Device with this hostname or IP already exists
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/device/{deviceId}:
get:
operationId: getDevice
summary: Cisco Voice Portal Get Device Details
description: Retrieves detailed information about a specific managed device, including its configuration, status, and associated services.
tags:
- Device Management
parameters:
- $ref: '#/components/parameters/DeviceId'
responses:
'200':
description: Device details
content:
application/json:
schema:
$ref: '#/components/schemas/Device'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
put:
operationId: updateDevice
summary: Cisco Voice Portal Update Device Configuration
description: Updates the configuration of an existing managed device. Changes may require a device restart to take effect.
tags:
- Device Management
parameters:
- $ref: '#/components/parameters/DeviceId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceUpdateRequest'
responses:
'200':
description: Device updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Device'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
delete:
operationId: deleteDevice
summary: Cisco Voice Portal Remove a Managed Device
description: Removes a device from the CVP OAMP management. The device itself is not uninstalled but is no longer managed centrally.
tags:
- Device Management
parameters:
- $ref: '#/components/parameters/DeviceId'
responses:
'204':
description: Device removed successfully
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/device/{deviceId}/status:
get:
operationId: getDeviceStatus
summary: Cisco Voice Portal Get Device Operational Status
description: Retrieves the current operational status of a managed device, including service status, resource utilization, and connectivity state.
tags:
- Device Management
parameters:
- $ref: '#/components/parameters/DeviceId'
responses:
'200':
description: Device status information
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceStatus'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/device/{deviceId}/restart:
post:
operationId: restartDevice
summary: Cisco Voice Portal Restart a Device Service
description: Initiates a restart of the CVP service on the specified device. This operation is asynchronous and the device status can be monitored via the status endpoint.
tags:
- Device Management
parameters:
- $ref: '#/components/parameters/DeviceId'
responses:
'202':
description: Restart initiated
content:
application/json:
schema:
$ref: '#/components/schemas/OperationStatus'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
DeviceStatus:
type: object
properties:
deviceId:
type: string
example: '500123'
status:
type: string
enum:
- online
- offline
- maintenance
- error
example: online
services:
type: array
items:
type: object
properties:
name:
type: string
status:
type: string
enum:
- running
- stopped
- error
uptime:
type: string
description: Service uptime duration
example: []
cpuUsage:
type: number
format: float
description: CPU usage percentage
example: 42.5
memoryUsage:
type: number
format: float
description: Memory usage percentage
example: 42.5
activeCalls:
type: integer
description: Number of active calls on this device
example: 10
timestamp:
type: string
format: date-time
example: '2026-01-15T10:30:00Z'
DeviceCreateRequest:
type: object
required:
- hostname
- ipAddress
- deviceType
properties:
hostname:
type: string
example: example_value
ipAddress:
type: string
format: ipv4
example: example_value
deviceType:
type: string
enum:
- CallServer
- VXMLServer
- ReportingServer
- MediaServer
example: CallServer
description:
type: string
example: A sample description.
credentials:
type: object
properties:
username:
type: string
password:
type: string
format: password
example: example_value
DeviceUpdateRequest:
type: object
properties:
hostname:
type: string
example: example_value
ipAddress:
type: string
format: ipv4
example: example_value
description:
type: string
example: A sample description.
Device:
type: object
properties:
deviceId:
type: string
description: Unique identifier for the device
example: '500123'
hostname:
type: string
description: Hostname of the device
example: example_value
ipAddress:
type: string
format: ipv4
description: IP address of the device
example: example_value
deviceType:
type: string
enum:
- CallServer
- VXMLServer
- ReportingServer
- MediaServer
- OAMPServer
description: Type of CVP component
example: CallServer
description:
type: string
description: Device description
example: A sample description.
status:
type: string
enum:
- online
- offline
- maintenance
- error
description: Current operational status
example: online
version:
type: string
description: Software version installed on the device
example: example_value
lastContact:
type: string
format: date-time
description: Last time the OAMP server contacted this device
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'
OperationStatus:
type: object
properties:
operationId:
type: string
example: '500123'
status:
type: string
enum:
- pending
- in_progress
- completed
- failed
example: pending
message:
type: string
example: example_value
startedAt:
type: string
format: date-time
example: '2026-01-15T10:30:00Z'
completedAt:
type: string
format: date-time
example: '2026-01-15T10:30:00Z'
progress:
type: number
format: float
description: Progress percentage (0-100)
example: 42.5
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'
NotFound:
description: Requested resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
InternalError:
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
DeviceId:
name: deviceId
in: path
required: true
description: Unique device identifier
schema:
type: string
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.