naftiko: 1.0.0-alpha2 info: label: Webex Contact Center — Outdial ANI description: 'Webex Contact Center — Outdial ANI. 16 operations. Lead operation: List Outdial ANI(s). Self-contained Naftiko capability covering one Webex business surface.' tags: - Webex - Outdial ANI created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: WEBEX_API_KEY: WEBEX_API_KEY capability: consumes: - type: http namespace: contact-center-outdial-ani baseUri: '' description: Webex Contact Center — Outdial ANI business capability. Self-contained, no shared references. resources: - name: organization-orgid-outdial-ani path: /organization/{orgid}/outdial-ani operations: - name: getallconfig5 method: GET description: List Outdial ANI(s) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: filter in: query type: string description: 'Specify a filter based on which the results will be fetched. Supported filterable fields: id. ' - name: attributes in: query type: string description: Specify the attributes to be returned. By default, all attributes are returned along with the specified columns. All attributes are supported. except outdialANI - name: page in: query type: integer description: Defines the number of displayed page. The page number starts from 0. - name: pageSize in: query type: integer description: Defines the number of items to be displayed on a page. If the number specified is more than allowed max page size, the API will automatically adjust the page si - name: singleObjectResponse in: query type: boolean description: Specifiy whether to include array fields in the response, This query param should use only if the response contain single record, if we are using for multiple o - name: createconfig8 method: POST description: Create a new Outdial ANI outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: organization-orgid-outdial-ani-bulk path: /organization/{orgid}/outdial-ani/bulk operations: - name: saveallconfig9 method: POST description: Bulk save Outdial ANI(s) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: organization-orgid-outdial-ani-bulk-export path: /organization/{orgid}/outdial-ani/bulk-export operations: - name: bulkexport7 method: GET description: Bulk export Outdial ANI(s) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: page in: query type: integer description: Defines the number of displayed page. The page number starts from 0. - name: pageSize in: query type: integer description: Defines the number of items to be displayed on a page. If the number specified is more than allowed max page size, the API will automatically adjust the page si - name: organization-orgid-outdial-ani-entry path: /organization/{orgid}/outdial-ani/entry operations: - name: getallconfigwithmetadata26 method: GET description: List Outdial ANI Entry(s) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: filter in: query type: string description: 'Specify a filter based on which the results will be fetched. Supported filterable fields: id. ' - name: attributes in: query type: string description: Specify the attributes to be returned. By default, all attributes are returned along with the specified columns. All attributes are supported. - name: search in: query type: string description: Filter data based on the search keyword.Supported search columns(name) - name: page in: query type: integer description: Defines the number of displayed page. The page number starts from 0. - name: pageSize in: query type: integer description: Defines the number of items to be displayed on a page. If the number specified is more than allowed max page size, the API will automatically adjust the page si - name: organization-orgid-outdial-ani-id path: /organization/{orgid}/outdial-ani/{id} operations: - name: getconfig10 method: GET description: Get specific Outdial ANI by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: id in: path type: string description: Resource ID of the Outdial ANI. required: true - name: updateconfig10 method: PUT description: Update specific Outdial ANI by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: id in: path type: string description: Resource ID of the Outdial ANI. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deleteconfig9 method: DELETE description: Delete specific Outdial ANI by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: id in: path type: string description: Resource ID of the Outdial ANI. required: true - name: organization-orgid-outdial-ani-id-incoming-references path: /organization/{orgid}/outdial-ani/{id}/incoming-references operations: - name: getincomingreferences7 method: GET description: List references for a specific Outdial ANI outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: id in: path type: string description: ID of this contact center resource. required: true - name: type in: query type: string description: Entity type of the other entity that has a reference to this specific entity. - name: page in: query type: integer description: Defines the number of displayed page. The page number starts from 0. - name: pageSize in: query type: integer description: Defines the number of items to be displayed on a page. If the number specified is more than allowed max page size, the API will automatically adjust the page si - name: organization-orgid-outdial-ani-outDialAniId-entry path: /organization/{orgid}/outdial-ani/{outDialAniId}/entry operations: - name: createconfig9 method: POST description: Create a new Outdial ANI Entry outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: outDialAniId in: path type: string description: Resource ID of the Outdial ANI required: true - name: body in: body type: object description: Request body (JSON). required: true - name: organization-orgid-outdial-ani-outDialAniId-entry-bulk path: /organization/{orgid}/outdial-ani/{outDialAniId}/entry/bulk operations: - name: saveallconfig8 method: POST description: Bulk save Outdial ANI Entry(s) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: outDialAniId in: path type: string description: Resource ID of the Outdial ANI required: true - name: body in: body type: object description: Request body (JSON). required: true - name: organization-orgid-outdial-ani-outDialAniId-entry-id path: /organization/{orgid}/outdial-ani/{outDialAniId}/entry/{id} operations: - name: getconfig9 method: GET description: Get specific Outdial ANI Entry by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: outDialAniId in: path type: string description: Resource ID of the Outdial ANI required: true - name: id in: path type: string description: ID of this contact center resource. required: true - name: updateconfig9 method: PUT description: Update specific Outdial ANI Entry by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: outDialAniId in: path type: string description: Resource ID of the Outdial ANI required: true - name: id in: path type: string description: ID of this contact center resource. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deleteconfig8 method: DELETE description: Delete specific Outdial ANI Entry by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: outDialAniId in: path type: string description: Resource ID of the Outdial ANI required: true - name: id in: path type: string description: ID of this contact center resource. required: true - name: organization-orgid-v2-outdial-ani path: /organization/{orgid}/v2/outdial-ani operations: - name: getallconfigwithmetadata9 method: GET description: List Outdial ANI(s) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: filter in: query type: string description: 'Specify a filter based on which the results will be fetched. All the fields are supported except: organizationId, outdialANIEntries, createdTime, lastUpdatedTim' - name: attributes in: query type: string description: Specify the attributes to be returned. By default, all attributes are returned along with the specified columns. All attributes are supported. except outdialANI - name: search in: query type: string description: Filter data based on the search keyword.Supported search columns(name, description) - name: page in: query type: integer description: Defines the number of displayed page. The page number starts from 0. - name: pageSize in: query type: integer description: Defines the number of items to be displayed on a page. If the number specified is more than allowed max page size, the API will automatically adjust the page si - name: singleObjectResponse in: query type: boolean description: Specifiy whether to include array fields in the response, This query param should use only if the response contain single record, if we are using for multiple o - name: organization-orgid-v2-outdial-ani-outDialAniId-entry path: /organization/{orgid}/v2/outdial-ani/{outDialAniId}/entry operations: - name: getallconfigwithmetadata10 method: GET description: List Outdial ANI Entry(s) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgid in: path type: string description: Organization ID to be used for this operation. The specified security token must have permission to interact with the organization. required: true - name: outDialAniId in: path type: string description: Resource ID of the Outdial ANI required: true - name: filter in: query type: string description: 'Specify a filter based on which the results will be fetched. All the fields are supported except: organizationId, createdTime, lastUpdatedTime ' - name: attributes in: query type: string description: Specify the attributes to be returned. By default, all attributes are returned along with the specified columns. All attributes are supported. - name: search in: query type: string description: Filter data based on the search keyword.Supported search columns(name) - name: page in: query type: integer description: Defines the number of displayed page. The page number starts from 0. - name: pageSize in: query type: integer description: Defines the number of items to be displayed on a page. If the number specified is more than allowed max page size, the API will automatically adjust the page si authentication: type: bearer token: '{{env.WEBEX_API_KEY}}' exposes: - type: rest namespace: contact-center-outdial-ani-rest port: 8080 description: REST adapter for Webex Contact Center — Outdial ANI. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/organization/{orgid}/outdial-ani name: organization-orgid-outdial-ani description: REST surface for organization-orgid-outdial-ani. operations: - method: GET name: getallconfig5 description: List Outdial ANI(s) call: contact-center-outdial-ani.getallconfig5 with: orgid: rest.orgid filter: rest.filter attributes: rest.attributes page: rest.page pageSize: rest.pageSize singleObjectResponse: rest.singleObjectResponse outputParameters: - type: object mapping: $. - method: POST name: createconfig8 description: Create a new Outdial ANI call: contact-center-outdial-ani.createconfig8 with: orgid: rest.orgid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/outdial-ani/bulk name: organization-orgid-outdial-ani-bulk description: REST surface for organization-orgid-outdial-ani-bulk. operations: - method: POST name: saveallconfig9 description: Bulk save Outdial ANI(s) call: contact-center-outdial-ani.saveallconfig9 with: orgid: rest.orgid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/outdial-ani/bulk-export name: organization-orgid-outdial-ani-bulk-export description: REST surface for organization-orgid-outdial-ani-bulk-export. operations: - method: GET name: bulkexport7 description: Bulk export Outdial ANI(s) call: contact-center-outdial-ani.bulkexport7 with: orgid: rest.orgid page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/outdial-ani/entry name: organization-orgid-outdial-ani-entry description: REST surface for organization-orgid-outdial-ani-entry. operations: - method: GET name: getallconfigwithmetadata26 description: List Outdial ANI Entry(s) call: contact-center-outdial-ani.getallconfigwithmetadata26 with: orgid: rest.orgid filter: rest.filter attributes: rest.attributes search: rest.search page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/outdial-ani/{id} name: organization-orgid-outdial-ani-id description: REST surface for organization-orgid-outdial-ani-id. operations: - method: GET name: getconfig10 description: Get specific Outdial ANI by ID call: contact-center-outdial-ani.getconfig10 with: orgid: rest.orgid id: rest.id outputParameters: - type: object mapping: $. - method: PUT name: updateconfig10 description: Update specific Outdial ANI by ID call: contact-center-outdial-ani.updateconfig10 with: orgid: rest.orgid id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteconfig9 description: Delete specific Outdial ANI by ID call: contact-center-outdial-ani.deleteconfig9 with: orgid: rest.orgid id: rest.id outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/outdial-ani/{id}/incoming-references name: organization-orgid-outdial-ani-id-incoming-references description: REST surface for organization-orgid-outdial-ani-id-incoming-references. operations: - method: GET name: getincomingreferences7 description: List references for a specific Outdial ANI call: contact-center-outdial-ani.getincomingreferences7 with: orgid: rest.orgid id: rest.id type: rest.type page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/outdial-ani/{outdialaniid}/entry name: organization-orgid-outdial-ani-outdialaniid-entry description: REST surface for organization-orgid-outdial-ani-outDialAniId-entry. operations: - method: POST name: createconfig9 description: Create a new Outdial ANI Entry call: contact-center-outdial-ani.createconfig9 with: orgid: rest.orgid outDialAniId: rest.outDialAniId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/outdial-ani/{outdialaniid}/entry/bulk name: organization-orgid-outdial-ani-outdialaniid-entry-bulk description: REST surface for organization-orgid-outdial-ani-outDialAniId-entry-bulk. operations: - method: POST name: saveallconfig8 description: Bulk save Outdial ANI Entry(s) call: contact-center-outdial-ani.saveallconfig8 with: orgid: rest.orgid outDialAniId: rest.outDialAniId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/outdial-ani/{outdialaniid}/entry/{id} name: organization-orgid-outdial-ani-outdialaniid-entry-id description: REST surface for organization-orgid-outdial-ani-outDialAniId-entry-id. operations: - method: GET name: getconfig9 description: Get specific Outdial ANI Entry by ID call: contact-center-outdial-ani.getconfig9 with: orgid: rest.orgid outDialAniId: rest.outDialAniId id: rest.id outputParameters: - type: object mapping: $. - method: PUT name: updateconfig9 description: Update specific Outdial ANI Entry by ID call: contact-center-outdial-ani.updateconfig9 with: orgid: rest.orgid outDialAniId: rest.outDialAniId id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteconfig8 description: Delete specific Outdial ANI Entry by ID call: contact-center-outdial-ani.deleteconfig8 with: orgid: rest.orgid outDialAniId: rest.outDialAniId id: rest.id outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/v2/outdial-ani name: organization-orgid-v2-outdial-ani description: REST surface for organization-orgid-v2-outdial-ani. operations: - method: GET name: getallconfigwithmetadata9 description: List Outdial ANI(s) call: contact-center-outdial-ani.getallconfigwithmetadata9 with: orgid: rest.orgid filter: rest.filter attributes: rest.attributes search: rest.search page: rest.page pageSize: rest.pageSize singleObjectResponse: rest.singleObjectResponse outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/v2/outdial-ani/{outdialaniid}/entry name: organization-orgid-v2-outdial-ani-outdialaniid-entry description: REST surface for organization-orgid-v2-outdial-ani-outDialAniId-entry. operations: - method: GET name: getallconfigwithmetadata10 description: List Outdial ANI Entry(s) call: contact-center-outdial-ani.getallconfigwithmetadata10 with: orgid: rest.orgid outDialAniId: rest.outDialAniId filter: rest.filter attributes: rest.attributes search: rest.search page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - type: mcp namespace: contact-center-outdial-ani-mcp port: 9090 transport: http description: MCP adapter for Webex Contact Center — Outdial ANI. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-outdial-ani-s description: List Outdial ANI(s) hints: readOnly: true destructive: false idempotent: true call: contact-center-outdial-ani.getallconfig5 with: orgid: tools.orgid filter: tools.filter attributes: tools.attributes page: tools.page pageSize: tools.pageSize singleObjectResponse: tools.singleObjectResponse outputParameters: - type: object mapping: $. - name: create-new-outdial-ani description: Create a new Outdial ANI hints: readOnly: false destructive: false idempotent: false call: contact-center-outdial-ani.createconfig8 with: orgid: tools.orgid body: tools.body outputParameters: - type: object mapping: $. - name: bulk-save-outdial-ani-s description: Bulk save Outdial ANI(s) hints: readOnly: false destructive: false idempotent: false call: contact-center-outdial-ani.saveallconfig9 with: orgid: tools.orgid body: tools.body outputParameters: - type: object mapping: $. - name: bulk-export-outdial-ani-s description: Bulk export Outdial ANI(s) hints: readOnly: true destructive: false idempotent: true call: contact-center-outdial-ani.bulkexport7 with: orgid: tools.orgid page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $. - name: list-outdial-ani-entry-s description: List Outdial ANI Entry(s) hints: readOnly: true destructive: false idempotent: true call: contact-center-outdial-ani.getallconfigwithmetadata26 with: orgid: tools.orgid filter: tools.filter attributes: tools.attributes search: tools.search page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $. - name: get-specific-outdial-ani-id description: Get specific Outdial ANI by ID hints: readOnly: true destructive: false idempotent: true call: contact-center-outdial-ani.getconfig10 with: orgid: tools.orgid id: tools.id outputParameters: - type: object mapping: $. - name: update-specific-outdial-ani-id description: Update specific Outdial ANI by ID hints: readOnly: false destructive: false idempotent: true call: contact-center-outdial-ani.updateconfig10 with: orgid: tools.orgid id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: delete-specific-outdial-ani-id description: Delete specific Outdial ANI by ID hints: readOnly: false destructive: true idempotent: true call: contact-center-outdial-ani.deleteconfig9 with: orgid: tools.orgid id: tools.id outputParameters: - type: object mapping: $. - name: list-references-specific-outdial-ani description: List references for a specific Outdial ANI hints: readOnly: true destructive: false idempotent: true call: contact-center-outdial-ani.getincomingreferences7 with: orgid: tools.orgid id: tools.id type: tools.type page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $. - name: create-new-outdial-ani-entry description: Create a new Outdial ANI Entry hints: readOnly: false destructive: false idempotent: false call: contact-center-outdial-ani.createconfig9 with: orgid: tools.orgid outDialAniId: tools.outDialAniId body: tools.body outputParameters: - type: object mapping: $. - name: bulk-save-outdial-ani-entry-s description: Bulk save Outdial ANI Entry(s) hints: readOnly: false destructive: false idempotent: false call: contact-center-outdial-ani.saveallconfig8 with: orgid: tools.orgid outDialAniId: tools.outDialAniId body: tools.body outputParameters: - type: object mapping: $. - name: get-specific-outdial-ani-entry description: Get specific Outdial ANI Entry by ID hints: readOnly: true destructive: false idempotent: true call: contact-center-outdial-ani.getconfig9 with: orgid: tools.orgid outDialAniId: tools.outDialAniId id: tools.id outputParameters: - type: object mapping: $. - name: update-specific-outdial-ani-entry description: Update specific Outdial ANI Entry by ID hints: readOnly: false destructive: false idempotent: true call: contact-center-outdial-ani.updateconfig9 with: orgid: tools.orgid outDialAniId: tools.outDialAniId id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: delete-specific-outdial-ani-entry description: Delete specific Outdial ANI Entry by ID hints: readOnly: false destructive: true idempotent: true call: contact-center-outdial-ani.deleteconfig8 with: orgid: tools.orgid outDialAniId: tools.outDialAniId id: tools.id outputParameters: - type: object mapping: $. - name: list-outdial-ani-s-2 description: List Outdial ANI(s) hints: readOnly: true destructive: false idempotent: true call: contact-center-outdial-ani.getallconfigwithmetadata9 with: orgid: tools.orgid filter: tools.filter attributes: tools.attributes search: tools.search page: tools.page pageSize: tools.pageSize singleObjectResponse: tools.singleObjectResponse outputParameters: - type: object mapping: $. - name: list-outdial-ani-entry-s-2 description: List Outdial ANI Entry(s) hints: readOnly: true destructive: false idempotent: true call: contact-center-outdial-ani.getallconfigwithmetadata10 with: orgid: tools.orgid outDialAniId: tools.outDialAniId filter: tools.filter attributes: tools.attributes search: tools.search page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $.