naftiko: 1.0.0-alpha2 info: label: Pipedrive API v1 — Channels description: 'Pipedrive API v1 — Channels. 4 operations. Lead operation: Add a channel. Self-contained Naftiko capability covering one Pipedrive business surface.' tags: - Pipedrive - Channels created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: PIPEDRIVE_API_KEY: PIPEDRIVE_API_KEY capability: consumes: - type: http namespace: v1-channels baseUri: https://api.pipedrive.com/v1 description: Pipedrive API v1 — Channels business capability. Self-contained, no shared references. resources: - name: channels path: /channels operations: - name: addchannel method: POST description: Add a channel outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: channels-messages-receive path: /channels/messages/receive operations: - name: receivemessage method: POST description: Receives an incoming message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: channels-channel-id-conversations-conversation-id path: /channels/{channel-id}/conversations/{conversation-id} operations: - name: deleteconversation method: DELETE description: Delete a conversation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel-id in: path type: string description: The ID of the channel provided by the integration required: true - name: conversation-id in: path type: string description: The ID of the conversation provided by the integration required: true - name: channels-id path: /channels/{id} operations: - name: deletechannel method: DELETE description: Delete a channel outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID of the channel provided by the integration required: true authentication: type: bearer token: '{{env.PIPEDRIVE_API_KEY}}' exposes: - type: rest namespace: v1-channels-rest port: 8080 description: REST adapter for Pipedrive API v1 — Channels. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/channels name: channels description: REST surface for channels. operations: - method: POST name: addchannel description: Add a channel call: v1-channels.addchannel with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/messages/receive name: channels-messages-receive description: REST surface for channels-messages-receive. operations: - method: POST name: receivemessage description: Receives an incoming message call: v1-channels.receivemessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/conversations/{conversation-id} name: channels-channel-id-conversations-conversation-id description: REST surface for channels-channel-id-conversations-conversation-id. operations: - method: DELETE name: deleteconversation description: Delete a conversation call: v1-channels.deleteconversation with: channel-id: rest.channel-id conversation-id: rest.conversation-id outputParameters: - type: object mapping: $. - path: /v1/channels/{id} name: channels-id description: REST surface for channels-id. operations: - method: DELETE name: deletechannel description: Delete a channel call: v1-channels.deletechannel with: id: rest.id outputParameters: - type: object mapping: $. - type: mcp namespace: v1-channels-mcp port: 9090 transport: http description: MCP adapter for Pipedrive API v1 — Channels. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: add-channel description: Add a channel hints: readOnly: false destructive: false idempotent: false call: v1-channels.addchannel with: body: tools.body outputParameters: - type: object mapping: $. - name: receives-incoming-message description: Receives an incoming message hints: readOnly: false destructive: false idempotent: false call: v1-channels.receivemessage with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-conversation description: Delete a conversation hints: readOnly: false destructive: true idempotent: true call: v1-channels.deleteconversation with: channel-id: tools.channel-id conversation-id: tools.conversation-id outputParameters: - type: object mapping: $. - name: delete-channel description: Delete a channel hints: readOnly: false destructive: true idempotent: true call: v1-channels.deletechannel with: id: tools.id outputParameters: - type: object mapping: $.