Coveo · Capability

Coveo Platform API — Crawling Module

Coveo Platform API — Crawling Module. 10 operations. Lead operation: Gets the Crawling Module Version for an Upgrade Channel. Self-contained Naftiko capability covering one Coveo business surface.

Run with Naftiko CoveoPlatformCrawling Module

What You Can Do

GET
Getcrawlingmoduleupgradechannelversion — Gets the Crawling Module Version for an Upgrade Channel
/v1/crawlingmodule/upgradechannels/{upgradechannel}/version
PUT
Setcrawlingmoduleupgradechannelversion — Sets the Crawling Module Version for an Upgrade Channel
/v1/crawlingmodule/upgradechannels/{upgradechannel}/version/{version}
GET
Getcrawlingmodulesfororganization — List Crawling Modules
/v1/organizations/{organizationid}/crawlingmodule
POST
Getcrawlingmodulesbyidsfororganization — List Crawling Modules by Ids
/v1/organizations/{organizationid}/crawlingmodule
GET
Getcrawlingmoduledownloadurl — Get the Download URL Prefix for Crawling Module Binaries.
/v1/organizations/{organizationid}/crawlingmodule/download
GET
Getcrawlingmodulesbyprojectidfororganization — List Crawling Modules by Project ID
/v1/organizations/{organizationid}/crawlingmodule/projectid
GET
Getlatestmaestroversion — Gets the Latest Maestro Version
/v1/organizations/{organizationid}/crawlingmodule/versions/latest
PUT
Reportcrawlingmodule — Report Crawling Module Deployment
/v1/organizations/{organizationid}/crawlingmodule/{crawlingmoduleid}
DELETE
Removecrawlingmodule — Remove a Crawling Module Deployment
/v1/organizations/{organizationid}/crawlingmodule/{crawlingmoduleid}
GET
Getupdatestatus — Get the Update Status
/v1/organizations/{organizationid}/crawlingmodule/{crawlingmoduleid}/update

MCP Tools

gets-crawling-module-version-upgrade

Gets the Crawling Module Version for an Upgrade Channel

read-only idempotent
sets-crawling-module-version-upgrade

Sets the Crawling Module Version for an Upgrade Channel

idempotent
list-crawling-modules

List Crawling Modules

read-only idempotent
list-crawling-modules-ids

List Crawling Modules by Ids

read-only
get-download-url-prefix-crawling

Get the Download URL Prefix for Crawling Module Binaries.

read-only idempotent
list-crawling-modules-project-id

List Crawling Modules by Project ID

read-only idempotent
gets-latest-maestro-version

Gets the Latest Maestro Version

read-only idempotent
report-crawling-module-deployment

Report Crawling Module Deployment

idempotent
remove-crawling-module-deployment

Remove a Crawling Module Deployment

idempotent
get-update-status

Get the Update Status

read-only idempotent

Capability Spec

