Що таке REST API?
REST API — найпоширеніший стиль побудови вебAPI, у якому кожен обʼєкт системи доступний за своєю адресою, а дія над ним задається HTTP-методом: GET — отримати, POST — створити, PUT — змінити, DELETE — видалити.
Адреса описує ресурс, метод — операцію. Запит GET /users/42 повертає дані користувача, DELETE /users/42 видаляє його. Відповідь містить дані — зазвичай у форматі JSON — і код статусу: 200 при успіху, 404 якщо обʼєкта немає, 401 за відсутності авторизації.
Ще одна важлива властивість REST — відсутність стану: кожен запит самодостатній і містить усе потрібне, включно з токеном авторизації. Сервер не памʼятає попередній запит, що спрощує масштабування.
Повʼязані терміни
API (Application Programming Interface) — це набір правил, за якими одна програма звертається до іншої: які запити можна надіслати, які параметри передати і в якому вигляді прийде відповідь. API дозволяє використовувати чужий сервіс, нічого не знаючи про його внутрішню будову.
JSONJSON (JavaScript Object Notation) — текстовий формат обміну даними, у якому інформація записується парами «ключ — значення». Його розуміють усі мови програмування, і саме ним найчастіше відповідають сучасні API.
WebhookВебхук — це спосіб отримувати сповіщення про події: ви вказуєте сервісу адресу, і щойно відбувається подія, він сам надсилає на цю адресу HTTP-запит із даними. Не ви питаєте «чи є новини?», а вам повідомляють, коли новина зʼявилася.
BackendBackend — серверна частина застосунку: вона зберігає й обробляє дані, містить бізнес-логіку, відповідає за авторизацію та безпеку й віддає результат фронтенду через API. Користувач її не бачить, але саме вона визначає, що застосунок уміє.
API TestingТестування API — перевірка серверних методів напряму, без інтерфейсу: тестувальник надсилає запит із певними параметрами й звіряє відповідь — дані, структуру, код статусу та час обробки.