Search API Connector Documentation

Print

Import Etsy Data to Google Sheets

premium

In this guide, we’ll walk through how to pull Etsy data data directly into Google Sheets, using the API Connector add-on for Sheets.

Contents

Before You Begin

Click here to install the API Connector add-on from the Google Marketplace.

Part 1: Connect to the Etsy API

The easiest way to get started with the Etsy API is through API Connector's built-in integration.

  1. Select Etsy from the drop-down list of applications
    etsy-application
  2. Under Authorization, click Connect to Etsy
    etsy-authorization
  3. You be asked to authorize the connection. Click Grant access
    etsy-oauth
  4. You’ll then be returned to your Google Sheet, and can verify that your Etsy connection is now active.

Part 2: Pull Data from Etsy to Sheets

Now that we’re connected, let’s pull some data into Sheets.

  1. Under Endpoint, choose /shops. This will return your shop ID, which you'll need for subsequent requests.
    etsy-endpoints
  2. Fill in your shop name, select a destination sheet, name your request, and click Run. You'll see your shop ID returned in the results.shop_id field.
    etsy-response
  3. You can now plug this value into other requests. For example, the /shops/{shop_id}/listings endpoint requires the shop ID as a parameter.
    etsy-response2

Part 3: Fetch and Append New Receipts

Rather than retrieving the entire data set each time you run your request, you can set your request to fetch new data only. There are a few approaches you could take; here’s one:

  1. Create an initial request to the /receipts endpoint. Use the field editor to select just the fields you want and assign them to specific columns in your report.
  2. Run the request, sending the response to a sheet called EtsyData.
  3. Now in a second sheet, get the maximum (i.e. most recent) created_timestamp from the response data with a formula like =max(EtsyData!Y:Y)+1
    etsy-timestamp
  4. Update your request to reference this cell in the min_created parameter of your request.
    etsy-referencecell
  5. This will ensure that each request starts from the end of the prior data pull. Select Append mode to add each new data pull to the end of your existing dataset.
  6. Set your request to run on a schedule. You won’t need to update your request again.

Part 4: Create a Custom Request

Alternatively, you can create a custom request instead of using API Connector’s built-in integration, using any of the endpoints and parameters shown in the API documentation.

Here's an example request setup. Substitute your own store ID where it says your_shop_id.

  • ApplicationCustom
  • MethodGET
  • Request URLhttps://openapi.etsy.com/v3/application/shops/your_shop_id/listings
  • OAuthEtsyetsy-custom

Part 5: Handle Pagination

By default, Etsy limits results to 25 at a time. To get more, set the limit parameter to 100.

If 100 records is not enough, you can loop through Etsy's paginated records using the following settings:

  • Pagination type: offset-limit
  • Offset parameter: offset
  • Limit parameter: limit
  • Limit value: 100
  • Run until: choose when to stop fetching data
    pagination-offset-limit

Part 6: API Documentation

Official API documentation: https://developers.etsy.com/documentation/reference

8 thoughts on “Import Etsy Data to Google Sheets”

  1. I'm very new to this and trying to connect to Etsy.

    I уntered the following data in the "Add Custom OAuth" form:

    Authorization Base URL:
    https://openapi.etsy.com/v2

    Token URL:
    https://openapi.etsy.com/v2/oauth/request_token?scope=email_r

    Client ID:
    azm3uoqeh5glvuaqa1jj9XXX

    Client Secret:
    xsargf6XXX

    Then a page opened in a new tab with the following error:
    "API request missing api_key or valid OAuth parameters"

    How this can be solved? Any help appreciated.

    Here is Etsy page about their OAuth:
    https://www.etsy.com/developers/documentation/getting_started/oauth

    Reply
    • Hi Roman, thanks for the message and sorry you're having trouble getting connected to Etsy. I checked the Oauth docs you linked and they say Etsy is using the old OAuth 1.0 standard while API Connector uses OAuth 2.0, so that's probably the issue.

      If you're just making an app for your personal use, I think you can just use an API key like they describe here: https://www.etsy.com/developers/documentation/getting_started/api_basics

      In that case your request would look like this:
      https://openapi.etsy.com/v2/shops/YOUR_SHOP_NAME/listings/active?api_key=YOUR_KEYSTRING
      You don't need headers or OAuth2 so just leave those empty.

      Can you please run that URL and let me know how it goes?

      Reply
      • Dear Ana,

        Thank you so much for getting back to me. Your example works, though I need to access my private shop data (receipts), and when I'm making a request like the following:

        https://openapi.etsy.com/v2/shops/MY_SHOP/receipts?api_key=azm3uoqeh5glvuaqa1jj9gf1

        API Connector says "This method requires authentication."

        It's a shame if the reason for the auth error is an old version of OAuth at Etsy. Nevertheless, thank you for your help.

        Kindly,
        Roman

  2. hi, great job!
    I ask 2 questions from inexperienced:
    Is it possible, with this tool, to import only orders from etsy to google sheet?
    in the practical configuration phase now I see that the Open API v3 is present, does something change?

    Reply
    • Hey Tobias, now that Etsy v3 is available, we are working on adding an integration for it. Once that's ready you will be able to import your orders from Etsy to Sheets, but it's not quite available yet. Please check back soon.

      Reply
    • Sorry, they can not update in real time, currently API Connector only updates 1x per hour max so there will be a lag of up to one hour.

      Reply

Leave a Comment

Jump To...