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

# Introduction

> The Adspo API gives you programmatic access to ad creative data across brands.

## Using with AI

Drop one of these into any AI tool or agent alongside your API key:

```
https://docs.adspo.co/llms.txt
```

```
https://docs.adspo.co/llms-full.txt
```

The first is a summary, the second is the full docs. Works with Claude, ChatGPT, Gemini, and anything else with web access.

## Authentication

All endpoints require an API key passed in the `x-api-key` header.

```bash theme={null}
x-api-key: YOUR_API_KEY
```

## Rate limits

| Limit               | Value                   |
| ------------------- | ----------------------- |
| Requests per minute | 120                     |
| Credits             | Check your API settings |

Each request costs **1 credit**. Exceeding either limit returns a `429` response.
Your quota resets at the start of each billing period — the `resets_at` field in
a `429` response tells you exactly when.

## Pagination

Paginated endpoints use **cursor-based pagination**. When more results are available, the response includes a `next_cursor` value. Pass it as the `cursor` query parameter to fetch the next page.

```bash theme={null}
GET /v1/creatives?cursor=<next_cursor>
```

<Warning>
  Cursors are tied to the `order_by` value used when they were generated. Do not
  reuse a cursor after changing sort order.
</Warning>

## Errors

All errors return a consistent JSON shape:

```json theme={null}
{ "error": "Human-readable message" }
```

| Status | Meaning                              |
| ------ | ------------------------------------ |
| `401`  | Missing or invalid API key           |
| `404`  | Resource not found                   |
| `429`  | Rate limit or monthly quota exceeded |
| `500`  | Internal server error                |
