naftiko: 1.0.0-alpha2 info: label: Webex Contact Center — Site description: 'Webex Contact Center — Site. 10 operations. Lead operation: List Site(s). Self-contained Naftiko capability covering one Webex business surface.' tags: - Webex - Site 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-site baseUri: '' description: Webex Contact Center — Site business capability. Self-contained, no shared references. resources: - name: organization-orgid-site path: /organization/{orgid}/site operations: - name: getallconfigwithoutpagination1 method: GET description: List Site(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.Default all attributes are returned along with specified columns. All Attributes are supported - name: createconfig7 method: POST description: Create a new Site 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-site-bulk path: /organization/{orgid}/site/bulk operations: - name: saveallconfig6 method: POST description: Bulk save Site(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-site-bulk-export path: /organization/{orgid}/site/bulk-export operations: - name: bulkexport7 method: GET description: Bulk export Site(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-site-purge-inactive-entities path: /organization/{orgid}/site/purge-inactive-entities operations: - name: purgeinactiveconfig4 method: POST description: Purge inactive Site(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: nextStartId in: query type: string description: This is the entity ID from which items for the next purge batch with be selected. - name: organization-orgid-site-id path: /organization/{orgid}/site/{id} operations: - name: getconfig8 method: GET description: Get specific Site 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 Site. required: true - name: updateconfig8 method: PUT description: Update specific Site 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 Site. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deleteconfig7 method: DELETE description: Delete specific Site 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 Site. required: true - name: organization-orgid-site-id-incoming-references path: /organization/{orgid}/site/{id}/incoming-references operations: - name: getincomingreferences6 method: GET description: List references for a specific Site 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-v2-site path: /organization/{orgid}/v2/site operations: - name: getallconfigwithmetadata9 method: GET description: List Site(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, createdTime, lastUpdatedTime ' - name: attributes in: query type: string description: Specify the attributes to be returned.Default all attributes are returned along with 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-site-rest port: 8080 description: REST adapter for Webex Contact Center — Site. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/organization/{orgid}/site name: organization-orgid-site description: REST surface for organization-orgid-site. operations: - method: GET name: getallconfigwithoutpagination1 description: List Site(s) call: contact-center-site.getallconfigwithoutpagination1 with: orgid: rest.orgid filter: rest.filter attributes: rest.attributes outputParameters: - type: object mapping: $. - method: POST name: createconfig7 description: Create a new Site call: contact-center-site.createconfig7 with: orgid: rest.orgid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/site/bulk name: organization-orgid-site-bulk description: REST surface for organization-orgid-site-bulk. operations: - method: POST name: saveallconfig6 description: Bulk save Site(s) call: contact-center-site.saveallconfig6 with: orgid: rest.orgid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/site/bulk-export name: organization-orgid-site-bulk-export description: REST surface for organization-orgid-site-bulk-export. operations: - method: GET name: bulkexport7 description: Bulk export Site(s) call: contact-center-site.bulkexport7 with: orgid: rest.orgid page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/site/purge-inactive-entities name: organization-orgid-site-purge-inactive-entities description: REST surface for organization-orgid-site-purge-inactive-entities. operations: - method: POST name: purgeinactiveconfig4 description: Purge inactive Site(s) call: contact-center-site.purgeinactiveconfig4 with: orgid: rest.orgid nextStartId: rest.nextStartId outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/site/{id} name: organization-orgid-site-id description: REST surface for organization-orgid-site-id. operations: - method: GET name: getconfig8 description: Get specific Site by ID call: contact-center-site.getconfig8 with: orgid: rest.orgid id: rest.id outputParameters: - type: object mapping: $. - method: PUT name: updateconfig8 description: Update specific Site by ID call: contact-center-site.updateconfig8 with: orgid: rest.orgid id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteconfig7 description: Delete specific Site by ID call: contact-center-site.deleteconfig7 with: orgid: rest.orgid id: rest.id outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/site/{id}/incoming-references name: organization-orgid-site-id-incoming-references description: REST surface for organization-orgid-site-id-incoming-references. operations: - method: GET name: getincomingreferences6 description: List references for a specific Site call: contact-center-site.getincomingreferences6 with: orgid: rest.orgid id: rest.id type: rest.type page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - path: /v1/organization/{orgid}/v2/site name: organization-orgid-v2-site description: REST surface for organization-orgid-v2-site. operations: - method: GET name: getallconfigwithmetadata9 description: List Site(s) call: contact-center-site.getallconfigwithmetadata9 with: orgid: rest.orgid filter: rest.filter attributes: rest.attributes search: rest.search page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - type: mcp namespace: contact-center-site-mcp port: 9090 transport: http description: MCP adapter for Webex Contact Center — Site. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-site-s description: List Site(s) hints: readOnly: true destructive: false idempotent: true call: contact-center-site.getallconfigwithoutpagination1 with: orgid: tools.orgid filter: tools.filter attributes: tools.attributes outputParameters: - type: object mapping: $. - name: create-new-site description: Create a new Site hints: readOnly: false destructive: false idempotent: false call: contact-center-site.createconfig7 with: orgid: tools.orgid body: tools.body outputParameters: - type: object mapping: $. - name: bulk-save-site-s description: Bulk save Site(s) hints: readOnly: false destructive: false idempotent: false call: contact-center-site.saveallconfig6 with: orgid: tools.orgid body: tools.body outputParameters: - type: object mapping: $. - name: bulk-export-site-s description: Bulk export Site(s) hints: readOnly: true destructive: false idempotent: true call: contact-center-site.bulkexport7 with: orgid: tools.orgid page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $. - name: purge-inactive-site-s description: Purge inactive Site(s) hints: readOnly: false destructive: false idempotent: false call: contact-center-site.purgeinactiveconfig4 with: orgid: tools.orgid nextStartId: tools.nextStartId outputParameters: - type: object mapping: $. - name: get-specific-site-id description: Get specific Site by ID hints: readOnly: true destructive: false idempotent: true call: contact-center-site.getconfig8 with: orgid: tools.orgid id: tools.id outputParameters: - type: object mapping: $. - name: update-specific-site-id description: Update specific Site by ID hints: readOnly: false destructive: false idempotent: true call: contact-center-site.updateconfig8 with: orgid: tools.orgid id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: delete-specific-site-id description: Delete specific Site by ID hints: readOnly: false destructive: true idempotent: true call: contact-center-site.deleteconfig7 with: orgid: tools.orgid id: tools.id outputParameters: - type: object mapping: $. - name: list-references-specific-site description: List references for a specific Site hints: readOnly: true destructive: false idempotent: true call: contact-center-site.getincomingreferences6 with: orgid: tools.orgid id: tools.id type: tools.type page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $. - name: list-site-s-2 description: List Site(s) hints: readOnly: true destructive: false idempotent: true call: contact-center-site.getallconfigwithmetadata9 with: orgid: tools.orgid filter: tools.filter attributes: tools.attributes search: tools.search page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $.