naftiko: 1.0.0-alpha2
info:
label: Coveo Source API — Metadata
description: 'Coveo Source API — Metadata. 3 operations. Lead operation: Retrieve Metadata Report for a Source. Self-contained
Naftiko capability covering one Coveo business surface.'
tags:
- Coveo
- Source
- Metadata
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
COVEO_API_KEY: COVEO_API_KEY
capability:
consumes:
- type: http
namespace: source-metadata
baseUri: https://platform.cloud.coveo.com
description: Coveo Source API — Metadata business capability. Self-contained, no shared references.
authentication:
type: bearer
token: '{{env.COVEO_API_KEY}}'
resources:
- name: rest-organizations-organizationId-sources-sourceId-metadata
path: /rest/organizations/{organizationId}/sources/{sourceId}/metadata
operations:
- name: getsourcemetadatareport
method: GET
description: Retrieve Metadata Report for a Source
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/).
**Example:**
`mycoveocloudv2organizationg8tp8wu3`
required: true
- name: sourceId
in: path
type: string
description: The unique identifier of the target [source](https://docs.coveo.com/en/246/).
**Example:** `mycoveocloudv2organizationg8tp8wu3-gravodalyysjsu34camnvxm2d2y`
required: true
- name: page
in: query
type: integer
- name: perPage
in: query
type: integer
- name: filter
in: query
type: string
description: Optional filter string. Must be at least 2 characters long to be applied.
- name: sortBy
in: query
type: string
- name: order
in: query
type: string
- name: createmetadatareport
method: POST
description: Create Metadata Report for a Source
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/).
**Example:**
`mycoveocloudv2organizationg8tp8wu3`
required: true
- name: sourceId
in: path
type: string
description: The unique identifier of the target [source](https://docs.coveo.com/en/246/).
**Example:** `mycoveocloudv2organizationg8tp8wu3-gravodalyysjsu34camnvxm2d2y`
required: true
- name: rest-organizations-organizationId-sources-sourceId-metadata-status
path: /rest/organizations/{organizationId}/sources/{sourceId}/metadata/status
operations:
- name: getsourcemetadatastatus
method: GET
description: Get the Status of Metadata Reports for a Source
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/).
**Example:**
`mycoveocloudv2organizationg8tp8wu3`
required: true
- name: sourceId
in: path
type: string
description: The unique identifier of the target [source](https://docs.coveo.com/en/246/).
**Example:** `mycoveocloudv2organizationg8tp8wu3-gravodalyysjsu34camnvxm2d2y`
required: true
exposes:
- type: rest
namespace: source-metadata-rest
port: 8080
description: REST adapter for Coveo Source API — Metadata. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/organizations/{organizationid}/sources/{sourceid}/metadata
name: rest-organizations-organizationid-sources-sourceid-metadata
description: REST surface for rest-organizations-organizationId-sources-sourceId-metadata.
operations:
- method: GET
name: getsourcemetadatareport
description: Retrieve Metadata Report for a Source
call: source-metadata.getsourcemetadatareport
with:
organizationId: rest.organizationId
sourceId: rest.sourceId
page: rest.page
perPage: rest.perPage
filter: rest.filter
sortBy: rest.sortBy
order: rest.order
outputParameters:
- type: object
mapping: $.
- method: POST
name: createmetadatareport
description: Create Metadata Report for a Source
call: source-metadata.createmetadatareport
with:
organizationId: rest.organizationId
sourceId: rest.sourceId
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{organizationid}/sources/{sourceid}/metadata/status
name: rest-organizations-organizationid-sources-sourceid-metadata-status
description: REST surface for rest-organizations-organizationId-sources-sourceId-metadata-status.
operations:
- method: GET
name: getsourcemetadatastatus
description: Get the Status of Metadata Reports for a Source
call: source-metadata.getsourcemetadatastatus
with:
organizationId: rest.organizationId
sourceId: rest.sourceId
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: source-metadata-mcp
port: 9090
transport: http
description: MCP adapter for Coveo Source API — Metadata. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: retrieve-metadata-report-source
description: Retrieve Metadata Report for a Source
hints:
readOnly: true
destructive: false
idempotent: true
call: source-metadata.getsourcemetadatareport
with:
organizationId: tools.organizationId
sourceId: tools.sourceId
page: tools.page
perPage: tools.perPage
filter: tools.filter
sortBy: tools.sortBy
order: tools.order
outputParameters:
- type: object
mapping: $.
- name: create-metadata-report-source
description: Create Metadata Report for a Source
hints:
readOnly: false
destructive: false
idempotent: false
call: source-metadata.createmetadatareport
with:
organizationId: tools.organizationId
sourceId: tools.sourceId
outputParameters:
- type: object
mapping: $.
- name: get-status-metadata-reports-source
description: Get the Status of Metadata Reports for a Source
hints:
readOnly: true
destructive: false
idempotent: true
call: source-metadata.getsourcemetadatastatus
with:
organizationId: tools.organizationId
sourceId: tools.sourceId
outputParameters:
- type: object
mapping: $.