vyvchy
    ← Тренажери

    Тренажер API

    Чотири формати без бекенду: збери запит проти мок-сервера, прожени HTTP-дриль на методи й статуси, напиши JSONPath-асерт до живої JSON-відповіді та познач schema drift проти OpenAPI. Прогрес зберігається у браузері.

    Теорія: розділ API →
    Рівень 1 з 24Побудуй запитзапитилегко

    Замовлення користувача

    Отримай список замовлень користувача з id 5.

    Довідник API— ресурси, ендпоінти, прикладирозгорнути

    Користувачі

    /users
    GET/users/:id/orders

    Замовлення користувача (вкладена колекція)

    Path-параметри

    • idintegerобовʼязковоid користувача

    Коди

    • 200 OK
    • 404 користувача не знайдено

    Приклад відповіді

    {
      "userId": 5,
      "orders": [
        {
          "id": 1001,
          "status": "paid",
          "total": 980
        }
      ]
    }
    PUT/users/:id

    Повна заміна користувача (усі поля)

    Path-параметри

    • idintegerобовʼязковоid користувача

    Тіло запиту

    • namestringобовʼязково
    • emailstringобовʼязково
    • rolestringобовʼязково

    Коди

    • 200 оновлено
    • 422 невалідні поля

    Приклад відповіді

    {
      "id": 5,
      "name": "Іван",
      "email": "ivan@example.com",
      "role": "qa"
    }

    Замовлення

    /orders
    GET/orders

    Список замовлень із пагінацією та фільтром

    Query-параметри

    • pageintegerномер сторінки
    • statusstringфільтр за статусом

    Коди

    • 200 OK

    Приклад відповіді

    {
      "page": 2,
      "perPage": 20,
      "total": 57,
      "orders": [
        {
          "id": 1044,
          "status": "paid",
          "total": 300
        }
      ]
    }
    GET/orders/:id

    Одне замовлення за id

    Path-параметри

    • idintegerобовʼязковоid замовлення

    Коди

    • 200 OK
    • 404 не знайдено

    Приклад відповіді

    {
      "id": 1002,
      "status": "new",
      "total": 250
    }
    PATCH/orders/:id

    Часткове оновлення (лише передані поля)

    Path-параметри

    • idintegerобовʼязковоid замовлення

    Тіло запиту

    • statusstringнове значення статусу

    Коди

    • 200 оновлено
    • 404 не знайдено

    Приклад відповіді

    {
      "id": 1024,
      "status": "shipped",
      "total": 980
    }
    DELETE/orders/:id

    Видалити замовлення (ідемпотентно)

    Path-параметри

    • idintegerобовʼязковоid замовлення

    Коди

    • 204 видалено, тіла нема
    • 404 уже відсутнє

    Приклад відповіді

    (порожнє тіло)

    Товари

    /products
    POST/products

    Створити товар

    Тіло запиту

    • namestringобовʼязково
    • pricenumberобовʼязково

    Коди

    • 201 створено, у тілі новий id
    • 422 невалідні поля

    Приклад відповіді

    {
      "id": 77,
      "name": "Килимок для миші",
      "price": 250
    }

    Акаунт

    /account
    GET/account

    Приватний профіль поточного користувача (потрібен токен)

    Коди

    • 200 OK (з валідним токеном)
    • 401 нема/битий токен
    • 403 токен є, але бракує прав

    Приклад відповіді

    {
      "id": 5,
      "name": "Іван",
      "email": "ivan@example.com"
    }