REST API

REST API простыми словами: URL и ресурсы, query-параметры, JSON и ответы, обработка ошибок, версионирование, OpenAPI, alias- и action-эндпоинты — с примерами на Java, Go, Node, Python.

REST — это не про то, чтобы «отдавать JSON по HTTP». Это набор соглашений, которые делают API предсказуемым: по адресу и методу заранее понятно, что произойдёт, а клиент и сервер могут развиваться независимо друг от друга. Когда соглашений нет, каждый эндпоинт становится сюрпризом — и интеграция превращается в чтение чужого кода вместо чтения контракта.

Раздел собирает эти соглашения по слоям: как называть ресурсы и строить адреса, какие методы за что отвечают, как передавать параметры и постраничную выдачу, в каком формате возвращать данные и — отдельно важное — ошибки. Плюс версионирование и описание контракта через OpenAPI, чтобы API можно было читать, не запуская.

Примеры даны на четырёх языках — Java, Go, Node и Python: сами принципы от языка не зависят, меняется только обвязка.