naftiko: 1.0.0-alpha2 info: label: Telnyx API — Embeddings description: 'Telnyx API — Embeddings. 8 operations. Lead operation: Get Tasks by Status. Self-contained Naftiko capability covering one Telnyx business surface.' tags: - Telnyx - Embeddings created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TELNYX_API_KEY: TELNYX_API_KEY capability: consumes: - type: http namespace: telnyx-embeddings baseUri: https://api.telnyx.com/v2 description: Telnyx API — Embeddings business capability. Self-contained, no shared references. resources: - name: ai-embeddings path: /ai/embeddings operations: - name: gettasksbystatus method: GET description: Get Tasks by Status outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: status in: query type: array description: List of task statuses i.e. `status=queued&status=processing` - name: postembedding method: POST description: Embed documents outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: ai-embeddings-buckets path: /ai/embeddings/buckets operations: - name: getembeddingbuckets method: GET description: List embedded buckets outputRawFormat: json outputParameters: - name: result type: object value: $. - name: ai-embeddings-buckets-bucket_name path: /ai/embeddings/buckets/{bucket_name} operations: - name: embeddingbucketfilespublicembeddingbucketsbucketnamedelete method: DELETE description: Disable AI for an Embedded Bucket outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: bucket_name in: path type: string required: true - name: getbucketname method: GET description: Get file-level embedding statuses for a bucket outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: bucket_name in: path type: string required: true - name: ai-embeddings-similarity-search path: /ai/embeddings/similarity-search operations: - name: postembeddingsimilaritysearch method: POST description: Search for documents outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: ai-embeddings-url path: /ai/embeddings/url operations: - name: postembeddingurl method: POST description: Embed URL content outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: ai-embeddings-task_id path: /ai/embeddings/{task_id} operations: - name: getembeddingtask method: GET description: Get an embedding task's status outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: task_id in: path type: string required: true authentication: type: bearer token: '{{env.TELNYX_API_KEY}}' exposes: - type: rest namespace: telnyx-embeddings-rest port: 8080 description: REST adapter for Telnyx API — Embeddings. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/ai/embeddings name: ai-embeddings description: REST surface for ai-embeddings. operations: - method: GET name: gettasksbystatus description: Get Tasks by Status call: telnyx-embeddings.gettasksbystatus with: status: rest.status outputParameters: - type: object mapping: $. - method: POST name: postembedding description: Embed documents call: telnyx-embeddings.postembedding with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/embeddings/buckets name: ai-embeddings-buckets description: REST surface for ai-embeddings-buckets. operations: - method: GET name: getembeddingbuckets description: List embedded buckets call: telnyx-embeddings.getembeddingbuckets outputParameters: - type: object mapping: $. - path: /v1/ai/embeddings/buckets/{bucket-name} name: ai-embeddings-buckets-bucket-name description: REST surface for ai-embeddings-buckets-bucket_name. operations: - method: DELETE name: embeddingbucketfilespublicembeddingbucketsbucketnamedelete description: Disable AI for an Embedded Bucket call: telnyx-embeddings.embeddingbucketfilespublicembeddingbucketsbucketnamedelete with: bucket_name: rest.bucket_name outputParameters: - type: object mapping: $. - method: GET name: getbucketname description: Get file-level embedding statuses for a bucket call: telnyx-embeddings.getbucketname with: bucket_name: rest.bucket_name outputParameters: - type: object mapping: $. - path: /v1/ai/embeddings/similarity-search name: ai-embeddings-similarity-search description: REST surface for ai-embeddings-similarity-search. operations: - method: POST name: postembeddingsimilaritysearch description: Search for documents call: telnyx-embeddings.postembeddingsimilaritysearch with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/embeddings/url name: ai-embeddings-url description: REST surface for ai-embeddings-url. operations: - method: POST name: postembeddingurl description: Embed URL content call: telnyx-embeddings.postembeddingurl with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/embeddings/{task-id} name: ai-embeddings-task-id description: REST surface for ai-embeddings-task_id. operations: - method: GET name: getembeddingtask description: Get an embedding task's status call: telnyx-embeddings.getembeddingtask with: task_id: rest.task_id outputParameters: - type: object mapping: $. - type: mcp namespace: telnyx-embeddings-mcp port: 9090 transport: http description: MCP adapter for Telnyx API — Embeddings. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-tasks-status description: Get Tasks by Status hints: readOnly: true destructive: false idempotent: true call: telnyx-embeddings.gettasksbystatus with: status: tools.status outputParameters: - type: object mapping: $. - name: embed-documents description: Embed documents hints: readOnly: false destructive: false idempotent: false call: telnyx-embeddings.postembedding with: body: tools.body outputParameters: - type: object mapping: $. - name: list-embedded-buckets description: List embedded buckets hints: readOnly: true destructive: false idempotent: true call: telnyx-embeddings.getembeddingbuckets outputParameters: - type: object mapping: $. - name: disable-ai-embedded-bucket description: Disable AI for an Embedded Bucket hints: readOnly: false destructive: true idempotent: true call: telnyx-embeddings.embeddingbucketfilespublicembeddingbucketsbucketnamedelete with: bucket_name: tools.bucket_name outputParameters: - type: object mapping: $. - name: get-file-level-embedding-statuses description: Get file-level embedding statuses for a bucket hints: readOnly: true destructive: false idempotent: true call: telnyx-embeddings.getbucketname with: bucket_name: tools.bucket_name outputParameters: - type: object mapping: $. - name: search-documents description: Search for documents hints: readOnly: true destructive: false idempotent: false call: telnyx-embeddings.postembeddingsimilaritysearch with: body: tools.body outputParameters: - type: object mapping: $. - name: embed-url-content description: Embed URL content hints: readOnly: false destructive: false idempotent: false call: telnyx-embeddings.postembeddingurl with: body: tools.body outputParameters: - type: object mapping: $. - name: get-embedding-task-s-status description: Get an embedding task's status hints: readOnly: true destructive: false idempotent: true call: telnyx-embeddings.getembeddingtask with: task_id: tools.task_id outputParameters: - type: object mapping: $.