Coveo · Capability

Coveo Schema Service API — Sources

Coveo Schema Service API — Sources. 8 operations. Lead operation: Validates a Slack OAuth Token. Self-contained Naftiko capability covering one Coveo business surface.

Run with Naftiko CoveoSchema ServiceSources

What You Can Do

POST
Validateslacktoken — Validates a Slack OAuth Token
/v1/organizations/{organizationid}/schema/sources/slack/validatetoken
GET
Getdefaultobjectstoget — Retrieves the Default Objects for a Source of Type Specified.
/v1/organizations/{organizationid}/schema/sources/{sourcetype}/defaultobjectstoget
GET
Getschemaentities — Retrieves the List of Entities Present in a Source, in Alphabetical Order of Display Names.
/v1/organizations/{organizationid}/schema/sources/{sourcetype}/entities
GET
Getschemaentity — Retrieves the Entity Specified with Its Fields.
/v1/organizations/{organizationid}/schema/sources/{sourcetype}/entities/{entityid}
GET
Getschemaentityfields — Retrieves the Specified Entity, with Its Fields in Alphabetical Order of Display Names.
/v1/organizations/{organizationid}/schema/sources/{sourcetype}/entities/{entityid}/fields
POST
Translatetogeneric — Computes the Generic Objects to Get from a Specific Objects to Get.
/v1/organizations/{organizationid}/schema/sources/{sourcetype}/translate/generic
POST
Translatetospecific — Computes the Specific Objects to Get from a Generic Objects to Get.
/v1/organizations/{organizationid}/schema/sources/{sourcetype}/translate/specific
POST
Translatetospecificwithmappings — Computes the Specific Objects to Get from a Generic Objects to Get with a List of Mapping Description
/v1/organizations/{organizationid}/schema/sources/{sourcetype}/translate/specificwithmappings

MCP Tools

validates-slack-oauth-token

Validates a Slack OAuth Token

read-only
retrieves-default-objects-source-type

Retrieves the Default Objects for a Source of Type Specified.

read-only idempotent
retrieves-list-entities-present-source

Retrieves the List of Entities Present in a Source, in Alphabetical Order of Display Names.

read-only idempotent
retrieves-entity-specified-its-fields

Retrieves the Entity Specified with Its Fields.

read-only idempotent
retrieves-specified-entity-its-fields

Retrieves the Specified Entity, with Its Fields in Alphabetical Order of Display Names.

read-only idempotent
computes-generic-objects-get-specific

Computes the Generic Objects to Get from a Specific Objects to Get.

read-only
computes-specific-objects-get-generic

Computes the Specific Objects to Get from a Generic Objects to Get.

read-only
computes-specific-objects-get-generic-2

Computes the Specific Objects to Get from a Generic Objects to Get with a List of Mapping Description

read-only

Capability Spec

