Skip to content

Connect Etsy with ProductPolish

Connect your Etsy shop with ProductPolish via the Etsy Open API v3. You create an app in the Etsy Developer Portal and authorise it via OAuth2.

Prerequisites

  • An active Etsy shop
  • An Etsy Developer account (free)
  • Basic understanding of the OAuth2 flow (or simply follow the guide)

Required credentials

FieldExampleDescription
API key (Keystring)(alphanumeric string)The public API key of your Etsy app.
OAuth Access Token(long token string)The OAuth2 Access Token after authorisation.
Shop ID12345678The numeric ID of your Etsy shop.

Step-by-step guide

1

Create Etsy Developer account

Go to developer.etsy.com and log in with your Etsy account.

If you do not have a Developer account yet, click "Register" and accept the developer terms of use.

2

Create new app

Navigate to: My AppsCreate app

Fill in the form:

  • App name: ProductPolish Integration
  • Description: "Tool for creating and publishing product texts and images"

Click "Create app".

3

Copy API key (Keystring)

After creation, you can see the Keystring (public API key) on the app page.

Copy this value.

4

Obtain OAuth2 Access Token

To obtain an Access Token, you must go through the OAuth2 authorisation flow. Etsy uses the PKCE flow (Proof Key for Code Exchange).

The simplest method:

  1. Go to the Etsy API Documentation → Authentication
  2. Use the OAuth2 flow described there or a tool like Postman to obtain the authorisation code
  3. Exchange the code for an Access Token
The OAuth2 flow requires a Redirect URI. You can use https://www.productpolish.ai/callback or http://localhost. The important thing is to copy the authorisation code from the URL after the redirect.
Etsy Access Tokens expire after 1 hour. The Refresh Token is valid for 90 days. ProductPolish automatically renews the Access Token via the Refresh Token. After 90 days you must go through the OAuth2 flow again.
5

Find Shop ID

You can find your Shop ID in several ways:

  • Via the API: Call the getShop endpoint in the Etsy API Explorer (developer.etsy.com) and read the shop_id from the response
  • Via the browser: Go to your shop (etsy.com/shop/YourShopName), open developer tools (F12) and search the source code for shop_id
The Shop ID is a purely numeric ID (e.g. 12345678), not the shop name (e.g. "MyHandmadeShop").
6

Enter in ProductPolish

Go in ProductPolish to DashboardIntegrationsNew connection.

  1. Select Etsy as the platform
  2. Paste your API key (Keystring)
  3. Paste the OAuth Access Token
  4. Enter your Shop ID
  5. Click "Save connection"
Done! ProductPolish can now create and edit listings in your Etsy shop.

Good to know

  • Etsy Open API v3: ProductPolish uses the current Etsy API v3 (RESTful, OAuth2-based).
  • Listings: Products are called "listings" on Etsy. ProductPolish creates new listings as drafts or directly as active listings.
  • Required fields at Etsy: Etsy requires in addition to title and description: price, quantity, shipping profile, category (taxonomy), and "who made it" / "what is it" / "when was it made". These fields can be added after import in the Etsy Seller Dashboard.
  • Tags: Etsy allows up to 13 tags per listing. ProductPolish fills these automatically with the generated SEO tags.
  • Images: Etsy allows up to 10 images per listing. AI-generated images are uploaded as listing images.
  • Rate limits: The Etsy API allows 10 requests per second.
  • Handmade policy: Note that Etsy is a platform for handmade, vintage, and unique products. Make sure your products comply with Etsy policies.

Common issues

"Invalid API key"

Make sure you use the Keystring (not the Shared Secret). The Keystring is the public key.

Access Token or Refresh Token expired

Access Tokens expire after 1 hour – ProductPolish renews them automatically via the Refresh Token. The Refresh Token itself is valid for 90 days. If the Refresh Token has also expired, you must go through the OAuth2 flow again.

Shop ID vs. Shop name

Use the numeric Shop ID (e.g. 12345678), not the shop name.

OAuth2 flow seems complicated

If you need help with the OAuth2 flow, contact our support team. We will help you step by step to obtain the token.