naftiko: 1.0.0-alpha2 info: label: Postmark Server API — Bounces API description: 'Postmark Server API — Bounces API. 5 operations. Lead operation: Postmark Get bounces. Self-contained Naftiko capability covering one Postmark business surface.' tags: - Postmark - Bounces API created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: POSTMARK_API_KEY: POSTMARK_API_KEY capability: consumes: - type: http namespace: server-bounces-api baseUri: https://api.postmarkapp.com description: Postmark Server API — Bounces API business capability. Self-contained, no shared references. resources: - name: bounces path: /bounces operations: - name: getbounces method: GET description: Postmark Get bounces outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Server-Token in: header type: string description: The token associated with the Server on which this request will operate. required: true - name: count in: query type: integer description: Number of bounces to return per request. Max 500. required: true - name: offset in: query type: integer description: Number of bounces to skip. required: true - name: type in: query type: string description: Filter by type of bounce - name: inactive in: query type: boolean description: Filter by emails that were deactivated by Postmark due to the bounce. Set to true or false. If this isn't specified it will return both active and inactive. - name: emailFilter in: query type: string description: Filter by email address - name: messageID in: query type: string description: Filter by messageID - name: tag in: query type: string description: Filter by tag - name: todate in: query type: string description: Filter messages up to the date specified. e.g. `2014-02-01` - name: fromdate in: query type: string description: Filter messages starting from the date specified. e.g. `2014-02-01` - name: bounces-bounceid path: /bounces/{bounceid} operations: - name: getsinglebounce method: GET description: Postmark Get a single bounce outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Server-Token in: header type: string description: The token associated with the Server on which this request will operate. required: true - name: bounceid in: path type: integer description: The ID of the bounce to retrieve. required: true - name: bounces-bounceid-activate path: /bounces/{bounceid}/activate operations: - name: activatebounce method: PUT description: Postmark Activate a bounce outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Server-Token in: header type: string description: The token associated with the Server on which this request will operate. required: true - name: bounceid in: path type: integer description: The ID of the Bounce to activate. required: true - name: bounces-bounceid-dump path: /bounces/{bounceid}/dump operations: - name: get method: GET description: Postmark Get bounce dump outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Server-Token in: header type: string description: The token associated with the Server on which this request will operate. required: true - name: bounceid in: path type: integer description: The ID for the bounce dump to retrieve. required: true - name: deliverystats path: /deliverystats operations: - name: getdeliverystats method: GET description: Postmark Get delivery stats outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Server-Token in: header type: string description: The token associated with the Server on which this request will operate. required: true exposes: - type: rest namespace: server-bounces-api-rest port: 8080 description: REST adapter for Postmark Server API — Bounces API. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/bounces name: bounces description: REST surface for bounces. operations: - method: GET name: getbounces description: Postmark Get bounces call: server-bounces-api.getbounces with: X-Postmark-Server-Token: rest.X-Postmark-Server-Token count: rest.count offset: rest.offset type: rest.type inactive: rest.inactive emailFilter: rest.emailFilter messageID: rest.messageID tag: rest.tag todate: rest.todate fromdate: rest.fromdate outputParameters: - type: object mapping: $. - path: /v1/bounces/{bounceid} name: bounces-bounceid description: REST surface for bounces-bounceid. operations: - method: GET name: getsinglebounce description: Postmark Get a single bounce call: server-bounces-api.getsinglebounce with: X-Postmark-Server-Token: rest.X-Postmark-Server-Token bounceid: rest.bounceid outputParameters: - type: object mapping: $. - path: /v1/bounces/{bounceid}/activate name: bounces-bounceid-activate description: REST surface for bounces-bounceid-activate. operations: - method: PUT name: activatebounce description: Postmark Activate a bounce call: server-bounces-api.activatebounce with: X-Postmark-Server-Token: rest.X-Postmark-Server-Token bounceid: rest.bounceid outputParameters: - type: object mapping: $. - path: /v1/bounces/{bounceid}/dump name: bounces-bounceid-dump description: REST surface for bounces-bounceid-dump. operations: - method: GET name: get description: Postmark Get bounce dump call: server-bounces-api.get with: X-Postmark-Server-Token: rest.X-Postmark-Server-Token bounceid: rest.bounceid outputParameters: - type: object mapping: $. - path: /v1/deliverystats name: deliverystats description: REST surface for deliverystats. operations: - method: GET name: getdeliverystats description: Postmark Get delivery stats call: server-bounces-api.getdeliverystats with: X-Postmark-Server-Token: rest.X-Postmark-Server-Token outputParameters: - type: object mapping: $. - type: mcp namespace: server-bounces-api-mcp port: 9090 transport: http description: MCP adapter for Postmark Server API — Bounces API. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: postmark-get-bounces description: Postmark Get bounces hints: readOnly: true destructive: false idempotent: true call: server-bounces-api.getbounces with: X-Postmark-Server-Token: tools.X-Postmark-Server-Token count: tools.count offset: tools.offset type: tools.type inactive: tools.inactive emailFilter: tools.emailFilter messageID: tools.messageID tag: tools.tag todate: tools.todate fromdate: tools.fromdate outputParameters: - type: object mapping: $. - name: postmark-get-single-bounce description: Postmark Get a single bounce hints: readOnly: true destructive: false idempotent: true call: server-bounces-api.getsinglebounce with: X-Postmark-Server-Token: tools.X-Postmark-Server-Token bounceid: tools.bounceid outputParameters: - type: object mapping: $. - name: postmark-activate-bounce description: Postmark Activate a bounce hints: readOnly: false destructive: false idempotent: true call: server-bounces-api.activatebounce with: X-Postmark-Server-Token: tools.X-Postmark-Server-Token bounceid: tools.bounceid outputParameters: - type: object mapping: $. - name: postmark-get-bounce-dump description: Postmark Get bounce dump hints: readOnly: true destructive: false idempotent: true call: server-bounces-api.get with: X-Postmark-Server-Token: tools.X-Postmark-Server-Token bounceid: tools.bounceid outputParameters: - type: object mapping: $. - name: postmark-get-delivery-stats description: Postmark Get delivery stats hints: readOnly: true destructive: false idempotent: true call: server-bounces-api.getdeliverystats with: X-Postmark-Server-Token: tools.X-Postmark-Server-Token outputParameters: - type: object mapping: $.