naftiko: 1.0.0-alpha2 info: label: Postmark Account API — Domains API description: 'Postmark Account API — Domains API. 9 operations. Lead operation: Postmark List Domains. Self-contained Naftiko capability covering one Postmark business surface.' tags: - Postmark - Domains API created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: POSTMARK_API_KEY: POSTMARK_API_KEY capability: consumes: - type: http namespace: account-domains-api baseUri: '' description: Postmark Account API — Domains API business capability. Self-contained, no shared references. resources: - name: domains path: /domains operations: - name: listdomains method: GET description: Postmark List Domains outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: count in: query type: integer description: Number of records to return per request. Max 500. required: true - name: offset in: query type: integer description: Number of records to skip required: true - name: createdomain method: POST description: Postmark Create a Domain outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: domains-domainid path: /domains/{domainid} operations: - name: getdomain method: GET description: Postmark Get a Domain outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: domainid in: path type: integer description: The ID for the Domain that should be retrieved. required: true - name: editdomain method: PUT description: Postmark Update a Domain outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: domainid in: path type: integer description: The ID for the Domain that should be modified by the request. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deletedomain method: DELETE description: Postmark Delete a Domain outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: domainid in: path type: integer description: The ID for the Domain that should be deleted by the request. required: true - name: domains-domainid-rotatedkim path: /domains/{domainid}/rotatedkim operations: - name: rotatedkimkeyfordomain method: POST description: Postmark Rotate DKIM Key outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: domainid in: path type: integer description: The ID for the Sender Signature for which a new DKIM Key should be generated. required: true - name: domains-domainid-verifydkim path: /domains/{domainid}/verifydkim operations: - name: requestdkimverificationfordomain method: PUT description: Postmark Request DNS Verification for DKIM outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: domainid in: path type: integer description: The ID for the Domain for which DKIM DNS records should be verified. required: true - name: domains-domainid-verifyreturnpath path: /domains/{domainid}/verifyreturnpath operations: - name: requestreturnpathverificationfordomain method: PUT description: Postmark Request DNS Verification for Return-Path outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: domainid in: path type: integer description: The ID for the Domain for which Return-Path DNS records should be verified. required: true - name: domains-domainid-verifyspf path: /domains/{domainid}/verifyspf operations: - name: requestspfverificationfordomain method: POST description: Postmark Request DNS Verification for SPF outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Postmark-Account-Token in: header type: string description: The token associated with the Account on which this request will operate. required: true - name: domainid in: path type: integer description: The ID for the Domain for which SPF DNS records should be verified. required: true exposes: - type: rest namespace: account-domains-api-rest port: 8080 description: REST adapter for Postmark Account API — Domains API. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/domains name: domains description: REST surface for domains. operations: - method: GET name: listdomains description: Postmark List Domains call: account-domains-api.listdomains with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token count: rest.count offset: rest.offset outputParameters: - type: object mapping: $. - method: POST name: createdomain description: Postmark Create a Domain call: account-domains-api.createdomain with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token body: rest.body outputParameters: - type: object mapping: $. - path: /v1/domains/{domainid} name: domains-domainid description: REST surface for domains-domainid. operations: - method: GET name: getdomain description: Postmark Get a Domain call: account-domains-api.getdomain with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token domainid: rest.domainid outputParameters: - type: object mapping: $. - method: PUT name: editdomain description: Postmark Update a Domain call: account-domains-api.editdomain with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token domainid: rest.domainid body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletedomain description: Postmark Delete a Domain call: account-domains-api.deletedomain with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token domainid: rest.domainid outputParameters: - type: object mapping: $. - path: /v1/domains/{domainid}/rotatedkim name: domains-domainid-rotatedkim description: REST surface for domains-domainid-rotatedkim. operations: - method: POST name: rotatedkimkeyfordomain description: Postmark Rotate DKIM Key call: account-domains-api.rotatedkimkeyfordomain with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token domainid: rest.domainid outputParameters: - type: object mapping: $. - path: /v1/domains/{domainid}/verifydkim name: domains-domainid-verifydkim description: REST surface for domains-domainid-verifydkim. operations: - method: PUT name: requestdkimverificationfordomain description: Postmark Request DNS Verification for DKIM call: account-domains-api.requestdkimverificationfordomain with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token domainid: rest.domainid outputParameters: - type: object mapping: $. - path: /v1/domains/{domainid}/verifyreturnpath name: domains-domainid-verifyreturnpath description: REST surface for domains-domainid-verifyreturnpath. operations: - method: PUT name: requestreturnpathverificationfordomain description: Postmark Request DNS Verification for Return-Path call: account-domains-api.requestreturnpathverificationfordomain with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token domainid: rest.domainid outputParameters: - type: object mapping: $. - path: /v1/domains/{domainid}/verifyspf name: domains-domainid-verifyspf description: REST surface for domains-domainid-verifyspf. operations: - method: POST name: requestspfverificationfordomain description: Postmark Request DNS Verification for SPF call: account-domains-api.requestspfverificationfordomain with: X-Postmark-Account-Token: rest.X-Postmark-Account-Token domainid: rest.domainid outputParameters: - type: object mapping: $. - type: mcp namespace: account-domains-api-mcp port: 9090 transport: http description: MCP adapter for Postmark Account API — Domains API. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: postmark-list-domains description: Postmark List Domains hints: readOnly: true destructive: false idempotent: true call: account-domains-api.listdomains with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token count: tools.count offset: tools.offset outputParameters: - type: object mapping: $. - name: postmark-create-domain description: Postmark Create a Domain hints: readOnly: false destructive: false idempotent: false call: account-domains-api.createdomain with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token body: tools.body outputParameters: - type: object mapping: $. - name: postmark-get-domain description: Postmark Get a Domain hints: readOnly: true destructive: false idempotent: true call: account-domains-api.getdomain with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token domainid: tools.domainid outputParameters: - type: object mapping: $. - name: postmark-update-domain description: Postmark Update a Domain hints: readOnly: false destructive: false idempotent: true call: account-domains-api.editdomain with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token domainid: tools.domainid body: tools.body outputParameters: - type: object mapping: $. - name: postmark-delete-domain description: Postmark Delete a Domain hints: readOnly: false destructive: true idempotent: true call: account-domains-api.deletedomain with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token domainid: tools.domainid outputParameters: - type: object mapping: $. - name: postmark-rotate-dkim-key description: Postmark Rotate DKIM Key hints: readOnly: false destructive: false idempotent: false call: account-domains-api.rotatedkimkeyfordomain with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token domainid: tools.domainid outputParameters: - type: object mapping: $. - name: postmark-request-dns-verification-dkim description: Postmark Request DNS Verification for DKIM hints: readOnly: false destructive: false idempotent: true call: account-domains-api.requestdkimverificationfordomain with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token domainid: tools.domainid outputParameters: - type: object mapping: $. - name: postmark-request-dns-verification-return description: Postmark Request DNS Verification for Return-Path hints: readOnly: false destructive: false idempotent: true call: account-domains-api.requestreturnpathverificationfordomain with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token domainid: tools.domainid outputParameters: - type: object mapping: $. - name: postmark-request-dns-verification-spf description: Postmark Request DNS Verification for SPF hints: readOnly: false destructive: false idempotent: false call: account-domains-api.requestspfverificationfordomain with: X-Postmark-Account-Token: tools.X-Postmark-Account-Token domainid: tools.domainid outputParameters: - type: object mapping: $.