# FAQ

## Do this first

In a terminal, send one request directly with your key. This skips every client, and the result tells you where the problem is:

```bash
  curl -sS https://2api.dev/v1/models -H "Authorization: Bearer sk-your-key"
  ```
  ```bash
  curl -sS https://2api.dev/v1/messages \
    -H "Authorization: Bearer sk-your-key" \
    -H "anthropic-version: 2023-06-01" \
    -H "content-type: application/json" \
    -d '{"model":"model-name","max_tokens":16,"messages":[{"role":"user","content":"hi"}]}'
  ```
  ```bash
  curl -sS https://2api.dev/v1/responses \
    -H "Authorization: Bearer sk-your-key" \
    -H "content-type: application/json" \
    -d '{"model":"model-name","input":"hi"}'
  ```
  In Windows PowerShell, replace `curl` with `curl.exe` and join the lines that end in `\` into one line.

| Self-check result | What it means | Where to look |
| --- | --- | --- |
| Returns content normally | The key and the address are fine. The problem is in the client config | The category for your tool |
| Returns 401 | The key is wrong, deleted or disabled | [Account and quota](https://docs.2api.dev/en/faq/account/) |
| Returns 403 / 429 with a message in Chinese | A quota, group or rate-limit problem. Follow the message | [Account and quota](https://docs.2api.dev/en/faq/account/), [Network and error codes](https://docs.2api.dev/en/faq/network/) |
| Says the model does not exist | The key and the address are fine. Only the model name is wrong | Look up the model name with `/v1/models` |
| Can't connect, or times out | A network or proxy problem | [Network and error codes](https://docs.2api.dev/en/faq/network/) |

## Find by category

<TileGrid>
  <LinkTile title="Account and quota" href="/en/faq/account/" icon="document">
    Redemption fails, errors despite having quota, when quota resets, keys and groups.
  </LinkTile>
  <LinkTile title="Claude Code" href="/en/faq/claude-code/" icon="seti:shell">
    Repeated login prompts, Invalid API key, auth conflict, model not found, higher charges than expected.
  </LinkTile>
  <LinkTile title="Codex" href="/en/faq/codex/" icon="seti:config">
    401, stream disconnected, repeated Reconnecting, models and reasoning levels.
  </LinkTile>
  <LinkTile title="Codex install and sign-in" href="/en/faq/codex-setup/" icon="setting">
    Command not found, scripts disabled, stuck sign-in, Token exchange failed, region messages.
  </LinkTile>
  <LinkTile title="Other clients" href="/en/faq/clients/" icon="puzzle">
    Doubled /v1, Cherry Studio, Cursor, CC Switch, magpie, Claude Desktop.
  </LinkTile>
  <LinkTile title="Network and error codes" href="/en/faq/network/" icon="warning">
    Proxy interference, 429, 503, 529, timeouts.
  </LinkTile>
  <LinkTile title="ChatGPT" href="/en/faq/chatgpt/" icon="comment">
    Still on Free after a top-up, repeated sign-in prompts, network errors, app downloads, missing chat history.
  </LinkTile>
</TileGrid>