ТерминРазработка

API

API (Application Programming Interface) — программный интерфейс, через который одно приложение запрашивает данные или вызывает функции другого. Основа интеграций CRM, оплат, сервисов доставки.

Определение API

API (Application Programming Interface) — это набор правил и эндпоинтов, по которым программы общаются между собой через сеть, не зная внутреннего устройства друг друга. Сайт магазина запрашивает у API склада остатки, у API платёжного шлюза — статус оплаты, у API CRM — историю клиента. Концепция оформилась в 2000-х с распространением SOAP, в 2010-х доминирующим стилем стал REST, а с 2015 года активно растёт GraphQL. По данным RapidAPI, в 2024 году у среднего бизнес-сайта 8–15 активных API-интеграций с внешними сервисами.

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

Современный REST API передаёт данные через HTTP-запросы (GET, POST, PUT, DELETE) в формате JSON. Авторизация — обычно через API-ключ или OAuth 2.0. Пример: при оформлении заказа сайт делает POST-запрос к API ЮKassa с суммой и реквизитами, получает в ответ URL платёжной формы и redirect_url для возврата клиента. API критичны для проектов в сложной разработке и любых интеграций с CRM и ERP-системами. Документация API — официальный контракт; нарушение его на любой стороне ломает интеграцию.

Стиль APIФорматЛучше всего для
RESTJSON по HTTP, методы GET/POST/PUT/DELETEБольшинство веб-интеграций, мобильные приложения
GraphQLЗапрос с указанием нужных полейСложный фронтенд с гибкими запросами, экономия трафика
SOAPXML по HTTPКорпоративные системы 1С, банки, legacy
WebSocketПостоянное соединениеЧаты, биржевые котировки, real-time
gRPCБинарный Protocol BuffersМикросервисы внутри одной системы

Связанные концепции

  • CRM — типовая точка интеграции через API: данные о лидах, сделках, контактах передаются между сайтом и amoCRM / Битрикс24.
  • Webhook — обратный API: внешний сервис сам присылает уведомление, когда что-то происходит (например, оплата прошла); не нужно опрашивать API в цикле.
  • API-ключ — токен авторизации; хранится только на сервере, никогда не публикуется во фронтенд-коде.
  • Rate limit — ограничение числа запросов в минуту; типично 60–600 для бесплатных API, 10 000+ для платных.
  • Headless CMS — отдельный класс продуктов, где API — основной способ доступа к контенту.

Частые вопросы

Сколько стоит разработка API?

Базовый REST API для среднего сайта (10–20 эндпоинтов, авторизация, документация) — от 150 000 ₽ и 4–8 недель. Полноценный API для SaaS с публичной документацией и SDK — 500 000–2 000 000 ₽ и 3–6 месяцев. Разработка API и SaaS в BigPanda. Готовые сторонние API (Яндекс.Карты, ЮKassa) обычно бесплатны до определённого порога нагрузки.

Что делать, если стороннее API упало?

Архитектурно: 1) реализовать retry с экспоненциальной задержкой (1, 2, 4, 8 секунд); 2) показывать пользователю понятную ошибку, а не зависший спиннер; 3) для критичных операций (оплата, склад) — кэшировать последний успешный ответ и работать на нём. Мониторинг сторонних API через Sentry, статус-страницы провайдеров — обязателен.

Чем REST отличается от GraphQL?

В REST для получения связанных данных делается несколько запросов: /users, /users/1/orders, /orders/5/items — 3 запроса. В GraphQL один запрос забирает ровно то, что нужно: пользователь + заказы + товары в каждом заказе одним вызовом. GraphQL экономит трафик и удобнее для мобильного. REST проще в реализации и стандарт для большинства публичных API.

Безопасно ли хранить API-ключ на сайте?

Frontend-код (JavaScript, HTML) виден всем, поэтому в браузере хранить ключи нельзя. Решение: запросы к стороннему API делает ваш сервер (бэкенд), а ключ хранится в переменных окружения сервера. Если ключ всё же утёк (типично 2–3 раза в год у среднего проекта) — немедленная ротация и проверка логов на вредоносные запросы.

Что такое OpenAPI и Swagger?

OpenAPI (бывший Swagger) — стандарт описания API в YAML/JSON. Из спецификации генерируется интерактивная документация (Swagger UI), SDK на разных языках (TypeScript, Python, Java) и mock-сервер для тестов фронтенда без готового бэкенда. К 2024 году OpenAPI 3.x — индустриальный стандарт для документирования REST API.

Перейти к букве

Другие термины глоссария