Что такое API
API (Application Programming Interface) — это интерфейс программирования приложения. По сути, API — это посредник, с помощью которого одна программа общается с другой: отправляет запрос в формате кода и получает ответ.
Слово «интерфейс» обычно ассоциируется с кнопками и экранами — это GUI, графический интерфейс пользователя. Визуал нужен человеку, а программе достаточно текстовых значений, как у API-интерфейса. Но онлайн-сервисы обращаются друг к другу на языке программирования, не запрашивая доступ к внутренним системам. Им это и не нужно: API работает как переводчик — подсказывает, куда отправить запрос и как расшифровать ответ.
Например, приложение погоды не хранит данные о температуре на своих серверах — оно запрашивает их у метеосервиса. По такому же принципу работают интернет-магазины: большинство из них не обрабатывают платежи самостоятельно, а передают данные платёжной системе.
Как работает API
Если объяснять совсем просто, принцип работы API похож на работу официанта: гость делает заказ в ресторане, официант передаёт его на кухню, повар готовит блюдо и отправляет в зал.
В основе работы API лежит принцип «запрос-ответ». Приложение-клиент отправляет запрос → API передаёт его серверу → тот обрабатывает его и присылает ответ. Приложение не имеет прямого доступа к серверу и может общаться с ним только через интерфейс программирования.
Что внутри API: endpoint, HTTP, JSON
Посмотрим, что в это время происходит «на кухне». Каждый запрос уходит на endpoint, то есть конечную точку: это URL-адрес, по которому интерфейс программирования принимает обращения. У одного API таких адресов много: один отвечает за авторизацию через соцсети, другой — за список товаров, третий — за оформление заказа.
Запросы передаются по протоколу HTTP. У каждого запроса есть метод — он говорит серверу, что нужно сделать:
- GET — получить данные;
- POST — отправить новые;
- PUT — обновить существующие;
- DELETE — удалить.
Данные передаются в формате JSON — он выглядит как простой список параметров и значений, читается и людьми, и машинами. Альтернатива — XML, но JSON компактнее и давно считается стандартом для передачи данных в большинстве онлайн-сервисов.




