---
title: "Обмін коду авторизації на токен"
method: POST
path: "/oauth/token"
---

# Обмін коду авторизації на токен

`POST /oauth/token`

## Request

- Base URL: `https://rombik.app/api/v1`
- URL: `https://rombik.app/api/v1/oauth/token`
- Auth: none required

Вхід «через rombik» у три кроки. 1) Опублікуй на своєму домені JSON-документ метаданих клієнта (CIMD) {"client_id": "<URL цього документа>", "client_name": "…", "redirect_uris": ["https://…/callback"]} — його https-URL і є client_id, реєстрація не потрібна; користувач на сторінці згоди бачить домен застосунку. Конфіденційного клієнта з секретом видає адміністрація rombik на запит. 2) Відправ користувача на https://rombik.app/oauth/authorize?response_type=code&client_id=…&redirect_uri=…&scope=openid+email+api&state=…&code_challenge=…&code_challenge_method=S256. 3) Обміняй code тут. Метадані: https://rombik.app/.well-known/oauth-authorization-server, OIDC — https://rombik.app/.well-known/openid-configuration. RFC 6749; тіло — application/x-www-form-urlencoded. Секрет конфіденційного клієнта передається у формі (client_secret) або в HTTP Basic. CIMD-клієнт секрета не має і зобов’язаний використати PKCE S256, redirect_uri мусить збігатися з тим, що був в authorize. Отриманий access_token — це звичайний ключ API rombik (rk_…): ним викликають /render і решту ендпоінтів, а рендер іде за тарифом користувача, який дав згоду (потрібен Pro). Термін дії не обмежений; користувач відкликає доступ у своєму акаунті (ключ зникає). Зі scope openid у відповіді додатково приходить id_token (RS256; ключі — GET /oauth/jwks).

## Response `200`

Токен доступу (плюс id_token за scope openid)

- OAuthTokenResponse
  - `access_token` string: ключ API rombik (rk_…) — ним викликають /render та інші ендпоінти
  - `token_type` 'bearer'
  - `scope` string: видані області, розділені пробілом
  - `id_token` string: JWT RS256 з ідентичністю (лише зі scope openid): iss, sub, aud, exp, email, email_verified, name, nonce

## Other responses

- `400`: Помилка OAuth (RFC 6749 §5.2)
- `401`: Помилка OAuth (RFC 6749 §5.2)

---

[API](https://skmtc.dev/rombik/apis/rombik-api.md) · [All operations](https://skmtc.dev/rombik/apis/rombik-api/llms.txt) · [OpenAPI document](https://skmtc.dev/rombik/apis/rombik-api/revisions/acaa43ba308c?raw)
