Cisco Prime Infrastructure API
Prime Infrastructure API Documentation

REST API Resources

API Health Service

Provides services to monitor and diagnose API performance and usage.

Resource Description API Version
GET API Health Record

GET data/ApiHealthRecords

Represents API performance and diagnostic information.
GET API Response Time Summary

GET data/ApiResponseTimeSummary

Represents summarized information about response times for each service.
GET API Calls Per Client

GET op/apiHealth/callsPerClient

Returns the IP addresses of all clients using either all services or the specified service, over the last 24 hours.
GET API Request Count Trend

GET op/apiHealth/requestCountTrend

Reports the number of requests, grouped by day and HTTP status, for all services or a given service if specified, over the last seven days.
GET API Response Time Trend

GET op/apiHealth/responseTimeTrend

For each request over the last 24 hours, shows the response time and the time the request was received, either for all services or for the specified service.
GET API Service Name List

GET op/apiHealth/serviceNameList

Returns the list of services for which there are ApiHealthRecords.

Access Point Operations

Operations to delete and modify access points.

Resource Description API Version
PUT Delete Access Points By Names

PUT op/apService/deleteAp

An operation to delete unified AP and third party AP by names.
PUT Modify Unified Access Point

PUT op/apService/accessPoint

Modifies an Unified Access Point. For API versions 1 and 2, all parameters should be specified. For API version 3, only the parameters desired to be changed and the ID need to be specified.

CLI Template Configuration

The CLI Template Configuration service allows a CLI configuration template to be applied to one or more target devices. It also provides a way to upload, delete, and get the CLI templates in the system.

Resource Description API Version
GET CLI Configuration Templates

GET data/CliTemplate

CLI configuration templates.
PUT Deploy Configuration Template Through Job

PUT op/cliTemplateConfiguration/deployTemplateThroughJob

Deploy a template to a list of devices through Job. A job name will be returned.
  • Use the parameter startTime to define when the CLI template will be deployed. If the start time is not defined the deployment will start immediately. The start time should be provided in the ISO 8601 format. For example: v1/op/cliTemplateConfiguration/deployTemplateThroughJob?startTime="2016-11-9T07:00Z"
  • Use the job name to query the job result using Job Operations services. To query job status, use the query api/v1/data/JobSummary?jobName=CliTemplateDeploy123. To query the full run result if the deployment fails, use the query api/v1/op/jobService/runhistory?jobName=CliTemplateDeploy123
  • Does not support ports selection for the 'Ports' type templates.

Device Operations

Operations to create, update, and delete devices.

Resource Description API Version
GET Export Devices

GET op/devices/exportDevices

An operation to export a list of devices. It accepts three parameters: ipAddress, groupId or groupPath. If no parameters are specified, no devices will be exported.

Filtering operators can be applied to the parameters. Use the GET data/GroupSpecification resource to obtain groupId or groupPath information.

Examples

  • ipAddress=192.168.1.1 — export one device by IP
  • ipAddress=in("192.168.1.1","192.168.1.2") — export multiple devices by IPs
  • ipAddress=startsWith("192.168.1") — export devices by ip range. Other filtering could be endsWith, contains
  • groupPath=startsWith("Device Type/Wireless Controller") — export devices by the group Device Type/Wireless Controller and its child groups
  • groupPath="Device Type/Wireless Controller/Cisco 5500 Series Wireless LAN Controllers"&ipAddress=startsWith("171")— export devices by a group and IP range in that group
  • groupId=in(81160,81161) — export devices by groupIds
PUT Bulk Import

PUT op/devices/bulkImport

An operation to add or update multiple devices using a batch job.

Credential Profiles Support

  • There are limitations on importing devices with a credential profile. If credentialProfileName parameter is specified and is not empty, this device should not contain any other credential parameters. Parameters allowed to be used with credentialProfileName are: ipAddress, networkMask, and udfs. If other credential parameters are set along with credentialProfileName they will be ignored.

User Defined Field Support

  • This service supports importing and exporting devices with User Defined Fields (UDF).
  • The maximum length of a UDF value is 255 characters; devices which have UDF values greater than 255 characters will be ignored.
  • Each bulk Import service request overwrites existing UDF records. To update the UDF of a device, follow the steps:
    • Retrieve the full list UDFs of the device using the GET op/devices/exportDevices resource.
    • Find the UDF entry to be updated in the list.
    • Assign the new value of the entry.
    • Use this resource to save the change.

TL1 Credentials Support

  • Transaction Language 1 (TL1) credentials are not currently supported for this operation.
PUT Delete Devices

PUT op/devices/deleteDevices

Deprecated

This operation deletes devices in a synchronized way which may take a long time to respond. Use the Delete devices through job resource (POST op/devices/removalJob) instead

An operation to delete devices by ip address. The response time of this service varies and depends on the status of the devices.

Group Summary Service

The Group Summary Service provides a summary of alarms per group for each type of group (Site, Device Type or User Defined Group) , an overall alarm summary and a summary of the number devices per Site.

Resource Description API Version
GET Group Specification

GET data/GroupSpecification

Provides a view of group specific information of devices. Use this service to query or navigate groups

