openapi: 3.0.2 info: title: Etsy Open API v3 BuyerTaxonomy ShopListing VariationImage API description:

Etsy's Open API provides a simple RESTful interface for various Etsy.com features.

If you'd like to report an issue or provide feedback on the API design, please add an issue in Github.

© 2021-2026 Etsy, Inc. All Rights Reserved. Use of this code is subject to Etsy's API Developer Terms of Use. termsOfService: https://www.etsy.com/legal/api contact: email: developers@etsy.com version: 3.0.0 x-generated-from: https://www.etsy.com/openapi/generated/oas/3.0.0.json x-last-validated: '2026-05-30' servers: - url: https://openapi.etsy.com description: Etsy Open API v3 base URL (per Etsy developer documentation; live calls also resolve at https://api.etsy.com/v3/application). security: - api_key: [] tags: - name: ShopListing VariationImage paths: /v3/application/shops/{shop_id}/listings/{listing_id}/variation-images: get: operationId: getListingVariationImages description: '
General ReleaseReport bug
Gets all variation images on a listing.' tags: - ShopListing VariationImage parameters: - name: shop_id in: path description: The unique positive non-zero numeric ID for an Etsy Shop. required: true schema: type: integer description: The unique positive non-zero numeric ID for an Etsy Shop. format: int64 minimum: 1 example: 123456 - name: listing_id in: path description: The numeric ID for the [listing](/documentation/reference#tag/ShopListing) associated to this transaction. required: true schema: type: integer description: The numeric ID for the [listing](/documentation/reference#tag/ShopListing) associated to this transaction. format: int64 minimum: 1 example: 123456789 responses: '200': description: A list of ListingVariationImages content: application/json: schema: $ref: '#/components/schemas/ListingVariationImages' examples: GetListingVariationImages200Example: summary: Default getListingVariationImages 200 response x-microcks-default: true value: count: 1 results: - property_id: 1 value_id: 1 value: example string image_id: 1 '404': description: A resource could not be found. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: GetListingVariationImages404Example: summary: Default getListingVariationImages 404 response x-microcks-default: true value: error: example string '400': description: There was a problem with the request data. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: GetListingVariationImages400Example: summary: Default getListingVariationImages 400 response x-microcks-default: true value: error: example string '403': description: The request attempted to perform an operation it is not allowed to. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: GetListingVariationImages403Example: summary: Default getListingVariationImages 403 response x-microcks-default: true value: error: example string '500': description: The server encountered an internal error. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: GetListingVariationImages500Example: summary: Default getListingVariationImages 500 response x-microcks-default: true value: error: example string x-microcks-operation: delay: 0 dispatcher: FALLBACK summary: Etsy Get Listing Variation Images post: operationId: updateVariationImages description: '
General ReleaseReport bug
Creates variation images on a listing. `variation_images` is an array with inputs for the `property_id`, `value_id`, and `image_id` fields. `image_ids` are associated with a `ListingImage` on the listing associated with the provided `listing_id`. `property_id` and `value_id` pairs are associated with a `ListingProduct` on the listing associated with the provided `listing_id`. `variation_images` should not contain any duplicates. `variation_images` does not contain more than one `property_id` as variation images can only be associated on one property. The update overwrites all existing variation images on a listing, so if your request is successful, the variation images on the listing will be exactly those you specify. ' tags: - ShopListing VariationImage parameters: - name: shop_id in: path description: The unique positive non-zero numeric ID for an Etsy Shop. required: true schema: type: integer description: The unique positive non-zero numeric ID for an Etsy Shop. format: int64 minimum: 1 example: 123456 - name: listing_id in: path description: The numeric ID for the [listing](/documentation/reference#tag/ShopListing) associated to this transaction. required: true schema: type: integer description: The numeric ID for the [listing](/documentation/reference#tag/ShopListing) associated to this transaction. format: int64 minimum: 1 example: 123456789 requestBody: content: application/json: schema: type: object required: - variation_images properties: variation_images: type: array description: A list of variation image data. items: type: object properties: property_id: type: integer format: int64 minimum: 1 value_id: type: integer format: int64 minimum: 1 image_id: type: integer format: int64 minimum: 1 required: - property_id - value_id - image_id examples: UpdateVariationImagesRequestExample: summary: Default updateVariationImages request x-microcks-default: true value: variation_images: - property_id: 1 value_id: 1 image_id: 1 responses: '200': description: A single ListingVariationImage content: application/json: schema: $ref: '#/components/schemas/ListingVariationImages' examples: UpdateVariationImages200Example: summary: Default updateVariationImages 200 response x-microcks-default: true value: count: 1 results: - property_id: 1 value_id: 1 value: example string image_id: 1 '404': description: A resource could not be found. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: UpdateVariationImages404Example: summary: Default updateVariationImages 404 response x-microcks-default: true value: error: example string '400': description: There was a problem with the request data. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: UpdateVariationImages400Example: summary: Default updateVariationImages 400 response x-microcks-default: true value: error: example string '409': description: There was a request conflict with the current state of the target resource. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: UpdateVariationImages409Example: summary: Default updateVariationImages 409 response x-microcks-default: true value: error: example string '403': description: The request attempted to perform an operation it is not allowed to. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: UpdateVariationImages403Example: summary: Default updateVariationImages 403 response x-microcks-default: true value: error: example string '401': description: The request lacks valid authentication credentials. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: UpdateVariationImages401Example: summary: Default updateVariationImages 401 response x-microcks-default: true value: error: example string '500': description: The server encountered an internal error. See the error message for details. content: application/json: schema: $ref: '#/components/schemas/ErrorSchema' examples: UpdateVariationImages500Example: summary: Default updateVariationImages 500 response x-microcks-default: true value: error: example string security: - api_key: [] oauth2: - listings_w x-microcks-operation: delay: 0 dispatcher: FALLBACK summary: Etsy Update Variation Images components: schemas: ErrorSchema: type: object x-resource-id: ErrorSchema required: - error properties: error: type: string example: example string ListingVariationImage: type: object x-resource-id: ListingVariationImage description: A representation of the associations of variations and images on a listing. properties: property_id: type: integer description: The numeric ID of the Property. format: int64 minimum: 1 example: 1 value_id: type: integer description: The numeric ID of the Value. format: int64 minimum: 1 example: 1 value: type: string description: The string value of the property. nullable: true example: example string image_id: type: integer description: The numeric ID of the Image. format: int64 minimum: 1 example: 1 ListingVariationImages: type: object x-resource-id: ListingVariationImages description: Represents several ListingVariationImages. properties: count: type: integer minimum: 0 example: 1 results: type: array items: $ref: '#/components/schemas/ListingVariationImage' securitySchemes: api_key: type: apiKey name: x-api-key in: header description: Every request to a v3 API endpoint must include this data in the format `keystring:shared_secret`. Your keystring and shared secret are available on the [Your Apps](https://www.etsy.com/developers/your-apps) page. oauth2: type: oauth2 description: Open API v3 supports authenticating via OAuth 2.0. More information about Etsy's specific implementation of OAuth2 can be found [here](/documentation/essentials/oauth2). flows: authorizationCode: authorizationUrl: https://www.etsy.com/oauth/connect tokenUrl: https://openapi.etsy.com/v3/public/oauth/token scopes: address_r: see billing and shipping addresses address_w: update billing and shipping addresses billing_r: see all billing statement data cart_r: read shopping carts cart_w: add/remove from shopping carts email_r: read a user profile favorites_r: see private favorites favorites_w: add/remove favorites feedback_r: see purchase info in feedback listings_d: delete listings listings_r: see all listings (including expired etc) listings_w: create/edit listings profile_r: see all profile data profile_w: update user profile, avatar, etc recommend_r: see recommended listings recommend_w: accept/reject recommended listings shops_r: see private shop info shops_w: update shop transactions_r: see all checkout/payment data transactions_w: update receipts x-tagGroups: - name: Listing Management tags: - BuyerTaxonomy - SellerTaxonomy - ShopListing - ShopListing File - ShopListing Image - ShopListing Inventory - ShopListing Offering - ShopListing Personalization - ShopListing Product - ShopListing Translation - ShopListing VariationImage - ShopListing Video - name: Other tags: - Other - name: Payment Management tags: - Ledger Entry - Payment - name: Receipt Management tags: - Shop Receipt - Shop Receipt Transactions - name: Review Management tags: - Review - name: Shipping Management tags: - Shop HolidayPreferences - Shop ProcessingProfiles - Shop ShippingProfile - name: Shop Management tags: - Shop - Shop ProductionPartner - Shop Section - name: Shop Policy Management tags: - Shop Return Policy - name: User Management tags: - User - UserAddress