naftiko: 1.0.0-alpha2 info: label: Zuplo Developer API — API Keys - Consumers description: 'Zuplo Developer API — API Keys - Consumers. 6 operations. Lead operation: Lists Consumers. Self-contained Naftiko capability covering one Zuplo business surface.' tags: - Zuplo - API Keys - Consumers created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ZUPLO_API_KEY: ZUPLO_API_KEY capability: consumes: - type: http namespace: zuplo-api-keys-consumers baseUri: https://dev.zuplo.com description: Zuplo Developer API — API Keys - Consumers business capability. Self-contained, no shared references. resources: - name: v1-accounts-accountName-key-buckets-bucketName-consumers path: /v1/accounts/{accountName}/key-buckets/{bucketName}/consumers operations: - name: apikeyconsumersservicelist method: GET description: Lists Consumers outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: 'The maximum number of entries to return. If the value exceeds the maximum, then the maximum value will be used. Default: 1000' required: true - name: offset in: query type: integer description: 'The offset of the first item returned in the collection. Default: 0' required: true - name: apikeyconsumersservicecreate method: POST description: Creates a Consumer outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-accounts-accountName-key-buckets-bucketName-consumers-consumerName path: /v1/accounts/{accountName}/key-buckets/{bucketName}/consumers/{consumerName} operations: - name: apikeyconsumersserviceread method: GET description: Gets a Consumer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: apikeyconsumersserviceupdate method: PATCH description: Updates a Consumer outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: apikeyconsumersservicedelete method: DELETE description: Deletes a Consumer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-accounts-accountName-key-buckets-bucketName-consumers-consumerName-roll-key path: /v1/accounts/{accountName}/key-buckets/{bucketName}/consumers/{consumerName}/roll-key operations: - name: apikeyconsumersservicerollkey method: POST description: Roll Consumer Keys outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: apikey key: Authorization value: '{{env.ZUPLO_API_KEY}}' placement: header exposes: - type: rest namespace: zuplo-api-keys-consumers-rest port: 8080 description: REST adapter for Zuplo Developer API — API Keys - Consumers. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/accounts/{accountname}/key-buckets/{bucketname}/consumers name: v1-accounts-accountname-key-buckets-bucketname-consumers description: REST surface for v1-accounts-accountName-key-buckets-bucketName-consumers. operations: - method: GET name: apikeyconsumersservicelist description: Lists Consumers call: zuplo-api-keys-consumers.apikeyconsumersservicelist with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - method: POST name: apikeyconsumersservicecreate description: Creates a Consumer call: zuplo-api-keys-consumers.apikeyconsumersservicecreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/accounts/{accountname}/key-buckets/{bucketname}/consumers/{consumername} name: v1-accounts-accountname-key-buckets-bucketname-consumers-consumername description: REST surface for v1-accounts-accountName-key-buckets-bucketName-consumers-consumerName. operations: - method: GET name: apikeyconsumersserviceread description: Gets a Consumer call: zuplo-api-keys-consumers.apikeyconsumersserviceread outputParameters: - type: object mapping: $. - method: PATCH name: apikeyconsumersserviceupdate description: Updates a Consumer call: zuplo-api-keys-consumers.apikeyconsumersserviceupdate with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: apikeyconsumersservicedelete description: Deletes a Consumer call: zuplo-api-keys-consumers.apikeyconsumersservicedelete outputParameters: - type: object mapping: $. - path: /v1/v1/accounts/{accountname}/key-buckets/{bucketname}/consumers/{consumername}/roll-key name: v1-accounts-accountname-key-buckets-bucketname-consumers-consumername-roll-key description: REST surface for v1-accounts-accountName-key-buckets-bucketName-consumers-consumerName-roll-key. operations: - method: POST name: apikeyconsumersservicerollkey description: Roll Consumer Keys call: zuplo-api-keys-consumers.apikeyconsumersservicerollkey with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: zuplo-api-keys-consumers-mcp port: 9090 transport: http description: MCP adapter for Zuplo Developer API — API Keys - Consumers. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: lists-consumers description: Lists Consumers hints: readOnly: true destructive: false idempotent: true call: zuplo-api-keys-consumers.apikeyconsumersservicelist with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: creates-consumer description: Creates a Consumer hints: readOnly: false destructive: false idempotent: false call: zuplo-api-keys-consumers.apikeyconsumersservicecreate with: body: tools.body outputParameters: - type: object mapping: $. - name: gets-consumer description: Gets a Consumer hints: readOnly: true destructive: false idempotent: true call: zuplo-api-keys-consumers.apikeyconsumersserviceread outputParameters: - type: object mapping: $. - name: updates-consumer description: Updates a Consumer hints: readOnly: false destructive: false idempotent: true call: zuplo-api-keys-consumers.apikeyconsumersserviceupdate with: body: tools.body outputParameters: - type: object mapping: $. - name: deletes-consumer description: Deletes a Consumer hints: readOnly: false destructive: true idempotent: true call: zuplo-api-keys-consumers.apikeyconsumersservicedelete outputParameters: - type: object mapping: $. - name: roll-consumer-keys description: Roll Consumer Keys hints: readOnly: false destructive: false idempotent: false call: zuplo-api-keys-consumers.apikeyconsumersservicerollkey with: body: tools.body outputParameters: - type: object mapping: $.