Job Operations

To check job status, suspend, cancel and resume jobs.

Resource Description API Version
GET Job Summary

GET data/JobSummary

Provides a consolidated view of the latest status of all scheduled jobs. Use this resource to get a quick job status check. To query system jobs , specify username=SYSTEM
GET Query Job Run History

GET op/jobService/runhistory

Query the past run instances of a job. All request parameters are optional.

If no parameters are specified, If no parameters are specified, no run instances will be returned.. NBI filtering can be applied to the parameters to customize the query. Please refer the filtering page for the details of how to use filtering

Examples :

  • get the run history of the job 123 --/jobService/runhistory?jobId=123
  • get the run history of job 123 and job 456 between 2013-04-26T14:00:00 and 2013-04-26T16:00:00 -- /jobService/runhistory?jobId=in(123,456)&startTime=between("2013-04-26T14:00:00","2013-04-26T16:00:00")
  • get all run history of jobs with job name starting with "BulkImport" -- jobService/runhistory?jobName=startsWith("BulkImport")
PUT Cancel A Job

PUT op/jobService/cancel

Disable the trigger permanently. The canceled job cannnot be resumed using "Resume A Job" service
PUT Cancel A Job running instance

PUT op/jobService/cancelrunning

Stop a running instance of a job.
PUT Resume A Job

PUT op/jobService/resume

Re-enable the trigger of a suspended job.
PUT Suspend A Job

PUT op/jobService/suspend

Disable the trigger temporarily. The job will no longer run when suspended. To re-enable the job trigger, use 'Resume A Job' service. Suspending a job in running status dose not impact the running instance.

Report Service

The Report service provides operations to discover and run reports. Reports need to be defined in the system prior to access through the API.

Resource Description API Version
GET Run a ZIP Report

GET op/reportService/zipReport

This API operation is used to generate reports from a specific saved report template and return the report output as ZIP of one or more CSV files. It takes one argument, a String reportTitle, which is the name of the saved report template. This API features similarly to the export functionality available in the Report Launch Pad.

User Defined Field Management

The User Defined Field Management services provide operations to query, create, update and delete user tag definitions

Resource Description API Version
GET User Defined Field Definition

GET data/UserDefinedFieldDefinition

Provides a view of the User Defined Field Definitions of the system
PUT Delete User Defined Field Definition

PUT op/udfService/deleteUserTagDefinition

An operation to delete User Defined Field definitions
PUT Import User Defined Field Definition

PUT op/udfService/importUserTagDefinition

An operation to create or update User Defined Field definitions.

WLAN Provisioning

Provides for operations to retrieve, create, modify, and delete interfaces, WLAN profiles, and AP groups.

Resource Description API Version
GET Wlan Profiles

GET data/WlanProfiles

Provides information about WLANs present on controllers managed by this system.
GET Wlan Templates

GET data/WlanTemplates

Provides information about WLAN templates stored on this system.
DELETE Delete AP Group

DELETE op/wlanProvisioning/apGroup

Schedules a job to delete an AP group from a Wlan Controller.
DELETE Delete Interface

DELETE op/wlanProvisioning/interface

Schedules a job to delete an interface from a Wlan Controller.
DELETE Delete Interface Group

DELETE op/wlanProvisioning/interfaceGroup

Schedules a job to delete an interface group from a Wlan Controller.
DELETE Delete WLAN Profile

DELETE op/wlanProvisioning/wlanProfile

Schedules a job to delete a WLAN profile from a Wlan Controller.
DELETE Delete Wlan Template

DELETE op/wlanProvisioning/wlanTemplate

Removes a WLAN template from the server.
POST Create AP Group

POST op/wlanProvisioning/apGroup

Schedules a job to create an AP group on a Wlan Controller.
POST Create Interface

POST op/wlanProvisioning/interface

Schedules a job to create an interface on a Wlan Controller.
POST Create Interface Group

POST op/wlanProvisioning/interfaceGroup

Schedules a job to create an interface group on a Wlan Controller.
POST Create Wlan Template

POST op/wlanProvisioning/wlanTemplate

Creates a WLAN template on the server.
PUT Deploy Wlan Template

PUT op/wlanProvisioning/deployTemplate

Schedules a job to deploy a WLAN template onto a Wlan Controller, creating a WLAN profile.
PUT Modify AP Group

PUT op/wlanProvisioning/apGroup

Schedules a job to modify an existing AP group on a Wlan Controller. The apGroupName attribute must match the existing AP group to be modified, and cannot be changed.
PUT Modify Interface

PUT op/wlanProvisioning/interface

Schedules a job to modify an existing interface on a Wlan Controller. The interfaceName attribute must match the existing interface to be modified, and cannot be changed.
PUT Modify Interface Group

PUT op/wlanProvisioning/interfaceGroup

Schedules a job to modify an existing interface group on a Wlan Controller. The interfaceGroupName attribute must match the existing interface group to be modified, and cannot be changed.
PUT Modify Wlan Template

PUT op/wlanProvisioning/wlanTemplate

Modifies an existing WLAN template on the server. The template name must match an existing template.