---
title: "Search Etsy listings"
method: GET
path: "/etsy/search"
tags: ["Etsy"]
---

# Search Etsy listings

`GET /etsy/search`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/etsy/search`
- Auth: API key in header `x-api-key`

Searches Etsy listings across shops for the required keywords `q`, in Etsy's default relevance order. Page with `offset` (default 0) and `limit` (default 36, max 100). The response gives the total match `count`, and each result has listing id, title, URL, image, price, shop name and rating, quantity and sold-out flag. Read `currency`, since it is not fixed to USD.

## Query parameters

- `q` string, required
- `offset` integer
- `limit` integer

## Headers

- `x-api-key` string, required

## Response `200`

OK

- EtsySearchResponseDoc
  - `code` integer
  - `data` EtsyMobileSearchResponse
    - `count` integer
    - `offset` integer
    - `query` string
    - `results` EtsyMobileListingCard[]
      - `currency` string
      - `image` string
      - `is_sold_out` boolean
      - `listing_id` string
      - `price` string
      - `price_int` integer
      - `quantity` integer
      - `shop_id` string
      - `shop_name` string
      - `shop_rating` number
      - `title` string
      - `url` string
  - `msg` string

## Other responses

- `400`: Bad Request
- `429`: Too Many Requests
- `500`: Internal Server Error
- `503`: Service Unavailable

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/0497899e2016?raw)
