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

# API Keys

> Programmatic access to the Proceeds API. Each key is shown once — store it securely.

API keys let you manage services and paywalls from CI, scripts, or your own backend. Create them on the **API Keys** page in the dashboard. Each key is shown once — copy it somewhere safe.

Keys use an `mpk_` prefix. Send them as `Authorization: Bearer mpk_…` or `X-Api-Key: mpk_…`. Full details: [Authentication](/api-reference/authentication).

## Create a key

Click **+ Create key** and fill in:

| Field            | Description                                                                                            |
| ---------------- | ------------------------------------------------------------------------------------------------------ |
| **Name**         | A label you'll recognize later — for example `Production CI`                                           |
| **Permissions**  | Scopes for this key (`services:read/write`, `paywalls:read/write`, `transactions:read`, `events:read`) |
| **Expires**      | Optional expiry date                                                                                   |
| **IP allowlist** | Optional IPs or CIDR blocks that may use the key                                                       |

Use **Select all** if the key should have every scope. You can hold up to **20** active keys.

<Warning>
  The plaintext key is shown only at creation. Store it in a secret manager — never in client-side code or git.
</Warning>

## Permissions

| Scope                              | Grants                    |
| ---------------------------------- | ------------------------- |
| `services:read` / `services:write` | List and manage services  |
| `paywalls:read` / `paywalls:write` | List and manage paywalls  |
| `transactions:read`                | Read payment transactions |
| `events:read`                      | Read lifecycle events     |

Write scopes include the matching read scope.

## Manage keys

From the API Keys table you can pause, edit, or delete a key. The table shows name, status, key prefix, permissions, created date, and last used.

## Next

<CardGroup cols={2}>
  <Card title="Authentication" icon="key" href="/api-reference/authentication">
    Headers, scopes, and `GET /v1/me`.
  </Card>

  <Card title="Create a service" icon="server" href="/api-reference/create-a-service">
    Use your key to create a service via the API.
  </Card>
</CardGroup>
