Токены API
Управление токенами Bearer для программной аутентификации (боты, центральные панели, действующие от имени этого узла, CI). У каждого токена есть уникальное имя и флаг активности — отключите токен, чтобы отозвать его без удаления, либо удалите, чтобы отозвать окончательно. Токены хранятся в виде хешей SHA-256, а открытый текст возвращается лишь один раз, в ответе на создание — впоследствии получить его нельзя, поэтому скопируйте его сразу. Передавайте токен как <code>Authorization: Bearer <token></code> в любом запросе /easyxray/api/v1/* — такой токен даёт полные права администратора.
AuthorizationBearer <token>API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.
Successful response
application/json- response
success?booleanmsg?stringobj?unknowncurl -X GET "https://example.com/easyxray/api/v1/setting/apiTokens"{ "success": true, "obj": [ { "id": 1, "name": "default", "enabled": true, "createdAt": 1736000000 } ]}AuthorizationBearer <token>API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.
application/json- body
name*stringHuman-readable label, e.g. "central-panel-a".
scope?stringadmin (default), monitor, or node-sync.
expiresAt?integerFuture Unix milliseconds, or 0 for no expiry.
Successful response
application/json- response
success?booleanmsg?stringobj?curl -X POST "https://example.com/easyxray/api/v1/setting/apiTokens/create" \ -H "Content-Type: application/json" \ -d '{ "name": "central-panel-a", "scope": "node-sync", "expiresAt": 1798761600000 }'{ "success": true, "obj": { "createdAt": 1736000000, "enabled": true, "expiresAt": 0, "id": 2, "name": "central-panel-a", "scope": "admin", "token": "new-token-string" }}AuthorizationBearer <token>API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.
id*integerToken row ID.
application/json- body
expectedScope*stringStored scope expected by the operator.
Successful response
application/json- response
success?booleanmsg?stringobj?unknowncurl -X POST "https://example.com/easyxray/api/v1/setting/apiTokens/delete/0" \ -H "Content-Type: application/json" \ -d '{ "expectedScope": "node-sync" }'{ "success": true}AuthorizationBearer <token>API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.
id*integerToken row ID.
application/json- body
enabled*booleanNew enabled state.
expectedScope*stringStored scope expected by the operator.
Successful response
application/json- response
success?booleanmsg?stringobj?unknowncurl -X POST "https://example.com/easyxray/api/v1/setting/apiTokens/setEnabled/0" \ -H "Content-Type: application/json" \ -d '{ "enabled": false, "expectedScope": "node-sync" }'{ "success": true}Аутентификация
Поддерживаются два режима аутентификации. Сессии веб-интерфейса используют cookie, устанавливаемый эндпоинтом входа. Программные клиенты (боты, скрипты, удалённые панели) аутентифицируются с помощью Bearer-токена, взятого из Settings → Security → API Token. Оба способа работают для всех эндпоинтов под /easyxray/api/v1/*.
Входящие подключения
Управление конфигурациями входящих подключений и их клиентами. Все эндпоинты находятся в /easyxray/api/v1/inbounds и требуют активной сессии входа или Bearer-токена. Эндпоинты, генерирующие ссылки, учитывают перенаправленные заголовки только тогда, когда запрос приходит от настроенного доверенного прокси.

EasyXray