Функционал API используется для интеграции с внешними системами (для интеграции с #588 Конструктор грейдеров).
Запрос | Что делает |
---|---|
/labs (GET) | Возвращает список лабораторных работ, которые можно автоматически проверить. { labs: [lab1, lab2...] } |
/requests/access (POST) //для интеграции с 588 | Принимает запрос (application/json), где в json в поле user_info находится JWT. Так же в поле time_for должно быть указано на какой срок предоставляется доступ |
/requests/grade (POST) //для интеграции с 588 | Принимает запрос (application/json), где в json в поле user_info находится JWT. В поле task_name указывается название проверяемой лабораторной (одна из лаб полученных запросов на /labs) |
В запросах в multipart/form-data
поле user_data
должен находится JWT токен из GC Bridge.
Запрос | Что делает |
---|---|
/requests/lti/access_lab (POST) | Отдает страницу с приложением Netlab_LTI. |
/requests/lti/request_creds (POST) | Добавляет пользователя в очередь для получения доступа. Если доступ уже предоставлен, выдает данные для входа в систему. |
/requests/lti/prolong_creds (POST) | Продляет доступ пользователя к системе. |
/requests/lti/request_grade (POST) | В поле запроса lab_id — uuid лабораторной работы. Добавляет пользователя в очередь для проверки работы. |
В заголовке запроса в поле Authorization
должен находится токен администратора.
Запрос | Что делает |
---|---|
/admin/grader_files/list (GET) | Перечисляет все файлы грейдера на сервере. |
/admin/grader_files/get (GET) | Переcылает конкретный файл грейдера. Имя файла нужно указать в параметре file |
/admin/grader_files/upload (POST) | Загружает на сервер файл для грейдера. Файл нужно приложить в multipart/form-data поле file |
/admin/grader_files/remove (POST) | Удаляет файл для грейдера на сервере. Имя файла нужно указать в параметре или поле file |
/admin/lab_alias/list (GET) | Перечисляет все ассоциации лабораторных с файлами грейдера. |
/admin/lab_alias/add (POST) | Добавляет ассоциацию лабораторной с файлом грейдера. Название работы указывается в поле или параметре lab_name , имя файла — в grader_config_file . |
/admin/lab_alias/remove (POST) | Удаляет ассоциацию лабораторной с файлом грейдера. Название работы указывается в поле или параметре lab_name , имя файла — в grader_config_file . |
/admin/lti_assignments/list (GET) | Перечисляет все работы, зарегестрированные в GC Bridge. |
/admin/lti_assignments/add (POST) | Добавляет работу в GC Bridge. Название работы указывается в поле или параметре lab_name , описание (опционально) — в description . |
/admin/lti_assignments/remove (POST) | Удаляет работу из GC Bridge. Идентификатор работы в GC Bridge указывается в поле или параметре assignment_id . |