naftiko: 1.0.0-alpha2 info: label: Coveo Search Interface Service API — Configuration description: 'Coveo Search Interface Service API — Configuration. 11 operations. Lead operation: List Search Interface Configurations. Self-contained Naftiko capability covering one Coveo business surface.' tags: - Coveo - Search Interface Service - Configuration created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: COVEO_SEARCH_TOKEN: COVEO_SEARCH_TOKEN capability: consumes: - type: http namespace: search-interface-configuration baseUri: https://platform.cloud.coveo.com description: Coveo Search Interface Service API — Configuration business capability. Self-contained, no shared references. authentication: type: bearer token: '{{env.COVEO_SEARCH_TOKEN}}' resources: - name: rest-organizations-organizationId-searchinterfaces path: /rest/organizations/{organizationId}/searchinterfaces operations: - name: getallinterfaceconfig method: GET description: List Search Interface Configurations outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createinterfaceconfig method: POST description: Create Search Interface Configuration outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: rest-organizations-organizationId-searchinterfaces-projects-interfaces path: /rest/organizations/{organizationId}/searchinterfaces/projects/interfaces operations: - name: getprojectinterfaceconfig method: GET description: List Search Interface Configurations in a Project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-organizations-organizationId-searchinterfaces-interfaceId path: /rest/organizations/{organizationId}/searchinterfaces/{interfaceId} operations: - name: getinterfaceconfig method: GET description: Show Search Interface Configuration outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateinterfaceconfig method: PUT description: Update Search Interface Configuration outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteinterfaceconfig method: DELETE description: Delete Search Interface Configuration outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-organizations-organizationId-searchinterfaces-interfaceId-accesses path: /rest/organizations/{organizationId}/searchinterfaces/{interfaceId}/accesses operations: - name: getinterfaceaccess method: GET description: List Search Interface Accesses outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateinterfaceaccess method: PUT description: Update Search Interface Accesses outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: rest-organizations-organizationId-searchinterfaces-interfaceId-accesses-users path: /rest/organizations/{organizationId}/searchinterfaces/{interfaceId}/accesses/users operations: - name: getinterfaceuseraccess method: GET description: List Search Interface User Accesses outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateinterfaceuseraccess method: PUT description: Update Search Interface User Accesses outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: addinterfaceuseraccess method: POST description: Add Search Interface User Accesses outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true exposes: - type: rest namespace: search-interface-configuration-rest port: 8080 description: REST adapter for Coveo Search Interface Service API — Configuration. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/organizations/{organizationid}/searchinterfaces name: rest-organizations-organizationid-searchinterfaces description: REST surface for rest-organizations-organizationId-searchinterfaces. operations: - method: GET name: getallinterfaceconfig description: List Search Interface Configurations call: search-interface-configuration.getallinterfaceconfig outputParameters: - type: object mapping: $. - method: POST name: createinterfaceconfig description: Create Search Interface Configuration call: search-interface-configuration.createinterfaceconfig with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organizations/{organizationid}/searchinterfaces/projects/interfaces name: rest-organizations-organizationid-searchinterfaces-projects-interfaces description: REST surface for rest-organizations-organizationId-searchinterfaces-projects-interfaces. operations: - method: GET name: getprojectinterfaceconfig description: List Search Interface Configurations in a Project call: search-interface-configuration.getprojectinterfaceconfig outputParameters: - type: object mapping: $. - path: /v1/organizations/{organizationid}/searchinterfaces/{interfaceid} name: rest-organizations-organizationid-searchinterfaces-interfaceid description: REST surface for rest-organizations-organizationId-searchinterfaces-interfaceId. operations: - method: GET name: getinterfaceconfig description: Show Search Interface Configuration call: search-interface-configuration.getinterfaceconfig outputParameters: - type: object mapping: $. - method: PUT name: updateinterfaceconfig description: Update Search Interface Configuration call: search-interface-configuration.updateinterfaceconfig with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteinterfaceconfig description: Delete Search Interface Configuration call: search-interface-configuration.deleteinterfaceconfig outputParameters: - type: object mapping: $. - path: /v1/organizations/{organizationid}/searchinterfaces/{interfaceid}/accesses name: rest-organizations-organizationid-searchinterfaces-interfaceid-accesses description: REST surface for rest-organizations-organizationId-searchinterfaces-interfaceId-accesses. operations: - method: GET name: getinterfaceaccess description: List Search Interface Accesses call: search-interface-configuration.getinterfaceaccess outputParameters: - type: object mapping: $. - method: PUT name: updateinterfaceaccess description: Update Search Interface Accesses call: search-interface-configuration.updateinterfaceaccess with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organizations/{organizationid}/searchinterfaces/{interfaceid}/accesses/users name: rest-organizations-organizationid-searchinterfaces-interfaceid-accesses-users description: REST surface for rest-organizations-organizationId-searchinterfaces-interfaceId-accesses-users. operations: - method: GET name: getinterfaceuseraccess description: List Search Interface User Accesses call: search-interface-configuration.getinterfaceuseraccess outputParameters: - type: object mapping: $. - method: PUT name: updateinterfaceuseraccess description: Update Search Interface User Accesses call: search-interface-configuration.updateinterfaceuseraccess with: body: rest.body outputParameters: - type: object mapping: $. - method: POST name: addinterfaceuseraccess description: Add Search Interface User Accesses call: search-interface-configuration.addinterfaceuseraccess with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: search-interface-configuration-mcp port: 9090 transport: http description: MCP adapter for Coveo Search Interface Service API — Configuration. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-search-interface-configurations description: List Search Interface Configurations hints: readOnly: true destructive: false idempotent: true call: search-interface-configuration.getallinterfaceconfig outputParameters: - type: object mapping: $. - name: create-search-interface-configuration description: Create Search Interface Configuration hints: readOnly: true destructive: false idempotent: false call: search-interface-configuration.createinterfaceconfig with: body: tools.body outputParameters: - type: object mapping: $. - name: list-search-interface-configurations-project description: List Search Interface Configurations in a Project hints: readOnly: true destructive: false idempotent: true call: search-interface-configuration.getprojectinterfaceconfig outputParameters: - type: object mapping: $. - name: show-search-interface-configuration description: Show Search Interface Configuration hints: readOnly: true destructive: false idempotent: true call: search-interface-configuration.getinterfaceconfig outputParameters: - type: object mapping: $. - name: update-search-interface-configuration description: Update Search Interface Configuration hints: readOnly: false destructive: false idempotent: true call: search-interface-configuration.updateinterfaceconfig with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-search-interface-configuration description: Delete Search Interface Configuration hints: readOnly: false destructive: true idempotent: true call: search-interface-configuration.deleteinterfaceconfig outputParameters: - type: object mapping: $. - name: list-search-interface-accesses description: List Search Interface Accesses hints: readOnly: true destructive: false idempotent: true call: search-interface-configuration.getinterfaceaccess outputParameters: - type: object mapping: $. - name: update-search-interface-accesses description: Update Search Interface Accesses hints: readOnly: false destructive: false idempotent: true call: search-interface-configuration.updateinterfaceaccess with: body: tools.body outputParameters: - type: object mapping: $. - name: list-search-interface-user-accesses description: List Search Interface User Accesses hints: readOnly: true destructive: false idempotent: true call: search-interface-configuration.getinterfaceuseraccess outputParameters: - type: object mapping: $. - name: update-search-interface-user-accesses description: Update Search Interface User Accesses hints: readOnly: false destructive: false idempotent: true call: search-interface-configuration.updateinterfaceuseraccess with: body: tools.body outputParameters: - type: object mapping: $. - name: add-search-interface-user-accesses description: Add Search Interface User Accesses hints: readOnly: true destructive: false idempotent: false call: search-interface-configuration.addinterfaceuseraccess with: body: tools.body outputParameters: - type: object mapping: $.