Документация API Quickmock

Создавайте через JSON API один эндпоинт или полноценный multi-route workspace. Все примеры можно сразу копировать; веб-конструктор использует тот же контракт.

Скачать спецификацию OpenAPI 3.1

Создание мока

POST /api/mocks возвращает публичный URL и одноразовый admin_token. Сохраните его: обновление, удаление и приватные логи требуют Bearer-токен.

curl -X POST https://quickmock.dev/api/mocks \
  -H 'Content-Type: application/json' \
  -d '{"method":"GET","response_status":200,"content_type":"application/json","response_body":"{\"ok\":true}","ttl_seconds":604800}'

Именованные варианты ответа

Варианты делают краевые случаи детерминированными. Выберите вариант через X-Quickmock-Variant или __quickmock_variant; неизвестное имя возвращает обычную логику выбора.

"response_variants": [
  {"name":"not-found","status":404,"body":"{\"error\":\"not found\"}"}
]

curl -H 'X-Quickmock-Variant: not-found' https://quickmock.dev/m/<slug>
curl 'https://quickmock.dev/m/<slug>?__quickmock_variant=not-found'

Условные правила ответа

Правила проверяются по порядку, побеждает первое полное совпадение. Источники: method, path, query, header и JSON-пути тела. Операторы: equals, not_equals, contains и exists.

"response_rules": [{
  "name":"missing user",
  "variant":"not-found",
  "conditions":[{"source":"query","key":"id","operator":"equals","value":"missing"}]
}]

Multi-route workspace

Один slug может отдавать до 50 маршрутов method + path. Плейсхолдеры OpenAPI вида {id} совпадают с одним сегментом пути.

"routes": [
  {"method":"GET","path":"/users/{id}","response_status":200,"content_type":"application/json","response_body":"{\"id\":1}"},
  {"method":"POST","path":"/users","response_status":201,"content_type":"application/json","response_body":"{\"created\":true}"}
]

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

Логи запросов по умолчанию приватны. Можно отдельно отключить сохранение тела и IP отправителя; типичные заголовки с секретами всегда редактируются.

"logs_public": false,
"capture_body": true,
"capture_ip": false