API:priv:get-submit
From EjudgeWiki
Навигация: Главная страница/Система ejudge/Использование/API/get-submit (привилегированный)
Запрос возвращает информацию о посылке, отправленной с помощью submit-run-input
Уровень доступа: администратор в контесте (аутентификация с помощью API key или EJSID/session_id).
Method: GET
Параметры:
- action (string) - строка get-submit
- submit_id (int64) - ID посылки
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, "user_id": USER-ID, "prob_id": PROB-ID, "lang_id": LANG-ID, "status": STATUS, "status_str": STATUS-SHORT-STR, "compiler_output": COMPILER-MESSAGES, "test_checker_output": TEST-CHECKER-MESSAGES, "time": CPU-TIME, "real_time": REAL-TIME, "exit_code": PROCESS-EXIT-CODE, "term_signal": TERMINATION-SIGNAL, "max_memory_used": VIRT-MEM-USE, "max_rss": MEMORY-USE, "input": INPUT, "output": OUTPUT-TEXT, "error": ERROR-TEXT } }
Пример кода на python:
import requests import os URL = 'http://HOST/cgi-bin/master' TOKEN = 'TOKEN' CONTEST_ID = 1 RUN_ID = 50 headers = { "Authorization": "Bearer AQAA" + TOKEN } data = { "contest_id" : CONTEST_ID, "json" : 1, "action" : "run-status-json", "run_id" : RUN_ID, }
response = requests.post(URL, data=data, headers=headers) print(response.json())