schema-service-sources.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Coveo Schema Service API — Sources
  description: 'Coveo Schema Service API — Sources. 8 operations. Lead operation: Validates a Slack OAuth Token. Self-contained
    Naftiko capability covering one Coveo business surface.'
  tags:
  - Coveo
  - Schema Service
  - Sources
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    COVEO_API_KEY: COVEO_API_KEY
capability:
  consumes:
  - type: http
    namespace: schema-service-sources
    baseUri: https://platform.cloud.coveo.com
    description: Coveo Schema Service API — Sources business capability. Self-contained, no shared references.
    authentication:
      type: bearer
      token: '{{env.COVEO_API_KEY}}'
    resources:
    - name: rest-organizations-organizationId-schema-sources-SLACK-validateToken
      path: /rest/organizations/{organizationId}/schema/sources/SLACK/validateToken
      operations:
      - name: validateslacktoken
        method: POST
        description: Validates a Slack OAuth Token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accessTokenGuid
          in: query
          type: string
          description: The OAuth token Guid linked with the token to validate.
        - name: accessToken
          in: query
          type: string
          description: The OAuth token to validate.
        - name: organizationId
          in: path
          type: string
          description: The organization ID
          required: true
    - name: rest-organizations-organizationId-schema-sources-sourceType-defaultObjectsToGet
      path: /rest/organizations/{organizationId}/schema/sources/{sourceType}/defaultObjectsToGet
      operations:
      - name: getdefaultobjectstoget
        method: GET
        description: Retrieves the Default Objects for a Source of Type Specified.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sourceType
          in: path
          type: string
          description: The type of the source
          required: true
        - name: organizationId
          in: path
          type: string
          description: The organization ID
          required: true
    - name: rest-organizations-organizationId-schema-sources-sourceType-entities
      path: /rest/organizations/{organizationId}/schema/sources/{sourceType}/entities
      operations:
      - name: getschemaentities
        method: GET
        description: Retrieves the List of Entities Present in a Source, in Alphabetical Order of Display Names.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accessTokenGuid
          in: query
          type: string
          description: The source's access token Guid (if authentified through access token)
        - name: entityIds
          in: query
          type: string
          description: IDs of the entities to retrieve (comma-separated list)
        - name: limit
          in: query
          type: string
          description: The number of entities to retrieve
        - name: offset
          in: query
          type: string
          description: Starting index of the first entity to retrieve
        - name: query
          in: query
          type: string
          description: A query used to match specific entities
        - name: username
          in: query
          type: string
          description: The source's username (if authentified through OAuth).
        - name: passwordGuid
          in: query
          type: string
          description: The source's password Guid (if authentified through Basic Auth)
        - name: clientId
          in: query
          type: string
          description: The source's client id(if authentified through OAuth).
        - name: clientSecretGuid
          in: query
          type: string
          description: The source's client secret Guid (if authentified through OAuth).
        - name: oauthRefreshTokenGuid
          in: query
          type: string
          description: The source's refresh token Guid (if authentified through OAuth).
        - name: instanceUrl
          in: query
          type: string
          description: The source's instance Url.
          required: true
        - name: sourceType
          in: path
          type: string
          description: The type of the source
          required: true
        - name: organizationId
          in: path
          type: string
          description: The organization ID
          required: true
    - name: rest-organizations-organizationId-schema-sources-sourceType-entities-entityId
      path: /rest/organizations/{organizationId}/schema/sources/{sourceType}/entities/{entityId}
      operations:
      - name: getschemaentity
        method: GET
        description: Retrieves the Entity Specified with Its Fields.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: filter
          in: query
          type: string
          description: The record count filter
        - name: username
          in: query
          type: string
          description: The source's username (if authentified through OAuth).
        - name: passwordGuid
          in: query
          type: string
          description: The source's password Guid (if authentified through Basic Auth)
        - name: clientId
          in: query
          type: string
          description: The source's client id(if authentified through OAuth).
        - name: clientSecretGuid
          in: query
          type: string
          description: The source's client secret Guid (if authentified through OAuth).
        - name: oauthRefreshTokenGuid
          in: query
          type: string
          description: The source's refresh token Guid (if authentified through OAuth).
        - name: instanceUrl
          in: query
          type: string
          description: The source's instance Url.
          required: true
        - name: entityId
          in: path
          type: string
          description: The id of the entity
          required: true
        - name: sourceType
          in: path
          type: string
          description: The type of the source
          required: true
        - name: organizationId
          in: path
          type: string
          description: The organization ID
          required: true
    - name: rest-organizations-organizationId-schema-sources-sourceType-entities-entityId-fi
      path: /rest/organizations/{organizationId}/schema/sources/{sourceType}/entities/{entityId}/fields
      operations:
      - name: getschemaentityfields
        method: GET
        description: Retrieves the Specified Entity, with Its Fields in Alphabetical Order of Display Names.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: username
          in: query
          type: string
          description: The source's username (if authentified through OAuth).
        - name: passwordGuid
          in: query
          type: string
          description: The source's password Guid (if authentified through Basic Auth)
        - name: clientId
          in: query
          type: string
          description: The source's client id(if authentified through OAuth).
        - name: clientSecretGuid
          in: query
          type: string
          description: The source's client secret Guid (if authentified through OAuth).
        - name: oauthRefreshTokenGuid
          in: query
          type: string
          description: The source's refresh token Guid (if authentified through OAuth).
        - name: instanceUrl
          in: query
          type: string
          description: The source's instance Url.
          required: true
        - name: entityId
          in: path
          type: string
          description: The name of the entity
          required: true
        - name: sourceType
          in: path
          type: string
          description: The type of the source
          required: true
        - name: organizationId
          in: path
          type: string
          description: The organization ID
          required: true
    - name: rest-organizations-organizationId-schema-sources-sourceType-translate-generic
      path: /rest/organizations/{organizationId}/schema/sources/{sourceType}/translate/generic
      operations:
      - name: translatetogeneric
        method: POST
        description: Computes the Generic Objects to Get from a Specific Objects to Get.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: specificOTG
          in: body
          type: string
          description: Specific objects to get
          required: true
        - name: sourceType
          in: path
          type: string
          description: The type of the source
          required: true
        - name: organizationId
          in: path
          type: string
          description: The organization ID
          required: true
    - name: rest-organizations-organizationId-schema-sources-sourceType-translate-specific
      path: /rest/organizations/{organizationId}/schema/sources/{sourceType}/translate/specific
      operations:
      - name: translatetospecific
        method: POST
        description: Computes the Specific Objects to Get from a Generic Objects to Get.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: genericOTG
          in: body
          type: string
          description: Generic objects to get
          required: true
        - name: sourceType
          in: path
          type: string
          description: The type of the source
          required: true
        - name: organizationId
          in: path
          type: string
          description: The organization ID
          required: true
    - name: rest-organizations-organizationId-schema-sources-sourceType-translate-specificWi
      path: /rest/organizations/{organizationId}/schema/sources/{sourceType}/translate/specificWithMappings
      operations:
      - name: translatetospecificwithmappings
        method: POST
        description: Computes the Specific Objects to Get from a Generic Objects to Get with a List of Mapping Description
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accessTokenGuid
          in: query
          type: string
          description: The source's access token Guid (if authentified through access token)
        - name: username
          in: query
          type: string
          description: The source's username (if authentified through OAuth).
        - name: passwordGuid
          in: query
          type: string
          description: The source's password Guid (if authentified through Basic Auth)
        - name: clientId
          in: query
          type: string
          description: The source's client id(if authentified through OAuth).
        - name: clientSecretGuid
          in: query
          type: string
          description: The source's client secret Guid (if authentified through OAuth).
        - name: oauthRefreshTokenGuid
          in: query
          type: string
          description: The source's refresh token Guid (if authentified through OAuth).
        - name: instanceUrl
          in: query
          type: string
          description: The source's instance Url.
          required: true
        - name: sourceType
          in: path
          type: string
          description: The type of the source
          required: true
        - name: organizationId
          in: path
          type: string
          description: The organization ID
          required: true
  exposes:
  - type: rest
    namespace: schema-service-sources-rest
    port: 8080
    description: REST adapter for Coveo Schema Service API — Sources. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/organizations/{organizationid}/schema/sources/slack/validatetoken
      name: rest-organizations-organizationid-schema-sources-slack-validatetoken
      description: REST surface for rest-organizations-organizationId-schema-sources-SLACK-validateToken.
      operations:
      - method: POST
        name: validateslacktoken
        description: Validates a Slack OAuth Token
        call: schema-service-sources.validateslacktoken
        with:
          accessTokenGuid: rest.accessTokenGuid
          accessToken: rest.accessToken
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/schema/sources/{sourcetype}/defaultobjectstoget
      name: rest-organizations-organizationid-schema-sources-sourcetype-defaultobjectstoget
      description: REST surface for rest-organizations-organizationId-schema-sources-sourceType-defaultObjectsToGet.
      operations:
      - method: GET
        name: getdefaultobjectstoget
        description: Retrieves the Default Objects for a Source of Type Specified.
        call: schema-service-sources.getdefaultobjectstoget
        with:
          sourceType: rest.sourceType
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/schema/sources/{sourcetype}/entities
      name: rest-organizations-organizationid-schema-sources-sourcetype-entities
      description: REST surface for rest-organizations-organizationId-schema-sources-sourceType-entities.
      operations:
      - method: GET
        name: getschemaentities
        description: Retrieves the List of Entities Present in a Source, in Alphabetical Order of Display Names.
        call: schema-service-sources.getschemaentities
        with:
          accessTokenGuid: rest.accessTokenGuid
          entityIds: rest.entityIds
          limit: rest.limit
          offset: rest.offset
          query: rest.query
          username: rest.username
          passwordGuid: rest.passwordGuid
          clientId: rest.clientId
          clientSecretGuid: rest.clientSecretGuid
          oauthRefreshTokenGuid: rest.oauthRefreshTokenGuid
          instanceUrl: rest.instanceUrl
          sourceType: rest.sourceType
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/schema/sources/{sourcetype}/entities/{entityid}
      name: rest-organizations-organizationid-schema-sources-sourcetype-entities-entityid
      description: REST surface for rest-organizations-organizationId-schema-sources-sourceType-entities-entityId.
      operations:
      - method: GET
        name: getschemaentity
        description: Retrieves the Entity Specified with Its Fields.
        call: schema-service-sources.getschemaentity
        with:
          filter: rest.filter
          username: rest.username
          passwordGuid: rest.passwordGuid
          clientId: rest.clientId
          clientSecretGuid: rest.clientSecretGuid
          oauthRefreshTokenGuid: rest.oauthRefreshTokenGuid
          instanceUrl: rest.instanceUrl
          entityId: rest.entityId
          sourceType: rest.sourceType
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/schema/sources/{sourcetype}/entities/{entityid}/fields
      name: rest-organizations-organizationid-schema-sources-sourcetype-entities-entityid-fi
      description: REST surface for rest-organizations-organizationId-schema-sources-sourceType-entities-entityId-fi.
      operations:
      - method: GET
        name: getschemaentityfields
        description: Retrieves the Specified Entity, with Its Fields in Alphabetical Order of Display Names.
        call: schema-service-sources.getschemaentityfields
        with:
          username: rest.username
          passwordGuid: rest.passwordGuid
          clientId: rest.clientId
          clientSecretGuid: rest.clientSecretGuid
          oauthRefreshTokenGuid: rest.oauthRefreshTokenGuid
          instanceUrl: rest.instanceUrl
          entityId: rest.entityId
          sourceType: rest.sourceType
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/schema/sources/{sourcetype}/translate/generic
      name: rest-organizations-organizationid-schema-sources-sourcetype-translate-generic
      description: REST surface for rest-organizations-organizationId-schema-sources-sourceType-translate-generic.
      operations:
      - method: POST
        name: translatetogeneric
        description: Computes the Generic Objects to Get from a Specific Objects to Get.
        call: schema-service-sources.translatetogeneric
        with:
          specificOTG: rest.specificOTG
          sourceType: rest.sourceType
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/schema/sources/{sourcetype}/translate/specific
      name: rest-organizations-organizationid-schema-sources-sourcetype-translate-specific
      description: REST surface for rest-organizations-organizationId-schema-sources-sourceType-translate-specific.
      operations:
      - method: POST
        name: translatetospecific
        description: Computes the Specific Objects to Get from a Generic Objects to Get.
        call: schema-service-sources.translatetospecific
        with:
          genericOTG: rest.genericOTG
          sourceType: rest.sourceType
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/schema/sources/{sourcetype}/translate/specificwithmappings
      name: rest-organizations-organizationid-schema-sources-sourcetype-translate-specificwi
      description: REST surface for rest-organizations-organizationId-schema-sources-sourceType-translate-specificWi.
      operations:
      - method: POST
        name: translatetospecificwithmappings
        description: Computes the Specific Objects to Get from a Generic Objects to Get with a List of Mapping Description
        call: schema-service-sources.translatetospecificwithmappings
        with:
          accessTokenGuid: rest.accessTokenGuid
          username: rest.username
          passwordGuid: rest.passwordGuid
          clientId: rest.clientId
          clientSecretGuid: rest.clientSecretGuid
          oauthRefreshTokenGuid: rest.oauthRefreshTokenGuid
          instanceUrl: rest.instanceUrl
          sourceType: rest.sourceType
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: schema-service-sources-mcp
    port: 9090
    transport: http
    description: MCP adapter for Coveo Schema Service API — Sources. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: validates-slack-oauth-token
      description: Validates a Slack OAuth Token
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: schema-service-sources.validateslacktoken
      with:
        accessTokenGuid: tools.accessTokenGuid
        accessToken: tools.accessToken
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieves-default-objects-source-type
      description: Retrieves the Default Objects for a Source of Type Specified.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: schema-service-sources.getdefaultobjectstoget
      with:
        sourceType: tools.sourceType
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieves-list-entities-present-source
      description: Retrieves the List of Entities Present in a Source, in Alphabetical Order of Display Names.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: schema-service-sources.getschemaentities
      with:
        accessTokenGuid: tools.accessTokenGuid
        entityIds: tools.entityIds
        limit: tools.limit
        offset: tools.offset
        query: tools.query
        username: tools.username
        passwordGuid: tools.passwordGuid
        clientId: tools.clientId
        clientSecretGuid: tools.clientSecretGuid
        oauthRefreshTokenGuid: tools.oauthRefreshTokenGuid
        instanceUrl: tools.instanceUrl
        sourceType: tools.sourceType
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieves-entity-specified-its-fields
      description: Retrieves the Entity Specified with Its Fields.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: schema-service-sources.getschemaentity
      with:
        filter: tools.filter
        username: tools.username
        passwordGuid: tools.passwordGuid
        clientId: tools.clientId
        clientSecretGuid: tools.clientSecretGuid
        oauthRefreshTokenGuid: tools.oauthRefreshTokenGuid
        instanceUrl: tools.instanceUrl
        entityId: tools.entityId
        sourceType: tools.sourceType
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieves-specified-entity-its-fields
      description: Retrieves the Specified Entity, with Its Fields in Alphabetical Order of Display Names.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: schema-service-sources.getschemaentityfields
      with:
        username: tools.username
        passwordGuid: tools.passwordGuid
        clientId: tools.clientId
        clientSecretGuid: tools.clientSecretGuid
        oauthRefreshTokenGuid: tools.oauthRefreshTokenGuid
        instanceUrl: tools.instanceUrl
        entityId: tools.entityId
        sourceType: tools.sourceType
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: computes-generic-objects-get-specific
      description: Computes the Generic Objects to Get from a Specific Objects to Get.
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: schema-service-sources.translatetogeneric
      with:
        specificOTG: tools.specificOTG
        sourceType: tools.sourceType
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: computes-specific-objects-get-generic
      description: Computes the Specific Objects to Get from a Generic Objects to Get.
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: schema-service-sources.translatetospecific
      with:
        genericOTG: tools.genericOTG
        sourceType: tools.sourceType
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: computes-specific-objects-get-generic-2
      description: Computes the Specific Objects to Get from a Generic Objects to Get with a List of Mapping Description
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: schema-service-sources.translatetospecificwithmappings
      with:
        accessTokenGuid: tools.accessTokenGuid
        username: tools.username
        passwordGuid: tools.passwordGuid
        clientId: tools.clientId
        clientSecretGuid: tools.clientSecretGuid
        oauthRefreshTokenGuid: tools.oauthRefreshTokenGuid
        instanceUrl: tools.instanceUrl
        sourceType: tools.sourceType
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.