platform-crawling-module.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Coveo Platform API — Crawling Module
  description: 'Coveo Platform API — Crawling Module. 10 operations. Lead operation: Gets the Crawling Module Version for
    an Upgrade Channel. Self-contained Naftiko capability covering one Coveo business surface.'
  tags:
  - Coveo
  - Platform
  - Crawling Module
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    COVEO_API_KEY: COVEO_API_KEY
capability:
  consumes:
  - type: http
    namespace: platform-crawling-module
    baseUri: https://platform.cloud.coveo.com
    description: Coveo Platform API — Crawling Module business capability. Self-contained, no shared references.
    authentication:
      type: bearer
      token: '{{env.COVEO_API_KEY}}'
    resources:
    - name: rest-crawlingmodule-upgradechannels-upgradeChannel-version
      path: /rest/crawlingmodule/upgradechannels/{upgradeChannel}/version
      operations:
      - name: getcrawlingmoduleupgradechannelversion
        method: GET
        description: Gets the Crawling Module Version for an Upgrade Channel
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: upgradeChannel
          in: path
          type: string
          required: true
    - name: rest-crawlingmodule-upgradechannels-upgradeChannel-version-version
      path: /rest/crawlingmodule/upgradechannels/{upgradeChannel}/version/{version}
      operations:
      - name: setcrawlingmoduleupgradechannelversion
        method: PUT
        description: Sets the Crawling Module Version for an Upgrade Channel
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: upgradeChannel
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
    - name: rest-organizations-organizationId-crawlingmodule
      path: /rest/organizations/{organizationId}/crawlingmodule
      operations:
      - name: getcrawlingmodulesfororganization
        method: GET
        description: List Crawling Modules
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
      - name: getcrawlingmodulesbyidsfororganization
        method: POST
        description: List Crawling Modules by Ids
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-organizations-organizationId-crawlingmodule-download
      path: /rest/organizations/{organizationId}/crawlingmodule/download
      operations:
      - name: getcrawlingmoduledownloadurl
        method: GET
        description: Get the Download URL Prefix for Crawling Module Binaries.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
    - name: rest-organizations-organizationId-crawlingmodule-projectid
      path: /rest/organizations/{organizationId}/crawlingmodule/projectid
      operations:
      - name: getcrawlingmodulesbyprojectidfororganization
        method: GET
        description: List Crawling Modules by Project ID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
        - name: projectId
          in: query
          type: string
    - name: rest-organizations-organizationId-crawlingmodule-versions-latest
      path: /rest/organizations/{organizationId}/crawlingmodule/versions/latest
      operations:
      - name: getlatestmaestroversion
        method: GET
        description: Gets the Latest Maestro Version
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
    - name: rest-organizations-organizationId-crawlingmodule-crawlingModuleId
      path: /rest/organizations/{organizationId}/crawlingmodule/{crawlingModuleId}
      operations:
      - name: reportcrawlingmodule
        method: PUT
        description: Report Crawling Module Deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
        - name: crawlingModuleId
          in: path
          type: string
          description: The unique identifier of the target crawling module.</br>**Example:** mycoveocloudv2organization76kcam-1e7c13e2-afe7-4510-bd00-cd5fd8ba9b0d
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: removecrawlingmodule
        method: DELETE
        description: Remove a Crawling Module Deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
        - name: crawlingModuleId
          in: path
          type: string
          description: The unique identifier of the target crawling module.</br>**Example:** mycoveocloudv2organization76kcam-1e7c13e2-afe7-4510-bd00-cd5fd8ba9b0d
          required: true
    - name: rest-organizations-organizationId-crawlingmodule-crawlingModuleId-update
      path: /rest/organizations/{organizationId}/crawlingmodule/{crawlingModuleId}/update
      operations:
      - name: getupdatestatus
        method: GET
        description: Get the Update Status
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
        - name: crawlingModuleId
          in: path
          type: string
          description: The unique identifier of the target crawling module.</br>**Example:** mycoveocloudv2organization76kcam-1e7c13e2-afe7-4510-bd00-cd5fd8ba9b0d
          required: true
  exposes:
  - type: rest
    namespace: platform-crawling-module-rest
    port: 8080
    description: REST adapter for Coveo Platform API — Crawling Module. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/crawlingmodule/upgradechannels/{upgradechannel}/version
      name: rest-crawlingmodule-upgradechannels-upgradechannel-version
      description: REST surface for rest-crawlingmodule-upgradechannels-upgradeChannel-version.
      operations:
      - method: GET
        name: getcrawlingmoduleupgradechannelversion
        description: Gets the Crawling Module Version for an Upgrade Channel
        call: platform-crawling-module.getcrawlingmoduleupgradechannelversion
        with:
          upgradeChannel: rest.upgradeChannel
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/crawlingmodule/upgradechannels/{upgradechannel}/version/{version}
      name: rest-crawlingmodule-upgradechannels-upgradechannel-version-version
      description: REST surface for rest-crawlingmodule-upgradechannels-upgradeChannel-version-version.
      operations:
      - method: PUT
        name: setcrawlingmoduleupgradechannelversion
        description: Sets the Crawling Module Version for an Upgrade Channel
        call: platform-crawling-module.setcrawlingmoduleupgradechannelversion
        with:
          upgradeChannel: rest.upgradeChannel
          version: rest.version
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/crawlingmodule
      name: rest-organizations-organizationid-crawlingmodule
      description: REST surface for rest-organizations-organizationId-crawlingmodule.
      operations:
      - method: GET
        name: getcrawlingmodulesfororganization
        description: List Crawling Modules
        call: platform-crawling-module.getcrawlingmodulesfororganization
        with:
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: getcrawlingmodulesbyidsfororganization
        description: List Crawling Modules by Ids
        call: platform-crawling-module.getcrawlingmodulesbyidsfororganization
        with:
          organizationId: rest.organizationId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/crawlingmodule/download
      name: rest-organizations-organizationid-crawlingmodule-download
      description: REST surface for rest-organizations-organizationId-crawlingmodule-download.
      operations:
      - method: GET
        name: getcrawlingmoduledownloadurl
        description: Get the Download URL Prefix for Crawling Module Binaries.
        call: platform-crawling-module.getcrawlingmoduledownloadurl
        with:
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/crawlingmodule/projectid
      name: rest-organizations-organizationid-crawlingmodule-projectid
      description: REST surface for rest-organizations-organizationId-crawlingmodule-projectid.
      operations:
      - method: GET
        name: getcrawlingmodulesbyprojectidfororganization
        description: List Crawling Modules by Project ID
        call: platform-crawling-module.getcrawlingmodulesbyprojectidfororganization
        with:
          organizationId: rest.organizationId
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/crawlingmodule/versions/latest
      name: rest-organizations-organizationid-crawlingmodule-versions-latest
      description: REST surface for rest-organizations-organizationId-crawlingmodule-versions-latest.
      operations:
      - method: GET
        name: getlatestmaestroversion
        description: Gets the Latest Maestro Version
        call: platform-crawling-module.getlatestmaestroversion
        with:
          organizationId: rest.organizationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/crawlingmodule/{crawlingmoduleid}
      name: rest-organizations-organizationid-crawlingmodule-crawlingmoduleid
      description: REST surface for rest-organizations-organizationId-crawlingmodule-crawlingModuleId.
      operations:
      - method: PUT
        name: reportcrawlingmodule
        description: Report Crawling Module Deployment
        call: platform-crawling-module.reportcrawlingmodule
        with:
          organizationId: rest.organizationId
          crawlingModuleId: rest.crawlingModuleId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removecrawlingmodule
        description: Remove a Crawling Module Deployment
        call: platform-crawling-module.removecrawlingmodule
        with:
          organizationId: rest.organizationId
          crawlingModuleId: rest.crawlingModuleId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/crawlingmodule/{crawlingmoduleid}/update
      name: rest-organizations-organizationid-crawlingmodule-crawlingmoduleid-update
      description: REST surface for rest-organizations-organizationId-crawlingmodule-crawlingModuleId-update.
      operations:
      - method: GET
        name: getupdatestatus
        description: Get the Update Status
        call: platform-crawling-module.getupdatestatus
        with:
          organizationId: rest.organizationId
          crawlingModuleId: rest.crawlingModuleId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: platform-crawling-module-mcp
    port: 9090
    transport: http
    description: MCP adapter for Coveo Platform API — Crawling Module. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: gets-crawling-module-version-upgrade
      description: Gets the Crawling Module Version for an Upgrade Channel
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-crawling-module.getcrawlingmoduleupgradechannelversion
      with:
        upgradeChannel: tools.upgradeChannel
      outputParameters:
      - type: object
        mapping: $.
    - name: sets-crawling-module-version-upgrade
      description: Sets the Crawling Module Version for an Upgrade Channel
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-crawling-module.setcrawlingmoduleupgradechannelversion
      with:
        upgradeChannel: tools.upgradeChannel
        version: tools.version
      outputParameters:
      - type: object
        mapping: $.
    - name: list-crawling-modules
      description: List Crawling Modules
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-crawling-module.getcrawlingmodulesfororganization
      with:
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: list-crawling-modules-ids
      description: List Crawling Modules by Ids
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: platform-crawling-module.getcrawlingmodulesbyidsfororganization
      with:
        organizationId: tools.organizationId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-download-url-prefix-crawling
      description: Get the Download URL Prefix for Crawling Module Binaries.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-crawling-module.getcrawlingmoduledownloadurl
      with:
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: list-crawling-modules-project-id
      description: List Crawling Modules by Project ID
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-crawling-module.getcrawlingmodulesbyprojectidfororganization
      with:
        organizationId: tools.organizationId
        projectId: tools.projectId
      outputParameters:
      - type: object
        mapping: $.
    - name: gets-latest-maestro-version
      description: Gets the Latest Maestro Version
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-crawling-module.getlatestmaestroversion
      with:
        organizationId: tools.organizationId
      outputParameters:
      - type: object
        mapping: $.
    - name: report-crawling-module-deployment
      description: Report Crawling Module Deployment
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-crawling-module.reportcrawlingmodule
      with:
        organizationId: tools.organizationId
        crawlingModuleId: tools.crawlingModuleId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: remove-crawling-module-deployment
      description: Remove a Crawling Module Deployment
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: platform-crawling-module.removecrawlingmodule
      with:
        organizationId: tools.organizationId
        crawlingModuleId: tools.crawlingModuleId
      outputParameters:
      - type: object
        mapping: $.
    - name: get-update-status
      description: Get the Update Status
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-crawling-module.getupdatestatus
      with:
        organizationId: tools.organizationId
        crawlingModuleId: tools.crawlingModuleId
      outputParameters:
      - type: object
        mapping: $.