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) &mdash; строка <code>submit-run-input</code>
 +
* <code>sender_user_login</code> (string, optional) &mdash; логин пользователя, от имени которого выполняется посылка
 +
* <code>sender_user_id</code> (int, optional) &mdash; user id пользователя (если не задан sender_user_login)
 +
* <code>sender_ip</code> (string, optional) &mdash; IP-адрес отправителя
 +
* <code>sender_ssl_flag</code> (int, optional) &mdash; 1, если протокол HTTPS; 0, если HTTP
 +
* <code>prob_id</code> (string или int) &mdash; либо short_name (string) задачи, либо internal_name (string) задачи, либо id (int) задачи
 +
* <code>lang_id</code> (string или int) &mdash; либо short_name (string) языка программирования, либо id (int) языка программирования
 +
* <code>eoln_type</code> (int, optional) &mdash; тип преобразования концов строк
 +
* <code>file</code> (string) &mdash; исходный код программы
 +
* <code>text_form</code> (string) &mdash; исходный код программы (альтернатива для file)
 +
* <code>file_input</code> (string) &mdash; входные данные для программы
 +
* <code>text_form_input</code> (string) &mdash; входные данные для программы (альтернатива для file_input)
 +
* <code>ext_user_kind</code>, <code>ext_user</code> &mdash; [[Внешние идентификаторы пользователей|внешний идентификатор пользователя]] ([[Изменения в версии 3.11.0|3.11.0]]).
 +
* <code>notify_driver</code>, <code>notify_kind</code>, <code>notify_queue</code> &mdash; [[Нотификации во внешние системы|идентификатор очереди сообщений]] ([[Изменения в версии 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-input
  • sender_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, если HTTP
  • prob_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), который следует использовать для запроса статуса посылки.