---
title: "Get similar Etsy listings"
method: GET
path: "/v1/etsy/listing/similar"
tags: ["Etsy"]
---

# Get similar Etsy listings

`GET /v1/etsy/listing/similar`

## Request

- Base URL: `https://api.scrapeatlas.com`
- URL: `https://api.scrapeatlas.com/v1/etsy/listing/similar`
- Auth: API key in header `x-api-key`

Read the listings Etsy recommends next to a public listing: up to 24 similar items and the promoted listings shown with them, as listing cards with canonical URL, title, shop ID, prices in the chosen currency, discount, image and badges. Each successful request costs 1 account credit, including partial results. Failed requests cost 0 credits.

## Query parameters

- `id` string
- `url` string
- `currency` 'AUD' | 'BRL' | 'CAD' | 'CHF' | 'CNY' | 'CZK' | 'DKK' | 'EUR' | 'GBP' | 'HKD' | 'HUF' | 'IDR' | 'ILS' | 'INR' | 'JPY' | 'MAD' | 'MXN' | 'MYR' | 'NOK' | 'NZD' | 'PHP' | 'PLN' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'USD' | 'VND' | 'ZAR'

## Response `200`

Inspect the response status and failure or coverage fields.

- union
  - object
    - `requestId` string, uuid, required
    - `accounting` object, required
      - `upstreamRequests` integer, required
      - `responseBytes` integer, required
      - `durationMs` number, required
    - `success` true, required
    - `status` 'success' | 'partial', required
    - `sourceUrl` string, uri, required
    - `fetchedAt` string, date-time, required
    - `coverage` object, required
      - `source` 'public_page' | 'public_api', required
      - `complete` boolean, required
      - `warnings` string[], required
    - `listing` object, required
      - `id` string, required
      - `url` string, uri, required
    - `items` object[], required
      - `id` string, required
      - `url` string, uri, required
      - `title` string, required
      - `seller` string, nullable, required
      - `shopId` string, nullable, required
      - `price` object, required
        - `current` number, nullable, required
        - `original` number, nullable, required
        - `currency` string, required
      - `discountPercent` integer, nullable, required
      - `image_urls` string[], required
      - `rating` object, required
        - `average` number, nullable, required
        - `count` integer, nullable, required
      - `freeShipping` boolean, required
      - `isBestseller` boolean, required
      - `isAd` boolean, required
    - `ads` object[], required
      - `id` string, required
      - `url` string, uri, required
      - `title` string, required
      - `seller` string, nullable, required
      - `shopId` string, nullable, required
      - `price` object, required
        - `current` number, nullable, required
        - `original` number, nullable, required
        - `currency` string, required
      - `discountPercent` integer, nullable, required
      - `image_urls` string[], required
      - `rating` object, required
        - `average` number, nullable, required
        - `count` integer, nullable, required
      - `freeShipping` boolean, required
      - `isBestseller` boolean, required
      - `isAd` boolean, required
  - object
    - `requestId` string, uuid, required
    - `accounting` object, required
      - `upstreamRequests` integer, required
      - `responseBytes` integer, required
      - `durationMs` number, required
    - `success` false, required
    - `status` 'failed' | 'challenged', required
    - `failure` object, required
      - `code` 'invalid_request' | 'unauthorized' | 'not_found' | 'upstream_challenged' | 'upstream_rate_limited' | 'upstream_error' | 'unsupported_page' | 'response_too_large' | 'unsafe_redirect' | 'request_limit' | 'timeout' | 'busy' | 'payload_too_complex', required
      - `message` string, required

## Other responses

- `400`: Request could not complete; inspect error or failure.code.
- `401`: Request could not complete; inspect error or failure.code.
- `402`: Request could not complete; inspect error or failure.code.
- `403`: Request could not complete; inspect error or failure.code.
- `404`: Request could not complete; inspect error or failure.code.
- `408`: Request could not complete; inspect error or failure.code.
- `413`: Request could not complete; inspect error or failure.code.
- `429`: Request could not complete; inspect error or failure.code.
- `500`: Request could not complete; inspect error or failure.code.
- `502`: Request could not complete; inspect error or failure.code.
- `503`: Request could not complete; inspect error or failure.code.
- `504`: Request could not complete; inspect error or failure.code.

---

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