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

# Generate API key

> Generate a free API key to access the production API (api.mobula.io) with enhanced rate limits and optimized performance.

<Note>
  **Demo API Available**: You can test all endpoints using **demo-api.mobula.io** without an API key. This demo API is rate-limited and for testing purposes only. For production use, generate an API key below.
</Note>

<Steps>
  <Step title="First Step">
    Sign-in to the [Dashboard](https://admin.mobula.io/auth/sign-in?redirect_url=https%3A%2F%2Fadmin.mobula.io%2F)

    <Frame>
      <img src="https://i.imgur.com/6k9DBZM.png" />
    </Frame>
  </Step>

  <Step title="Second Step">
    Create your API key

    <Frame>
      <img src="https://i.imgur.com/gtr12UF.png" />
    </Frame>
  </Step>

  <Step title="Third Step">
    To make your first call add your API key in the `header` parameter like this `Authorization: YOUR_API_KEY`

    ```cURL theme={null}
    curl --request GET \

        --url 'https://api.mobula.io/api/1/wallet/nfts?wallet=0xCe90a7949bb78892F159F428D0dC23a8E3584d75&force=true' \
        --header 'Authorization: YOUR_API_KEY'

    ```
  </Step>
</Steps>

## How to send your API key

**Static API key** (from the dashboard) can be sent in either way:

* **Authorization header**: `Authorization: YOUR_API_KEY` or `Authorization: Bearer YOUR_API_KEY`
* **x-api-key header**: `x-api-key: YOUR_API_KEY`

## Short-lived API tokens

Short-lived tokens are JWTs you create from your static API key. They expire after a set duration and have a configurable request limit. Use them when you need to hand a limited, time-bound credential to a client (e.g. server issuing tokens for a frontend or worker) instead of sharing your main API key.

<Warning>
  **Short-lived tokens must be sent as Bearer only.** Use the header `Authorization: Bearer <token>`. Do **not** send short-lived tokens in the `x-api-key` header.
</Warning>

**Create, list, inspect, and revoke** short-lived tokens via the [Auth Tokens API](/rest-api-reference/endpoint/auth-tokens):

| Action            | Method   | Endpoint                        |
| ----------------- | -------- | ------------------------------- |
| Create tokens     | `POST`   | `/api/2/auth/tokens`            |
| List your tokens  | `GET`    | `/api/2/auth/tokens`            |
| Inspect one token | `GET`    | `/api/2/auth/token?token=<jwt>` |
| Revoke a token    | `DELETE` | `/api/2/auth/tokens/:id`        |

All auth token endpoints require your **static API key** in the `Authorization` header (or `x-api-key`). After creating a short-lived token, use it to call any Mobula API by sending **only**:

```bash theme={null}
Authorization: Bearer <your-short-lived-jwt>
```

Short-lived tokens are available on **Startup, Growth, and Enterprise** plans. Create them from the [Auth Tokens API](/rest-api-reference/endpoint/auth-tokens).

<CardGroup>
  <Card title="Support" icon="Telegram" href="https://t.me/mobuladevelopers?start=Mobula_API_Support_Key">
    Telegram
  </Card>

  <Card title="Support" icon="Slack" href="https://join.slack.com/t/mobulaapi/shared_invite/zt-29zrrpjnl-I0tyD73sy7zKy8q~KLL3Ug">
    Slack
  </Card>

  <Card title="Support" icon="Discord" href="https://discord.gg/JVT7xKm3AD">
    Discord
  </Card>

  <Card title="Need help?" icon="envelope" href="mailto:contact@mobulalabs.org">
    Email
  </Card>
</CardGroup>
