API
Также: интерфейс интеграции
Способ, которым программы обмениваются данными без участия человека: одна система запрашивает у другой сведения или передаёт их в заранее оговорённом формате.
Где это встречается на обычном сайте
- Онлайн-запись: сайт показывает свободное время из системы записи.
- Каталог: цены и остатки подтягиваются из учётной системы.
- Оплата: сайт передаёт сумму платёжному сервису и получает результат.
Владельцу сайта важно знать одно: если у сервиса есть API, его можно связать с сайтом; если нет — данные придётся переносить руками.
Как это выглядит в жизни
Возьмём онлайн-запись. Человек открывает страницу услуги и видит свободные окошки на ближайшие дни. Эти данные не хранятся на сайте: он в момент открытия страницы спрашивает их у системы записи и показывает ответ. Когда посетитель выбирает время, сайт передаёт выбор обратно, а система бронирует его и отвечает, получилось ли. Весь этот обмен и есть работа через API.
Важное следствие: если внешний сервис недоступен, отвалится именно та часть, которая от него зависит. Хорошо сделанная интеграция это предусматривает — показывает форму обратной связи вместо расписания, а не пустое место с ошибкой. Об этом стоит спрашивать заранее, потому что проявляется проблема в самый неудачный момент.
Что спрашивать у подрядчика
- Есть ли у нужного сервиса открытый API и не платный ли доступ к нему.
- Что именно будет передаваться и в какую сторону.
- Что произойдёт, если сервис недоступен: заявка потеряется или сохранится?
- Кто владеет ключами доступа — вы или подрядчик.
Последний пункт из той же категории, что и владение доменом. Ключи, оформленные на подрядчика, означают, что при расставании интеграция перестанет работать, а восстановить её быстро не получится.
Частые вопросы
Чем API отличается от вебхука?
При работе через API инициатива у запрашивающей стороны: сайт спрашивает данные, когда они нужны. Вебхук наоборот — отправитель сам сообщает о событии сразу, как оно случилось. На практике их часто используют вместе.
Нужен ли программист для интеграции по API?
Для готовых связок между популярными сервисами — обычно нет, они настраиваются в интерфейсе парой полей. Программист нужен, когда обмен нестандартный: свои поля, своя логика, редкая учётная система.
Что такое ключ API и почему его нельзя показывать?
Это пароль, которым сайт представляется сервису. Любой, кто его получит, сможет действовать от вашего имени — читать данные, создавать записи, тратить лимиты. Поэтому ключи хранят на сервере и не публикуют в коде страницы.
Может ли интеграция сломаться сама?
Да. Сервисы меняют версии своих интерфейсов и отключают старые. Обычно об этом предупреждают заранее письмом, но письмо приходит на адрес, указанный при регистрации, — и его должен кто-то читать.