# Belirteç al

`POST /oauth/token`

Form gövdesi (`application/x-www-form-urlencoded`). `authorization_code`: kod + `code_verifier` → 1 saatlik erişim belirteci (`mcp_…`) + 60 günlük yenileme belirteci (`mcpr_…`). `refresh_token`: her yenilemede yeni çift verilir, eskisi düşer. Kod yalnız bir kez kullanılır; ikinci kullanım o izinden verilmiş belirteçleri iptal eder.

## Gövde

| Alan | Tür | Açıklama |
|---|---|---|
| `grant_type` (zorunlu) | string | Akış. Değerler: `authorization_code`, `refresh_token` |
| `code` | string | Yetki kodu. |
| `redirect_uri` | string | Yetkilendirmedeki adres. |
| `code_verifier` | string | PKCE doğrulayıcısı. |
| `refresh_token` | string | Yenileme belirteci. |
| `client_id` (zorunlu) | string | İstemci kimliği. |
| `client_secret` | string | Gizli anahtarlı istemcilerde. |

## Yanıt

```json 200
{
  "access_token": "mcp_uBprY6…",
  "expires_in": 3600,
  "refresh_token": "mcpr_AXksm…",
  "scope": "crm.read crm.write",
  "token_type": "Bearer"
}
```
