CodeBattles
Github
RU_v3
RU_v3
  • О системе V3
  • Обзор
    • Интерфейс участника
    • Интерфейс администратора
      • Задачи
      • Чекеры
      • Соревнования
  • Настройка и установка системы
    • Установка
      • Локальная установка
      • Production установка
  • Первое соревнование
    • Создать соревнование
  • Инструкции
    • Соревнование
      • Создание соревнования
      • Редактирование чекеров соревнования
      • Редактирование пользователей соревнования
      • Редактирование задач соревнования
    • Задачи
      • Добавить задачу
      • Изменить задачу
      • Удалить задачу
    • Пользователи
      • Регистрация пользователей
    • Чекеры
      • Создание чекера
      • Изменение чекера
      • Удаление чекера
  • Как работает система
    • Архитектура
    • Безопасность
  • API
    • Введение в API
    • Backend
      • Checkers
      • Competition Problems
      • Users
      • Answer
      • Competitions
      • Ping Pong
      • Problems
      • Auth
      • Checker system API
      • Models
    • Checker API
      • HealthCheck
      • Test
Powered by GitBook
On this page

Was this helpful?

  1. API
  2. Backend

Checkers

PreviousBackendNextCompetition Problems

Was this helpful?

Endpoints for managing checkers

[ADMIN] Get checker by ID

get

Retrieves a checker by its ID. Required admin role.

Authorizations
Path parameters
idinteger · int64Required
Responses
200
OK
*/*
401
Unauthorized
*/*
403
Forbidden
*/*
500
Internal Server Error
*/*
get
GET /api/checkers/{id} HTTP/1.1
Host: localhost:8080
Authorization: Bearer JWT
Accept: */*
{
  "id": 1,
  "displayName": "Default Python3 Checker",
  "languageHighlightName": "python"
}

[ADMIN] Delete a checker

delete

Deletes a specific checker by its ID. Required admin role.

Authorizations
Path parameters
idinteger · int64Required
Responses
200
OK
*/*
401
Unauthorized
*/*
403
Forbidden
*/*
500
Internal Server Error
*/*
delete
DELETE /api/checkers/{id} HTTP/1.1
Host: localhost:8080
Authorization: Bearer JWT
Accept: */*
{
  "displayName": "text",
  "languageHighlightName": "text",
  "address": "text",
  "id": 1,
  "createdAt": "2025-05-24T08:25:50.416Z",
  "updatedAt": "2025-05-24T08:25:50.416Z"
}

[ADMIN] Get checker by ID (extra fields)

get

Retrieves a checker by its ID with admin-level access. Required admin role.

Authorizations
Path parameters
idinteger · int64Required
Responses
200
OK
*/*
401
Unauthorized
*/*
403
Forbidden
*/*
500
Internal Server Error
*/*
get
GET /api/checkers/{id}/admin HTTP/1.1
Host: localhost:8080
Authorization: Bearer JWT
Accept: */*
{
  "displayName": "text",
  "languageHighlightName": "text",
  "address": "text",
  "id": 1,
  "createdAt": "2025-05-24T08:25:50.416Z",
  "updatedAt": "2025-05-24T08:25:50.416Z"
}
  • GET[ADMIN] Get all checkers
  • POST[ADMIN] Create a checker
  • GET[ADMIN] Get checker by ID
  • DELETE[ADMIN] Delete a checker
  • PATCH[ADMIN] Update a checker
  • GET[ADMIN] Get checker by ID (extra fields)

[ADMIN] Get all checkers

get

Retrieves a list of all checkers. Required admin role.

Authorizations
Responses
200
OK
*/*
401
Unauthorized
*/*
403
Forbidden
*/*
500
Internal Server Error
*/*
get
GET /api/checkers HTTP/1.1
Host: localhost:8080
Authorization: Bearer JWT
Accept: */*
[
  {
    "id": 1,
    "displayName": "Default Python3 Checker",
    "languageHighlightName": "python"
  }
]

[ADMIN] Create a checker

post

Creates a new checker. Required admin role.

Authorizations
Body

Details for creating a new checker

displayNamestringRequired

Display name of the checker

Example: Python Checker
languageHighlightNamestringRequired

Language highlight name for the checker

Example: python
addressstringRequired

Address of the checker service

Example: http://localhost:8080
Responses
200
OK
*/*
401
Unauthorized
*/*
403
Forbidden
*/*
500
Internal Server Error
*/*
post
POST /api/checkers HTTP/1.1
Host: localhost:8080
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 99

{
  "displayName": "Python Checker",
  "languageHighlightName": "python",
  "address": "http://localhost:8080"
}
{
  "displayName": "text",
  "languageHighlightName": "text",
  "address": "text",
  "id": 1,
  "createdAt": "2025-05-24T08:25:50.416Z",
  "updatedAt": "2025-05-24T08:25:50.416Z"
}

[ADMIN] Update a checker

patch

Applies partial updates to a checker by its ID. Required admin role.

Authorizations
Path parameters
idinteger · int64Required
Body
anyOptional
Responses
200
OK
*/*
401
Unauthorized
*/*
403
Forbidden
*/*
500
Internal Server Error
*/*
patch
PATCH /api/checkers/{id} HTTP/1.1
Host: localhost:8080
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
{
  "displayName": "text",
  "languageHighlightName": "text",
  "address": "text",
  "id": 1,
  "createdAt": "2025-05-24T08:25:50.416Z",
  "updatedAt": "2025-05-24T08:25:50.416Z"
}