И

Интерфейс прикладного программирования (API)

API (Application Programming Interface) — интерфейс, через который одна программа общается с другой: запрашивает данные, отправляет команды и получает результат без доступа к исходному коду.

Что это

API (Application Programming Interface, интерфейс прикладного программирования) — это набор правил и протоколов, по которым одна программа может обращаться к функциям или данным другой программы. Грубо говоря, это договор: «ты присылаешь запрос в таком формате — я отвечаю в таком». Разработчику не нужно знать, как устроена чужая система изнутри — достаточно знать, какие запросы она принимает и что возвращает в ответ. Именно API позволяет строить сложные продукты из готовых блоков, не изобретая колесо каждый раз заново.

Зачем это нужно

До широкого распространения API каждая компания была вынуждена строить всю инфраструктуру самостоятельно — от авторизации до карт и платёжных систем. Сегодня Stripe обрабатывает платежи через API, Google Maps отдаёт карты через API, а Twilio рассылает SMS через API. Это экономит месяцы разработки и позволяет сосредоточиться на основном продукте. Для бизнеса API — ещё и канал монетизации: Twilio, Stripe, OpenAI зарабатывают именно на том, что предоставляют доступ к своим возможностям через API за плату.

Как это работает

Самая распространённая модель сегодня — REST API поверх HTTP. Клиент (браузер, мобильное приложение, другой сервер) отправляет HTTP-запрос на определённый адрес — эндпоинт. Запрос содержит метод (GET, POST, PUT, DELETE), заголовки (например, токен авторизации) и, при необходимости, тело с данными в формате JSON. Сервер обрабатывает запрос и возвращает ответ — тоже обычно в JSON — с кодом статуса: 200 означает успех, 404 — ресурс не найден, 401 — нет доступа. Помимо REST существуют GraphQL (клиент сам указывает, какие поля нужны), gRPC (быстрый бинарный протокол для микросервисов) и SOAP (устаревший XML-стандарт, до сих пор живёт в банках и госсистемах).

Примеры

  • Авторизация через соцсети — кнопка «Войти через Google» использует OAuth 2.0 поверх Google API: сайт получает токен и базовые данные пользователя, не видя его пароля.
  • Оплата на сайте — интернет-магазин подключает Stripe или ЮKassa через API: форма оплаты, списание, возврат — всё через несколько вызовов.
  • Карты и геолокация — приложение такси запрашивает маршрут у Google Maps API или 2GIS API и получает координаты, время в пути и пробки.
  • Погодные виджеты — сайт обращается к OpenWeatherMap API и получает текущую температуру и прогноз в формате JSON за один запрос.
  • ИИ-функции в продуктах — стартапы встраивают GPT-4 в свои сервисы через OpenAI API, не обучая собственную модель.

Связанные понятия

  • Эндпоинт (endpoint) — конкретный URL, по которому доступна определённая функция API.
  • REST — архитектурный стиль построения API на основе HTTP-методов и ресурсов.
  • JSON — текстовый формат данных, стандарт де-факто для передачи информации через API.
  • Аутентификация / API-ключ — механизм идентификации клиента, обращающегося к API.
  • SDK (Software Development Kit) — готовая библиотека, которая оборачивает вызовы API в удобные функции для конкретного языка.
  • Webhook — обратный вариант API: сервер сам отправляет данные клиенту при наступлении события, а не ждёт запроса.

Частые заблуждения

Распространённое заблуждение — считать, что API это всегда что-то сетевое и веб-ориентированное. На самом деле API есть у операционных систем (Windows API, POSIX), у библиотек (API numpy в Python) и даже у аппаратного обеспечения. Второй миф — что открытый API значит бесплатный. Google Maps API был бесплатным до 2018 года, после чего Google ввёл платные тарифы, и многие компании срочно переходили на альтернативы. Наконец, API не гарантирует стабильности: поставщик может изменить или закрыть его — это называется «сломать обратную совместимость» — и тогда всё, что на нём завязано, перестаёт работать.

Другие термины на букву «И»

Итоговая аттестация
Итоговая аттестация — официальная проверка знаний и компетенций учащегося по завершении учебного пер...
Индивидуальный учебный план
Индивидуальный учебный план (ИУП) — персональный маршрут обучения, который составляется под конкретн...
Источник права
Источник права — это официальная форма, в которой выражены и закреплены правовые нормы, обязательные...
Исковое заявление
Исковое заявление — официальный документ, с которого начинается судебный спор: именно его подают в с...
Исполнительное производство
Исполнительное производство — это принудительное исполнение судебных решений и других исполнительных...
Инференс
Инференс — это процесс применения обученной модели машинного обучения к новым данным для получения п...
Искусственный нейрон
Искусственный нейрон — базовый вычислительный элемент нейронной сети, который принимает входные сигн...
Индекс пересчёта сметной стоимости
Индекс пересчёта сметной стоимости — коэффициент, который переводит стоимость строительства из базис...