The Mystery API

Раскройте преступление, используя мощь Web API, RPC и GraphQL

Игра-тренажер

Предисловие от автора

Установка и начало работы

Шаги установки:

wget https://raw.githubusercontent.com/SnoweTiger/APIMystery/master/docker-compose.yml -O docker-compose.yml

docker-compose up -d

Проверка доступности

curl http://localhost:8080/ping

StatusCode: 200
StatusDescription: OK
Content: {"message":"pong"}

Часть 0: Погружение в чистый API

С чего начать

GETFITNOW_API_TOKEN = 'd901050d-07ec-4990-a05c-ab2178e2e09c'
CAKEBOOK_API_TOKEN  = 'd901050d-07ec-4990-a05c-ab2178e2e09c'
PERSON_ID           = 12345

POST http://localhost:8080/cakebook/api/events HTTP/1.1
Content-Type: application/json
Authorization: Bearer d901050d-07ec-4990-a05c-ab2178e2e09c

{
    "person_id": 12345,
    "start_date": 20251030,
    "end_date": 20251030
}

### Login Request
# @name login_response
POST http://localhost:8080/police/auth/login HTTP/1.1
Content-Type: application/json

{
    "login": "ApiFox",
    "password": "Fox2025"
}

### Search Report
POST http://localhost:8080/police/api/report/search HTTP/1.1
Content-Type: application/json
Authorization: Bearer {{login_response.response.body.token}}

{
    "date_from": 20251029,
    "date_to": 20251029,
    "type": "theft"
}

Как проверить результат расследования

PATCH http://localhost:8080/police/api/report HTTP/1.1
Content-Type: application/json
Authorization: Bearer YOUR_TOKEN

{
    "suspect_id": ID_ПОДОЗРЕВАЕМОГО,
    "suspect_name": "ИМЯ_ПОДОЗРЕВАЕМОГО",
    "report_id": ID_ОТЧЕТА
}

В будущих обновлениях