---
title: Autenticação
description: Chaves de API, modos real e de teste, e níveis de acesso.
sidebar:
  order: 2
---
Envie sua chave como um bearer token em todas as requisições:

```txt
Authorization: Bearer tc_live_…
```

`X-Api-Key: tc_live_…` também funciona.

## Chaves reais e de teste [#live-and-test-keys]

O prefixo mostra o modo de uma chave num relance:

- **`tc_live_…`** gasta seu saldo real e aposenta créditos reais. As respostas trazem `"livemode": true`.
- **`tc_test_…`** gasta um saldo simulado. As respostas trazem `"livemode": false`. Veja [Modo de teste](/docs/pt/test-mode).

Os dados reais e de teste são separados: uma chave de teste nunca vê compensações reais, e vice-versa.

## Acesso [#access]

Cada chave tem um de dois níveis de acesso, definido quando você a cria:

| Acesso | Pode |
| --- | --- |
| Somente leitura | Consultar o saldo, cotações, compensações e impacto. |
| Leitura e compra | Tudo acima, e comprar compensações. |

Use uma chave somente leitura em dashboards e relatórios. Uma compra com uma chave somente leitura falha com `403 insufficient_permissions`.

## Mantenha as chaves em segredo [#keep-keys-secret]

- Use as chaves **somente no seu servidor**. A API não envia cabeçalhos CORS, então os navegadores não conseguem chamá-la com uma chave.
- Armazene as chaves como segredos (variáveis de ambiente, um gerenciador de segredos), nunca no código.
- Crie uma chave por sistema, para poder revogar uma sem afetar as outras.
- Se uma chave vazar, revogue-a imediatamente na página Desenvolvedores. As requisições com ela falham a partir de então. Você é responsável pelas compras feitas com suas chaves.

## Erros [#errors]

| Status | Código | Quando |
| --- | --- | --- |
| 401 | `invalid_api_key` | A chave está ausente, malformada, é desconhecida ou foi revogada. |
| 403 | `api_access_inactive` | A conta não foi aprovada ou está suspensa. Uma conta suspensa ainda pode ler. |
| 403 | `insufficient_permissions` | Uma chave somente leitura tentou comprar. |
| 429 | `rate_limited` | Requisições demais para esta chave. Veja [Limites](/docs/pt/limits). |
