> ## Documentation Index
> Fetch the complete documentation index at: https://docs.interchange.io/llms.txt
> Use this file to discover all available pages before exploring further.

# List storefronts

> List the storefronts you can transact with

`GET /api/v2/buyer/storefronts`

Lists the enabled storefronts visible to the buyer, as compact summary rows. Each summary carries scalar source counts instead of source-level detail. Fetch a single storefront for rolled-up connection state, or fetch storefront capabilities for source-level diagnostic rows. Filterable and offset-paginated.

## Request

<CodeGroup>
  ```bash List theme={null}
  curl "https://api.interchange.io/api/v2/buyer/storefronts?limit=20" \
    -H "Authorization: Bearer $SCOPE3_API_KEY"
  ```

  ```bash Filter by name and channel theme={null}
  curl "https://api.interchange.io/api/v2/buyer/storefronts?name=premium&channel=ctv&limit=20" \
    -H "Authorization: Bearer $SCOPE3_API_KEY"
  ```
</CodeGroup>

## Parameters

| Field        | In    | Type    | Required | Notes                                                                                                             |
| ------------ | ----- | ------- | -------- | ----------------------------------------------------------------------------------------------------------------- |
| `name`       | query | string  | No       | Partial, case-insensitive seller, company, brand, storefront, publisher/operator domain, or website match         |
| `status`     | query | enum    | No       | `configuring`, `transacting`, or `archived`                                                                       |
| `channel`    | query | string  | No       | ADCP channel the storefront carries (e.g. `display`, `ctv`)                                                       |
| `region`     | query | string  | No       | Region code the storefront covers (e.g. `EMEA`, `NORAM`, `APAC`)                                                  |
| `visibility` | query | enum    | No       | `public` (default) — marketplace-listed storefronts; `private` — all storefronts owned by the caller's parent org |
| `limit`      | query | integer | No       | Max per page (default 20, max 100)                                                                                |
| `offset`     | query | integer | No       | Pagination offset (default 0)                                                                                     |

## Response

```json theme={null}
{
  "items": [
    {
      "id": 42,
      "platformId": "premium-ctv",
      "name": "Premium CTV Storefront",
      "publisherDomain": "premium-ctv.example.com",
      "displayStatus": "transacting",
      "adapterProviderType": null,
      "supportedRoutingTypes": ["DECISIONED", "ROUTED"],
      "channels": ["CTV", "display"],
      "regions": ["US", "EMEA"],
      "sourceCount": 3,
      "connectedSourceCount": 1
    }
  ],
  "total": 1,
  "hasMore": false,
  "nextOffset": null
}
```

| Field                           | Type            | Notes                                                                                                                         |
| ------------------------------- | --------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `items`                         | array           | Storefront summary rows                                                                                                       |
| `items[].id`                    | integer         | Storefront ID                                                                                                                 |
| `items[].platformId`            | string          | Public-facing slug                                                                                                            |
| `items[].name`                  | string          | Storefront display name                                                                                                       |
| `items[].publisherDomain`       | string \| null  | Publisher domain                                                                                                              |
| `items[].displayStatus`         | enum            | `configuring`, `transacting`, `archived`                                                                                      |
| `items[].adapterProviderType`   | string \| null  | Adapter platform (e.g. `meta`), `null` for non-adapter                                                                        |
| `items[].supportedRoutingTypes` | array           | `DECISIONED` and/or `ROUTED`                                                                                                  |
| `items[].channels` / `regions`  | array           | Supported channels and covered regions                                                                                        |
| `items[].sourceCount`           | integer         | Total inventory sources                                                                                                       |
| `items[].connectedSourceCount`  | integer         | Sources the buyer is already wired to use, either because no buyer credentials are required or because credentials are active |
| `total`                         | integer         | Total matching storefronts                                                                                                    |
| `hasMore`                       | boolean         | Whether more pages exist                                                                                                      |
| `nextOffset`                    | integer \| null | Offset for the next page, or `null`                                                                                           |

## Errors

* `400 VALIDATION_ERROR` — invalid `status`/`visibility` enum or out-of-range `limit`.
* `401 UNAUTHORIZED` — missing or invalid bearer token.

See [Errors](/v2/reference/errors) for the full error contract.

## Related

<CardGroup cols={2}>
  <Card title="Storefront tasks" href="/v2/buyer/storefronts/tasks" icon="list-check">
    All storefront operations
  </Card>

  <Card title="Get storefront" href="/v2/buyer/storefronts/tasks/get-storefront" icon="magnifying-glass">
    Rolled-up connection state
  </Card>

  <Card title="Get storefront capabilities" href="/v2/buyer/storefronts/tasks/get-storefront-capabilities" icon="signal">
    Source-level capability diagnostics
  </Card>

  <Card title="Storefront object guide" href="/v2/object-guides/storefront" icon="store">
    Full model: sources, OAuth, seller side
  </Card>
</CardGroup>
