---
updatedAt: 2026-09-09T17:06:57.000Z
---

Fetch the complete documentation index at: https://developer.usebutton.com/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# Retailer Coverage

The set of retailers available to your organization can change independent
of any client release — a retailer can be added, temporarily disabled, or
your organization's specific access can change. **Don't hard-code a retailer
slug list.** Call `GET /v1/retailers` to get the current, live list of slugs
your organization can use:

```shell
curl https://atlas.usebutton.com/v1/retailers \
  -H "Authorization: Bearer YOUR_API_KEY"
```

```json
{
  "retailers": [
    { "slug": "amazon", "name": "Amazon", "domains": ["amazon.com"] },
    { "slug": "walmart", "name": "Walmart", "domains": ["walmart.com"] }
  ]
}
```

Use the `slug` value as the `retailer` parameter anywhere the API accepts
one — for example `GET /v1/products/amazon/{product_id}`.

As of the private beta, Amazon and Walmart are supported. More retailers are
being added; check this endpoint rather than a static list to stay current,
and watch the [changelog](./changelog-and-versioning.md) for announcements.

If you request a retailer slug your organization isn't entitled to, or one
that doesn't exist, you'll get a `403` or `400` respectively rather than a
silent empty result — see [Getting Started](./getting-started.md#errors) for
the full error contract.

## Mapping a URL to a retailer

You don't need to know a link's retailer to look it up — send the URL
directly to [`GET /v1/products?url=`](./looking-up-products.md#by-product-url)
and Product Atlas resolves it server-side.

If your own code wants to identify the retailer *before* calling the API —
for example, to decide which UI to show, or to route a paste-a-link flow —
match the URL's host against `domains` instead of hard-coding a domain-to-slug
table:

```json
{ "slug": "amazon", "name": "Amazon", "domains": ["amazon.com"] }
```

`domains` is always present on each entry (`[]` if none are configured for
that retailer yet) and, like the slug list itself, can change over time, so
re-check it rather than caching a domain map indefinitely.