Etsy · Capability
Etsy Open API v3 — ShopListing Personalization
Etsy Open API v3 — ShopListing Personalization. 3 operations. Lead operation: Delete Listing Personalization. Self-contained Naftiko capability covering one Etsy business surface.
What You Can Do
DELETE
Deletelistingpersonalization
— Delete Listing Personalization
/v1/shops/{shop_id}/listings/{listing_id}/personalization
POST
Updatelistingpersonalization
— Update Listing Personalization
/v1/shops/{shop_id}/listings/{listing_id}/personalization
GET
Getlistingpersonalization
— Get Listing Personalization
/v1/listings/{listing_id}/personalization
MCP Tools
delete-listing-personalization
Delete Listing Personalization
idempotent
update-listing-personalization
Update Listing Personalization
get-listing-personalization
Get Listing Personalization
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Etsy Open API v3 — ShopListing Personalization
description: 'Etsy Open API v3 — ShopListing Personalization. 3 operations. Lead operation: Delete Listing Personalization. Self-contained Naftiko capability covering one Etsy business surface.'
tags:
- Etsy
- Open API v3
- ShopListing Personalization
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-personalization
baseUri: https://openapi.etsy.com
description: Etsy Open API v3 — ShopListing Personalization 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-personalization
path: /v3/application/shops/{shop_id}/listings/{listing_id}/personalization
operations:
- name: deleteListingPersonalization
method: DELETE
description: Delete Listing Personalization
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.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: updateListingPersonalization
method: POST
description: Update Listing Personalization
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: supports_multiple_personalization_questions
in: query
type: boolean
required: false
description: "This query parameter indicates that the caller supports up to 5 personalization questions and the following question types: 'text_input', 'dropdown', 'unlabeled_upload', 'labeled_upload'. Sending this"
- name: body
in: body
type: object
required: false
description: JSON request body.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: listings-personalization
path: /v3/application/listings/{listing_id}/personalization
operations:
- name: getListingPersonalization
method: GET
description: Get Listing Personalization
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.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
exposes:
- type: rest
namespace: open-api-v3-shop-listing-personalization-rest
port: 8080
description: REST adapter for Etsy Open API v3 — ShopListing Personalization. One Spectral-compliant resource per consumed operation, prefixed with /v1.
resources:
- path: /v1/shops/{shop_id}/listings/{listing_id}/personalization
name: shops-listings-personalization
description: REST surface for shops-listings-personalization.
operations:
- method: DELETE
name: deleteListingPersonalization
description: Delete Listing Personalization
call: open-api-v3-shop-listing-personalization.deleteListingPersonalization
with:
shop_id: rest.shop_id
listing_id: rest.listing_id
outputParameters:
- type: object
mapping: $.
- method: POST
name: updateListingPersonalization
description: Update Listing Personalization
call: open-api-v3-shop-listing-personalization.updateListingPersonalization
with:
shop_id: rest.shop_id
listing_id: rest.listing_id
supports_multiple_personalization_questions: rest.supports_multiple_personalization_questions
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/listings/{listing_id}/personalization
name: listings-personalization
description: REST surface for listings-personalization.
operations:
- method: GET
name: getListingPersonalization
description: Get Listing Personalization
call: open-api-v3-shop-listing-personalization.getListingPersonalization
with:
listing_id: rest.listing_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: open-api-v3-shop-listing-personalization-mcp
port: 9090
transport: http
description: MCP adapter for Etsy Open API v3 — ShopListing Personalization. One tool per consumed operation, routed inline through this capability's consumes block.
tools:
- name: delete-listing-personalization
description: Delete Listing Personalization
hints:
readOnly: false
destructive: true
idempotent: true
call: open-api-v3-shop-listing-personalization.deleteListingPersonalization
with:
shop_id: tools.shop_id
listing_id: tools.listing_id
outputParameters:
- type: object
mapping: $.
- name: update-listing-personalization
description: Update Listing Personalization
hints:
readOnly: false
destructive: false
idempotent: false
call: open-api-v3-shop-listing-personalization.updateListingPersonalization
with:
shop_id: tools.shop_id
listing_id: tools.listing_id
supports_multiple_personalization_questions: tools.supports_multiple_personalization_questions
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-listing-personalization
description: Get Listing Personalization
hints:
readOnly: true
destructive: false
idempotent: true
call: open-api-v3-shop-listing-personalization.getListingPersonalization
with:
listing_id: tools.listing_id
outputParameters:
- type: object
mapping: $.