openapi: 3.2.0 info: title: ISE ERS Tacacsexternalservers API version: 3.1.0 x-provenance: method: harvested authored_by: Cisco harvested_by: API Evangelist harvested_on: '2026-08-19' first_party: true provider_published: true source_host: pubhub.devnetcloud.com note: 103 ISE API descriptions (1,490 operations; 32 OpenAPI 3.0.x + 71 Swagger 2.0) enumerated from Cisco's own DevNet project manifest and fetched anonymously. Byte-identity reconfirmed 2026-08-19 by SHA-256 against the live source. x-evidence: - type: source url: https://pubhub.devnetcloud.com/media/identity-services-engine-api-v1/docs/ - type: source url: https://developer.cisco.com/docs/identity-services-engine/ servers: - url: https://{server}:{port}/ers/config description: Append /ctsapi/v2 or /ctsapi/v3 to above URL while accessing CTS APIs variables: server: description: The host where the API is rooted default: localhost port: description: The port no for CTS APIs is 9063 and for other APIs it is 443 default: '443' security: - HTTPBasicAuthentication: [] tags: - name: tacacsexternalservers paths: /tacacsexternalservers/: get: tags: - tacacsexternalservers summary: Get-All parameters: - $ref: '#/components/parameters/ppage' - $ref: '#/components/parameters/psize' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tacacsexternalserversListResponse' application/xml: schema: $ref: '#/components/schemas/tacacsexternalserversListResponse' text/html: schema: type: string example: null '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '406': description: Not Acceptable '415': description: UnSupported Media Type content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null post: tags: - tacacsexternalservers summary: Create parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/policy.tacacsexternalservers' example: TacacsExternalServer: hostIP: 1.1.1.1 name: TacacsExternalServer1 description: TacacsExternalServerForSDK id: dceff5c6-d4f2-48b7-92ae-87adcdd2777b connectionPort: 49 sharedSecret: SharedSecret singleConnect: true timeout: 20 required: true responses: '201': description: Created '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '406': description: Not Acceptable '415': description: UnSupported Media Type content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '500': description: Internal Server Error /tacacsexternalservers/name/{name}: get: tags: - tacacsexternalservers summary: Get-By-Name parameters: - name: name in: path required: true schema: title: name type: string example: null responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tacacsexternalserversResponse' application/xml: schema: $ref: '#/components/schemas/tacacsexternalserversResponse' text/html: schema: type: string example: null '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '406': description: Not Acceptable '415': description: UnSupported Media Type content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null /tacacsexternalservers/{id}: get: tags: - tacacsexternalservers summary: Get-By-Id parameters: - name: id in: path required: true schema: title: id type: string example: null responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tacacsexternalserversResponse' application/xml: schema: $ref: '#/components/schemas/tacacsexternalserversResponse' text/html: schema: type: string example: null '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '406': description: Not Acceptable '415': description: UnSupported Media Type content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null put: tags: - tacacsexternalservers summary: Update parameters: - name: id in: path required: true schema: title: id type: string example: null requestBody: content: application/json: schema: $ref: '#/components/schemas/policy.tacacsexternalservers' example: TacacsExternalServer: hostIP: 1.1.1.1 name: TacacsExternalServer1 description: TacacsExternalServerForSDK id: dceff5c6-d4f2-48b7-92ae-87adcdd2777b connectionPort: 49 sharedSecret: SharedSecret singleConnect: true timeout: 20 required: true responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/UpdatedFieldsResponse' application/xml: schema: $ref: '#/components/schemas/UpdatedFieldsResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '406': description: Not Acceptable '415': description: UnSupported Media Type content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '500': description: Internal Server Error response content: application/json: schema: $ref: '#/components/schemas/ERSResponse' delete: tags: - tacacsexternalservers summary: Delete parameters: - name: id in: path required: true schema: title: id type: string example: null responses: '204': description: No Content '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '406': description: Not Acceptable '415': description: UnSupported Media Type content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null patch: tags: - tacacsexternalservers summary: Patch description: Update any attribute subset. Only attributes that sent will be affected. parameters: - name: id in: path required: true schema: title: id type: string example: null requestBody: content: application/json: schema: $ref: '#/components/schemas/policy.tacacsexternalservers' example: TacacsExternalServer: hostIP: 1.1.1.1 name: TacacsExternalServer1 description: TacacsExternalServerForSDK id: dceff5c6-d4f2-48b7-92ae-87adcdd2777b connectionPort: 49 sharedSecret: SharedSecret singleConnect: true timeout: 20 required: true responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tacacsexternalserversResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '406': description: Not Acceptable '415': description: UnSupported Media Type content: application/json: schema: $ref: '#/components/schemas/ERSResponse' application/xml: schema: $ref: '#/components/schemas/ERSResponse' text/html: schema: type: string example: null '500': description: Internal Server Error response content: application/json: schema: $ref: '#/components/schemas/ERSResponse' components: schemas: Link: type: object properties: rel: type: string example: self enum: - next - previous - self - status href: type: string example: https://{server}:{port}/ers/config type: type: string example: application/json example: null tacacsexternalserversResponseEntity: properties: hostIP: title: hostIP type: string description: The server IPV4 address example: null connectionPort: title: connectionPort type: number description: The port to connect the server example: null singleConnect: title: singleConnect type: boolean description: define the use of single connection example: null sharedSecret: title: sharedSecret type: string description: The server shared secret example: null timeout: title: timeout type: number description: The server timeout example: null name: title: name type: string description: name example: null id: title: id type: string description: Id example: null description: title: description type: string description: Description example: null link: $ref: '#/components/schemas/Link' example: null tacacsexternalserversResponse: type: object properties: TacacsExternalServer: $ref: '#/components/schemas/tacacsexternalserversResponseEntity' example: TacacsExternalServer: hostIP: 1.1.1.1 name: TacacsExternalServer1 description: TacacsExternalServerForSDK id: dceff5c6-d4f2-48b7-92ae-87adcdd2777b connectionPort: 49 sharedSecret: SharedSecret singleConnect: true timeout: 20 updatedField: properties: field: type: string example: null oldValue: type: string example: null newValue: type: string example: null example: null TacacsExternalServer: required: - hostIP - name - sharedSecret properties: hostIP: title: hostIP type: string description: The server IPV4 address example: null connectionPort: title: connectionPort type: number description: The port to connect the server example: null singleConnect: title: singleConnect type: boolean description: define the use of single connection example: null sharedSecret: title: sharedSecret type: string description: The server shared secret example: null timeout: title: timeout type: number description: The server timeout example: null name: title: name type: string description: name example: null id: title: id type: string description: Id example: null description: title: description type: string description: Description example: null example: TacacsExternalServer: hostIP: 1.1.1.1 name: TacacsExternalServer1 description: TacacsExternalServerForSDK id: dceff5c6-d4f2-48b7-92ae-87adcdd2777b connectionPort: 49 sharedSecret: SharedSecret singleConnect: true timeout: 20 ERSResponse: type: object properties: operation: type: string example: Operation messages: type: array example: null items: properties: title: type: string example: title type: type: string example: type code: type: string example: code example: null example: null UpdatedFieldsResponse: type: object properties: UpdatedFieldsList: type: object properties: updatedField: type: array example: null items: $ref: '#/components/schemas/updatedField' example: null example: null tacacsexternalserversListResponse: type: object properties: SearchResult: type: object properties: total: type: integer example: '2' resources: type: array example: null items: $ref: '#/components/schemas/tacacsexternalserversListResponseEntity' example: null example: SearchResult: total: 2 previousPage: rel: previous href: link-to-previous-page type: application/xml nextPage: rel: next href: link-to-next-page type: application/xml resources: - name: name1 link: rel: self href: type: application/xml description: description1 id: id1 - name: name2 link: rel: self href: type: application/xml description: description2 id: id2 tacacsexternalserversListResponseEntity: properties: id: title: id type: string description: Id description example: null name: title: name type: string description: name description example: null description: title: description type: string description: description example: null link: $ref: '#/components/schemas/Link' example: null policy.tacacsexternalservers: required: - TacacsExternalServer type: object properties: TacacsExternalServer: $ref: '#/components/schemas/TacacsExternalServer' example: null parameters: ppage: name: page in: query description: Page Number (0...N) allowReserved: true schema: type: integer example: null example: '1' psize: name: size in: query description: Items by Page allowReserved: true schema: type: integer example: null example: '20' securitySchemes: HTTPBasicAuthentication: type: http scheme: basic