Перейти к содержимому

API: auth

Статус: GA Доступ: по токену контракт API: 0.3.0 · capability 2026-09-03.1 Открыть как Markdown Открыть в Claude Открыть в ChatGPT

Mint Agent Token

Открыть отдельной страницей →

mint (or rotate) a scoped AGENT token + its contract grants.

Superuser-only. Creates (or reuses) the agent identity and REPLACES its grant pool with body.grants (default-deny — a contract not listed is inaccessible). Changing the pool or capabilities later is a grant edit, no re-mint needed. publish is granted only when listed explicitly: withhold on prod contracts by default).

Авторизация: нужен Authorization: Bearer <token>

ПараметрГдеОбязателенТипОписание
Idempotency-KeyheaderнетstringOptional.

Тело запроса: application/json — схема AgentTokenRequest

ПолеТипОбязательноОписание
emailstringнет
expires_daysintegerнет
full_namestring | nullнет
grantsмассив AgentGrantSpecда
revoke_priorbooleanнет

Пример:

{
"email": "agent@entherium.dev",
"expires_days": 90,
"full_name": "Partner agent",
"grants": [
{
"capabilities": [
"submit",
"launch",
"cancel",
"edit_config"
],
"salescontract": 40
}
],
"revoke_prior": true
}

Ответы:

КодСмыслТело
200Successful ResponseServiceTokenResponse
401Missing or invalid authentication credentialsErrorResponse
409The e-mail belongs to a non-agent user; refusing to convertErrorResponse
422Validation ErrorHTTPValidationError

Пример ответа (200):

{
"access_token": "eyJhbGciOiJIUzI1NiJ9.<payload>.<signature>",
"api_scope": "agent",
"email": "agent@entherium.dev",
"expires_in": 7776000,
"token_type": "bearer",
"user_guid": 5
}

Login

Открыть отдельной страницей →

OAuth2 password flow. username field is the user’s email.

Авторизация: токен не нужен

ПараметрГдеОбязателенТипОписание
Idempotency-KeyheaderнетstringOptional.

Тело запроса: application/x-www-form-urlencoded — схема Body_login_api_v1_auth_login_post

ПолеТипОбязательноОписание
client_idstring | nullнет
client_secretstring | nullнет
grant_typestring | nullнет
passwordstringда
scopestringнет
usernamestringда

Ответы:

КодСмыслТело
200Successful ResponseTokenPair
422Validation ErrorHTTPValidationError

Me

Открыть отдельной страницей →

Авторизация: нужен Authorization: Bearer <token>

Ответы:

КодСмыслТело
200Successful ResponseMeResponse
401Missing or invalid authentication credentialsErrorResponse

Пример ответа (200):

{
"email": "agent@entherium.dev",
"full_name": "Partner agent",
"guid": 5,
"is_active": true,
"is_superuser": false,
"is_team": false,
"last_login": "2026-09-03T08:12:41Z"
}

Refresh

Открыть отдельной страницей →

Exchange a refresh token for a new access token.

Авторизация: токен не нужен

ПараметрГдеОбязателенТипОписание
Idempotency-KeyheaderнетstringOptional.

Тело запроса: application/json — схема RefreshRequest

ПолеТипОбязательноОписание
refresh_tokenstringда

Пример:

{
"refresh_token": "<refresh token from /api/v1/auth/login>"
}

Ответы:

КодСмыслТело
200Successful ResponseAccessOnly
422Validation ErrorHTTPValidationError

Mint Service Token

Открыть отдельной страницей →

Mint (or rotate) a long-lived READ-ONLY access token for an external agent.

Superuser-only. The endpoint can only create/serve users with read-only agent scope — it is structurally unable to hand out full-access tokens. Re-minting reactivates a previously revoked user.

Авторизация: нужен Authorization: Bearer <token>

ПараметрГдеОбязателенТипОписание
Idempotency-KeyheaderнетstringOptional.

Тело запроса: application/json — схема ServiceTokenRequest

ПолеТипОбязательноОписание
emailstringнет
expires_daysintegerнет
full_namestring | nullнет
revoke_priorbooleanнет

Ответы:

КодСмыслТело
200Successful ResponseServiceTokenResponse
401Missing or invalid authentication credentialsErrorResponse
409The e-mail belongs to an existing non-read-only user; refusing to convertErrorResponse
422Validation ErrorHTTPValidationError

Пример ответа (200):

{
"access_token": "eyJhbGciOiJIUzI1NiJ9.<payload>.<signature>",
"api_scope": "agent",
"email": "agent@entherium.dev",
"expires_in": 7776000,
"token_type": "bearer",
"user_guid": 5
}

Revoke Service Token

Открыть отдельной страницей →

Revoke a read-only service user: deactivate + kill all minted tokens.

Effective immediately — auth re-reads the user row on every request. Only read-only agent identities are addressable here (404 otherwise), so a typo’d guid can never lock out a human/admin account.

Авторизация: нужен Authorization: Bearer <token>

ПараметрГдеОбязателенТипОписание
guidpathдаinteger
Idempotency-KeyheaderнетstringOptional.

Ответы:

КодСмыслТело
204Successful Response—
401Missing or invalid authentication credentialsErrorResponse
422Validation ErrorHTTPValidationError