Difference between revisions of "API"
(...) |
|||
| Line 1: | Line 1: | ||
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[API]] | Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[API]] | ||
| + | |||
| + | == Аутентификация == | ||
| + | |||
| + | Все API-методы поддерживают как аутентификацию с помощью cookie + session, | ||
| + | как для веб-браузера, так и аутентификацию с помощью API ключа. | ||
| + | |||
| + | API ключ создается в веб-интерфейсе мастера турнира или участника турнира. | ||
| + | Мастер турнира может создавать привилегированные ключи с привязкой | ||
| + | к турниру или без привязки к турниру, участник турнира может создавать | ||
| + | ключи API только для этого турнира. | ||
| + | |||
| + | === Создание привелигированного ключа API === | ||
| + | |||
| + | Для создания ключа в интерфейсе администратора выберите пункт меню | ||
| + | View / API Keys. Затем можно уточнить параметры создаваемого | ||
| + | ключа в разделе "Create new API key". | ||
| + | |||
| + | * "Duration" позволяет задать срок действия ключа. По-умолчанию он неограничен. | ||
| + | * "Contest ID" позволяет указать номер турнира, для которого действует ключ. Если не указать номер турнира, ключ действует для всех турниров. | ||
| + | * "Priv Level" позволяет задать уровень привилегий: "User" — обычный участнк турнира, "Observer" — наблюдатель, "Judge" — судья, "Admin" — администратор турнира. | ||
| + | |||
| + | Затем при нажатии на "Submit" будет создана новый ключ API. | ||
| + | |||
| + | В браузере отобразятся данные созданного ключа. Из них в текущей версии | ||
| + | требуется только "API key token" (это первая строка таблицы). | ||
| + | Например, пусть API key token равен <code>qUcNocRPJnK7iXE8Wm1ty6XfB5vUVVJIjSrYEmoha-c</code>. Чтобы использовать токен для аутентификации в запросах, | ||
| + | в http заголовок нужно добавить строку: | ||
| + | |||
| + | Authorization: Bearer AQAA<TOKEN> | ||
| + | |||
| + | То есть перед значением токена приписывается <code>AQAA</code>. | ||
== Привилегированный API == | == Привилегированный API == | ||
Revision as of 17:30, 2 February 2023
Навигация: Главная страница/Система ejudge/Использование/API
Contents
Аутентификация
Все API-методы поддерживают как аутентификацию с помощью cookie + session, как для веб-браузера, так и аутентификацию с помощью API ключа.
API ключ создается в веб-интерфейсе мастера турнира или участника турнира. Мастер турнира может создавать привилегированные ключи с привязкой к турниру или без привязки к турниру, участник турнира может создавать ключи API только для этого турнира.
Создание привелигированного ключа API
Для создания ключа в интерфейсе администратора выберите пункт меню View / API Keys. Затем можно уточнить параметры создаваемого ключа в разделе "Create new API key".
- "Duration" позволяет задать срок действия ключа. По-умолчанию он неограничен.
- "Contest ID" позволяет указать номер турнира, для которого действует ключ. Если не указать номер турнира, ключ действует для всех турниров.
- "Priv Level" позволяет задать уровень привилегий: "User" — обычный участнк турнира, "Observer" — наблюдатель, "Judge" — судья, "Admin" — администратор турнира.
Затем при нажатии на "Submit" будет создана новый ключ API.
В браузере отобразятся данные созданного ключа. Из них в текущей версии
требуется только "API key token" (это первая строка таблицы).
Например, пусть API key token равен qUcNocRPJnK7iXE8Wm1ty6XfB5vUVVJIjSrYEmoha-c. Чтобы использовать токен для аутентификации в запросах,
в http заголовок нужно добавить строку:
Authorization: Bearer AQAA<TOKEN>
То есть перед значением токена приписывается AQAA.