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

# Get an Etsy listing

`GET /v1/etsy/listing`

## Request

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

Read a public listing page: title, description, seller, prices and discounts, price range across variations, rating and review counts, gallery, availability and quantity, favourites, categories, item highlights and materials, variations with option prices, shipping origin and cost, returns policy, the embedded reviews and FAQ. 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
      - `title` string, required
      - `description` string, nullable, required
      - `seller` string, nullable, required
      - `shopId` string, nullable, required
      - `shopUrl` string, uri, nullable, required
      - `price` object, required
        - `current` number, nullable, required
        - `original` number, nullable, required
        - `currency` string, required
      - `discountPercent` integer, nullable, required
      - `priceRange` object, nullable, required
        - `min` number, required
        - `max` number, required
      - `rating` object, required
        - `average` number, nullable, required
        - `count` integer, nullable, required
      - `reviews_count` integer, nullable, required
      - `image_urls` string[], required
      - `availability` 'in_stock' | 'out_of_stock' | 'unknown', required
      - `quantity` integer, nullable, required
      - `inCarts` integer, nullable, required
      - `demandSignal` string, nullable, required
      - `favorites` integer, nullable, required
      - `categories` string[], required
      - `highlights` string[], required
      - `materials` string[], required
      - `variations` object[], required
        - `name` string, required
        - `options` object[], required
          - `id` string, nullable, required
          - `name` string, required
          - `price` number, nullable, required
      - `shipsFrom` string, nullable, required
      - `shippingCost` object, nullable, required
        - `amount` number, required
        - `currency` string, required
      - `returnsAccepted` boolean, nullable, required
      - `listedAt` string, nullable, required
      - `isStarSeller` boolean, required
      - `shopRating` object, required
        - `average` number, nullable, required
        - `count` integer, nullable, required
      - `shopSales` integer, nullable, required
      - `reviewTags` string[], required
      - `reviews` object[], required
        - `author` string, nullable, required
        - `date` string, nullable, required
        - `rating` number, nullable, required
        - `text` string, required
      - `faq` object[], required
        - `question` string, required
        - `answer` string, 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)
