Difference between revisions of "API:priv:submit-run-input"
From EjudgeWiki
(Created page with "Навигация: Главная страница/Система ejudge/Использование/API/API:priv:submit-run-input|submit-run-input...") |
(...) |
||
| (6 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[API]]/[[API:priv:submit-run-input|submit-run-input (привилегированный)]] | Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[API]]/[[API:priv:submit-run-input|submit-run-input (привилегированный)]] | ||
| + | |||
| + | Запрос отправляет на проверку файл с исходным кодом и тестовые данные, | ||
| + | на которых файл должен запускаться. | ||
| + | |||
| + | Уровень доступа: администратор в контесте (аутентификация с | ||
| + | помощью API key или EJSID/session_id). | ||
| + | |||
| + | Method: POST | ||
| + | |||
| + | Content-type: multipart/form-data | ||
| + | |||
| + | Параметры: | ||
| + | * <code>contest_id</code> (int) - идентификатор турнира | ||
| + | * <code>action</code> (string) — строка <code>submit-run-input</code> | ||
| + | * <code>sender_user_login</code> (string, optional) — логин пользователя, от имени которого выполняется посылка | ||
| + | * <code>sender_user_id</code> (int, optional) — user id пользователя (если не задан sender_user_login) | ||
| + | * <code>sender_ip</code> (string, optional) — IP-адрес отправителя | ||
| + | * <code>sender_ssl_flag</code> (int, optional) — 1, если протокол HTTPS; 0, если HTTP | ||
| + | * <code>prob_id</code> (string или int) — либо short_name (string) задачи, либо internal_name (string) задачи, либо id (int) задачи | ||
| + | * <code>lang_id</code> (string или int) — либо short_name (string) языка программирования, либо id (int) языка программирования | ||
| + | * <code>eoln_type</code> (int, optional) — тип преобразования концов строк | ||
| + | * <code>file</code> (string) — исходный код программы | ||
| + | * <code>text_form</code> (string) — исходный код программы (альтернатива для file) | ||
| + | * <code>file_input</code> (string) — входные данные для программы | ||
| + | * <code>text_form_input</code> (string) — входные данные для программы (альтернатива для file_input) | ||
| + | * <code>ext_user_kind</code>, <code>ext_user</code> — [[Внешние идентификаторы пользователей|внешний идентификатор пользователя]] ([[Изменения в версии 3.11.0|3.11.0]]). | ||
| + | * <code>notify_driver</code>, <code>notify_kind</code>, <code>notify_queue</code> — [[Нотификации во внешние системы|идентификатор очереди сообщений]] ([[Изменения в версии 3.11.0|3.11.0]]). | ||
| + | |||
| + | Response content type: application/json | ||
| + | |||
| + | В случае ошибки возвращается JSON: | ||
| + | |||
| + | { | ||
| + | "ok": false, | ||
| + | "server_time": UNIX-TIMESTAMP, | ||
| + | "action": "submit-run-input", | ||
| + | "error": { | ||
| + | "num": ERROR-CODE, | ||
| + | "symbol": ERROR-SYMBOL, | ||
| + | "message": ERROR-MESSAGE | ||
| + | } | ||
| + | } | ||
| + | |||
| + | В случае успеха возвращается JSON: | ||
| + | |||
| + | { | ||
| + | "ok": true, | ||
| + | "result": { | ||
| + | "submit_id": ID | ||
| + | } | ||
| + | } | ||
| + | |||
| + | Возвращается ID (int64), который следует использовать для запроса статуса посылки. | ||
Latest revision as of 17:36, 27 January 2024
Навигация: Главная страница/Система ejudge/Использование/API/submit-run-input (привилегированный)
Запрос отправляет на проверку файл с исходным кодом и тестовые данные, на которых файл должен запускаться.
Уровень доступа: администратор в контесте (аутентификация с помощью API key или EJSID/session_id).
Method: POST
Content-type: multipart/form-data
Параметры:
contest_id(int) - идентификатор турнираaction(string) — строкаsubmit-run-inputsender_user_login(string, optional) — логин пользователя, от имени которого выполняется посылкаsender_user_id(int, optional) — user id пользователя (если не задан sender_user_login)sender_ip(string, optional) — IP-адрес отправителяsender_ssl_flag(int, optional) — 1, если протокол HTTPS; 0, если HTTPprob_id(string или int) — либо short_name (string) задачи, либо internal_name (string) задачи, либо id (int) задачиlang_id(string или int) — либо short_name (string) языка программирования, либо id (int) языка программированияeoln_type(int, optional) — тип преобразования концов строкfile(string) — исходный код программыtext_form(string) — исходный код программы (альтернатива для file)file_input(string) — входные данные для программыtext_form_input(string) — входные данные для программы (альтернатива для file_input)ext_user_kind,ext_user— внешний идентификатор пользователя (3.11.0).notify_driver,notify_kind,notify_queue— идентификатор очереди сообщений (3.11.0).
Response content type: application/json
В случае ошибки возвращается JSON:
{
"ok": false,
"server_time": UNIX-TIMESTAMP,
"action": "submit-run-input",
"error": {
"num": ERROR-CODE,
"symbol": ERROR-SYMBOL,
"message": ERROR-MESSAGE
}
}
В случае успеха возвращается JSON:
{
"ok": true,
"result": {
"submit_id": ID
}
}
Возвращается ID (int64), который следует использовать для запроса статуса посылки.