API (Application Programming Interface / Прикладной программный интерфейс) — это интерфейс, который позволяет одной программе взаимодействовать с другой, отправляя запросы и получая ответы в стандартизированной форме. Это основа для интеграции различных программных систем, обмена данными и использования внешних сервисов без необходимости «заглядывать» во внутреннюю реализацию.
🔹 Основные цели API:
- Абстрагирование логики – скрытие сложной внутренней работы за простыми вызовами.
- Облегчение интеграции – соединение разных приложений в единую систему.
- Повторное использование – предоставление общего функционала множеству приложений.
- Безопасность – контроль доступа через ключи API и методы аутентификации.
🔹 Как работает API:
Клиент (например, мобильное приложение или веб-сайт) отправляет HTTP-запрос к API. API возвращает ответ в формате JSON или XML. Обычно используются методы:
- GET (получение данных)
- POST (создание данных)
- PUT, DELETE и т.д.
Пример:
Сайт прогноза погоды не собирает данные сам, а обращается к погодному API, получает текущую информацию и отображает её пользователю.
🔹 Виды API:
- Web API – работает через интернет, основывается на HTTP-протоколе.
- REST API – один из самых популярных типов: простая структура, основан на ресурсах.
- GraphQL – позволяет клиенту самому выбирать, какие именно данные ему нужны.
- SOAP – более строгий стандарт, часто используется в банковской и правительственной сферах.
🔹 Основные понятия:
- Endpoint – адрес API, к которому можно отправить запрос.
- API Key – уникальный ключ доступа.
- Аутентификация и авторизация – проверка личности и определение уровня доступа (OAuth 2.0, JWT и др.)
🔹 Преимущества API:
- Повышает гибкость и масштабируемость приложений.
- Облегчает интеграцию сторонних сервисов (карты, оплата, чаты и т.д.)
- Ускоряет разработку и упрощает архитектуру (например, в микросервисах).
Простая аналогия:
API — это как официант в ресторане. Вы делаете заказ (запрос), он передаёт его на кухню (сервер), а потом приносит вам блюдо (ответ).