naftiko: 1.0.0-alpha2 info: label: Etsy Open API v3 — ShopListing File description: 'Etsy Open API v3 — ShopListing File. 4 operations. Lead operation: Delete Listing File. Self-contained Naftiko capability covering one Etsy business surface.' tags: - Etsy - Open API v3 - ShopListing File 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-listing-file baseUri: https://openapi.etsy.com description: Etsy Open API v3 — ShopListing File business capability. Self-contained, no shared references. authentication: type: apikey key: x-api-key value: '{{env.ETSY_API_KEY}}' placement: header resources: - name: shops-listings-files path: /v3/application/shops/{shop_id}/listings/{listing_id}/files/{listing_file_id} operations: - name: deleteListingFile method: DELETE description: Delete Listing File inputParameters: - name: shop_id in: path type: integer required: true description: The unique positive non-zero numeric ID for an Etsy Shop. - name: listing_id in: path type: integer required: true description: The numeric ID for the [listing](/documentation/reference#tag/ShopListing) associated to this transaction. - name: listing_file_id in: path type: integer required: true description: The unique numeric ID of a file associated with a digital listing. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getListingFile method: GET description: Get Listing File inputParameters: - name: shop_id in: path type: integer required: true description: The unique positive non-zero numeric ID for an Etsy Shop. - name: listing_id in: path type: integer required: true description: The numeric ID for the [listing](/documentation/reference#tag/ShopListing) associated to this transaction. - name: listing_file_id in: path type: integer required: true description: The unique numeric ID of a file associated with a digital listing. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: shops-listings-files path: /v3/application/shops/{shop_id}/listings/{listing_id}/files operations: - name: getAllListingFiles method: GET description: Get All Listing Files inputParameters: - name: listing_id in: path type: integer required: true description: The numeric ID for the [listing](/documentation/reference#tag/ShopListing) associated to this transaction. - name: shop_id in: path type: integer required: true description: The unique positive non-zero numeric ID for an Etsy Shop. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: uploadListingFile method: POST description: Upload Listing File inputParameters: - name: shop_id in: path type: integer required: true description: The unique positive non-zero numeric ID for an Etsy Shop. - name: listing_id in: path type: integer required: true description: The numeric ID for the [listing](/documentation/reference#tag/ShopListing) associated to this transaction. - 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-listing-file-rest port: 8080 description: REST adapter for Etsy Open API v3 — ShopListing File. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/shops/{shop_id}/listings/{listing_id}/files/{listing_file_id} name: shops-listings-files description: REST surface for shops-listings-files. operations: - method: DELETE name: deleteListingFile description: Delete Listing File call: open-api-v3-shop-listing-file.deleteListingFile with: shop_id: rest.shop_id listing_id: rest.listing_id listing_file_id: rest.listing_file_id outputParameters: - type: object mapping: $. - method: GET name: getListingFile description: Get Listing File call: open-api-v3-shop-listing-file.getListingFile with: shop_id: rest.shop_id listing_id: rest.listing_id listing_file_id: rest.listing_file_id outputParameters: - type: object mapping: $. - path: /v1/shops/{shop_id}/listings/{listing_id}/files name: shops-listings-files description: REST surface for shops-listings-files. operations: - method: GET name: getAllListingFiles description: Get All Listing Files call: open-api-v3-shop-listing-file.getAllListingFiles with: listing_id: rest.listing_id shop_id: rest.shop_id outputParameters: - type: object mapping: $. - method: POST name: uploadListingFile description: Upload Listing File call: open-api-v3-shop-listing-file.uploadListingFile with: shop_id: rest.shop_id listing_id: rest.listing_id body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: open-api-v3-shop-listing-file-mcp port: 9090 transport: http description: MCP adapter for Etsy Open API v3 — ShopListing File. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: delete-listing-file description: Delete Listing File hints: readOnly: false destructive: true idempotent: true call: open-api-v3-shop-listing-file.deleteListingFile with: shop_id: tools.shop_id listing_id: tools.listing_id listing_file_id: tools.listing_file_id outputParameters: - type: object mapping: $. - name: get-listing-file description: Get Listing File hints: readOnly: true destructive: false idempotent: true call: open-api-v3-shop-listing-file.getListingFile with: shop_id: tools.shop_id listing_id: tools.listing_id listing_file_id: tools.listing_file_id outputParameters: - type: object mapping: $. - name: get-all-listing-files description: Get All Listing Files hints: readOnly: true destructive: false idempotent: true call: open-api-v3-shop-listing-file.getAllListingFiles with: listing_id: tools.listing_id shop_id: tools.shop_id outputParameters: - type: object mapping: $. - name: upload-listing-file description: Upload Listing File hints: readOnly: false destructive: false idempotent: false call: open-api-v3-shop-listing-file.uploadListingFile with: shop_id: tools.shop_id listing_id: tools.listing_id body: tools.body outputParameters: - type: object mapping: $.