naftiko: 1.0.0-alpha2 info: label: Etsy Open API v3 — Shop Receipt description: 'Etsy Open API v3 — Shop Receipt. 4 operations. Lead operation: Get Shop Receipt. Self-contained Naftiko capability covering one Etsy business surface.' tags: - Etsy - Open API v3 - Shop Receipt created: '2026-05-30' modified: '2026-05-30' binds: - namespace: env keys: ETSY_API_KEY: ETSY_API_KEY ETSY_OAUTH_TOKEN: ETSY_OAUTH_TOKEN capability: consumes: - type: http namespace: open-api-v3-shop-receipt baseUri: https://openapi.etsy.com description: Etsy Open API v3 — Shop Receipt business capability. Self-contained, no shared references. authentication: type: apikey key: x-api-key value: '{{env.ETSY_API_KEY}}' placement: header resources: - name: shops-receipts path: /v3/application/shops/{shop_id}/receipts/{receipt_id} operations: - name: getShopReceipt method: GET description: Get Shop Receipt inputParameters: - name: shop_id in: path type: integer required: true description: The unique positive non-zero numeric ID for an Etsy Shop. - name: receipt_id in: path type: integer required: true description: The numeric ID for the [receipt](/documentation/reference#tag/Shop-Receipt) associated to this transaction. - name: legacy in: query type: boolean required: false description: This parameter needed to enable new parameters and response values related to processing profiles. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateShopReceipt method: PUT description: Update Shop Receipt inputParameters: - name: shop_id in: path type: integer required: true description: The unique positive non-zero numeric ID for an Etsy Shop. - name: receipt_id in: path type: integer required: true description: The numeric ID for the [receipt](/documentation/reference#tag/Shop-Receipt) associated to this transaction. - name: legacy in: query type: boolean required: false description: This parameter needed to enable new parameters and response values related to processing profiles. - name: body in: body type: object required: false description: JSON request body. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: shops-receipts path: /v3/application/shops/{shop_id}/receipts operations: - name: getShopReceipts method: GET description: Get Shop Receipts inputParameters: - name: shop_id in: path type: integer required: true description: The unique positive non-zero numeric ID for an Etsy Shop. - name: min_created in: query type: integer required: false description: The earliest unix timestamp for when a record was created. - name: max_created in: query type: integer required: false description: The latest unix timestamp for when a record was created. - name: min_last_modified in: query type: integer required: false description: The earliest unix timestamp for when a record last changed. - name: max_last_modified in: query type: integer required: false description: The latest unix timestamp for when a record last changed. - name: limit in: query type: integer required: false description: The maximum number of results to return. - name: offset in: query type: integer required: false description: The number of records to skip before selecting the first result. - name: sort_on in: query type: string required: false description: The value to sort a search result of listings on. - name: sort_order in: query type: string required: false description: The ascending(up) or descending(down) order to sort receipts by. - name: was_paid in: query type: boolean required: false description: When `true`, returns receipts where the seller has received payment for the receipt. When `false`, returns receipts where payment has not been received. - name: was_shipped in: query type: boolean required: false description: When `true`, returns receipts where the seller shipped the product(s) in this receipt. When `false`, returns receipts where shipment has not been set. - name: was_delivered in: query type: boolean required: false description: When `true`, returns receipts that have been marked as delivered. When `false`, returns receipts where shipment has not been marked as delivered. - name: was_canceled in: query type: boolean required: false description: When `true`, the endpoint will only return the canceled receipts. When `false`, the endpoint will only return non-canceled receipts. - name: legacy in: query type: boolean required: false description: This parameter needed to enable new parameters and response values related to processing profiles. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: shops-receipts-tracking path: /v3/application/shops/{shop_id}/receipts/{receipt_id}/tracking operations: - name: createReceiptShipment method: POST description: Create Receipt Shipment inputParameters: - name: shop_id in: path type: integer required: true description: The unique positive non-zero numeric ID for an Etsy Shop. - name: receipt_id in: path type: integer required: true description: The receipt to submit tracking for. - name: legacy in: query type: boolean required: false description: This parameter needed to enable new parameters and response values related to processing profiles. - name: body in: body type: object required: false description: JSON request body. outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: open-api-v3-shop-receipt-rest port: 8080 description: REST adapter for Etsy Open API v3 — Shop Receipt. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/shops/{shop_id}/receipts/{receipt_id} name: shops-receipts description: REST surface for shops-receipts. operations: - method: GET name: getShopReceipt description: Get Shop Receipt call: open-api-v3-shop-receipt.getShopReceipt with: shop_id: rest.shop_id receipt_id: rest.receipt_id legacy: rest.legacy outputParameters: - type: object mapping: $. - method: PUT name: updateShopReceipt description: Update Shop Receipt call: open-api-v3-shop-receipt.updateShopReceipt with: shop_id: rest.shop_id receipt_id: rest.receipt_id legacy: rest.legacy body: rest.body outputParameters: - type: object mapping: $. - path: /v1/shops/{shop_id}/receipts name: shops-receipts description: REST surface for shops-receipts. operations: - method: GET name: getShopReceipts description: Get Shop Receipts call: open-api-v3-shop-receipt.getShopReceipts with: shop_id: rest.shop_id min_created: rest.min_created max_created: rest.max_created min_last_modified: rest.min_last_modified max_last_modified: rest.max_last_modified limit: rest.limit offset: rest.offset sort_on: rest.sort_on sort_order: rest.sort_order was_paid: rest.was_paid was_shipped: rest.was_shipped was_delivered: rest.was_delivered was_canceled: rest.was_canceled legacy: rest.legacy outputParameters: - type: object mapping: $. - path: /v1/shops/{shop_id}/receipts/{receipt_id}/tracking name: shops-receipts-tracking description: REST surface for shops-receipts-tracking. operations: - method: POST name: createReceiptShipment description: Create Receipt Shipment call: open-api-v3-shop-receipt.createReceiptShipment with: shop_id: rest.shop_id receipt_id: rest.receipt_id legacy: rest.legacy body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: open-api-v3-shop-receipt-mcp port: 9090 transport: http description: MCP adapter for Etsy Open API v3 — Shop Receipt. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-shop-receipt description: Get Shop Receipt hints: readOnly: true destructive: false idempotent: true call: open-api-v3-shop-receipt.getShopReceipt with: shop_id: tools.shop_id receipt_id: tools.receipt_id legacy: tools.legacy outputParameters: - type: object mapping: $. - name: update-shop-receipt description: Update Shop Receipt hints: readOnly: false destructive: false idempotent: true call: open-api-v3-shop-receipt.updateShopReceipt with: shop_id: tools.shop_id receipt_id: tools.receipt_id legacy: tools.legacy body: tools.body outputParameters: - type: object mapping: $. - name: get-shop-receipts description: Get Shop Receipts hints: readOnly: true destructive: false idempotent: true call: open-api-v3-shop-receipt.getShopReceipts with: shop_id: tools.shop_id min_created: tools.min_created max_created: tools.max_created min_last_modified: tools.min_last_modified max_last_modified: tools.max_last_modified limit: tools.limit offset: tools.offset sort_on: tools.sort_on sort_order: tools.sort_order was_paid: tools.was_paid was_shipped: tools.was_shipped was_delivered: tools.was_delivered was_canceled: tools.was_canceled legacy: tools.legacy outputParameters: - type: object mapping: $. - name: create-receipt-shipment description: Create Receipt Shipment hints: readOnly: false destructive: false idempotent: false call: open-api-v3-shop-receipt.createReceiptShipment with: shop_id: tools.shop_id receipt_id: tools.receipt_id legacy: tools.legacy body: tools.body outputParameters: - type: object mapping: $.