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
| Field | Example | Description |
|---|---|---|
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 ID | 12345678 | The numeric ID of your Etsy shop. |
Step-by-step guide
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.
Create new app
Navigate to: My Apps→Create app
Fill in the form:
- App name:
ProductPolish Integration - Description: "Tool for creating and publishing product texts and images"
Click "Create app".
Copy API key (Keystring)
After creation, you can see the Keystring (public API key) on the app page.
Copy this value.
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:
- Go to the Etsy API Documentation → Authentication
- Use the OAuth2 flow described there or a tool like Postman to obtain the authorisation code
- Exchange the code for an Access Token
https://www.productpolish.ai/callback or http://localhost. The important thing is to copy the authorisation code from the URL after the redirect.Find Shop ID
You can find your Shop ID in several ways:
- Via the API: Call the
getShopendpoint in the Etsy API Explorer (developer.etsy.com) and read theshop_idfrom the response - Via the browser: Go to your shop (
etsy.com/shop/YourShopName), open developer tools (F12) and search the source code forshop_id
12345678), not the shop name (e.g. "MyHandmadeShop").Enter in ProductPolish
Go in ProductPolish to Dashboard→Integrations→New connection.
- Select Etsy as the platform
- Paste your API key (Keystring)
- Paste the OAuth Access Token
- Enter your Shop ID
- Click "Save connection"
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.