Etsy Research Platform

I’m looking to build a basic platform for research on Etsy.

I want to track changes in favorites, reviews, and views in any given listing.

Here is the workflow I have in my mind:

  1. User will submit the listing He wants to track.
  2. Then the platform will check that listing after every 24 hours.
  3. We will record the changes in favorites, views, and reviews.
  4. And build a growth chart.

I’m a new user of Parabola and can’t figure out how to get this data through etsy API.

Any help will be appreciated.

Hi @Honey_Syed,

In order to track data points tied to an Etsy listing, you’ll first need to register an app and retrieve its API key (as explained in their documentation’s Authentication section here). With this API key, you should be able to use the endpoint described here to get a listing’s ID. Then, you’ll want to start making a list of IDs to use in the step Enrich with an API with the settings Type GET and API Endpoint URL https://openapi.etsy.com/v2/listings/:listing_id. This request made in Enrich with an API will return data about the listing such as num_favorers, favored-by, and views.

Try the above first to see if that retrieves all of the data points you’re looking for. If you still need help with the reviews data point, feel free to reach out for further assistance.

Thanks, @Adeline for explaining what to do. I have already registered the app and have the API key.

How do I get the listing ID in parabola?

Hey @Honey_Syed,

How are users planning on submitting listings? If they’re going to submit the URL, the listing ID should exist within the URL:

https://www.etsy.com/listing/123456789/

In that example, the listing ID is 123456789. To extract the listing ID in from your URL, I’d recommend using the Extract text from column step.

Let me know if that works!

1 Like

That should work. Where should I enter my API key to get the data from the listing?

@Honey_Syed Glad to hear it!

Etsy’s authentication using an API key can be tricky sometimes. Let’s try adding the API key directly into the URL.

https://openapi.etsy.com/v2/listings/{Listing ID Column}?api_key={Your API Key Here}

Just be sure to swap out {Listing ID Column} with the column header containing your list IDs and add your API key in place of {Your API Key Here}.

No need to add authorization using the drop-down menus.

Which block should I use to do that?

I was trying to use “Pull from an API”

Good question! You’ll likely want to use the Enrich with an API step Adeline mentioned above. That way, you can pass all listing IDs that users submit to the endpoint as a variable.

You can use the Pull from an API step, but you can only import a single listing when using that specific endpoint. This could be good to test with if you’re curious to see how Parabola receives data from Etsy.

Just head to their listings site, grab any listing ID from a URL, and enter into the endpoint mentioned above.

is there a video tutorial?

We don’t have a video tutorial, but I can walk you through the steps of getting your flow setup. Here’s a basic template of what your flow might look like:

First, import your user submission from Google Sheets. Users can copy and paste the URLs of any listing into this document. I used 3 popular listings from their website in this example.

Next, use the Extract text from column step to target the Listing IDs in the URL and place them in a new column.

We can now pass the Listing IDs column as a variable using the Enrich with an API step. Be sure to add your API key here.

All public parameters listed with an ID should be returned including the number of views and favorites. It looks like reviews will not be included since you must be a buyer or seller linked to that listing.

Feel free to keep the important columns before exporting to your destination source! In this example, I kept Listing URLs, Listing IDs, api.views, and api.num_favorers.

3 Likes

Thank you so much for the detailed explanation. I will try replicating that first and will let you know if I run into an issue.

1 Like