Что такое API простыми словами для неспециалистов
Недавно на одном из проектов общался с маркетологом о подключении API. Она считала, что API – это посредник между нашим сайтом и сторонним сервисом. Но это не совсем так. API – это интерфейс, или буквально часть приложения или сайта, которая дает доступ к другим программам и функционалу этого сайта. Цель этого материала - простыми словами рассказать не техническим спецам об API и зачем он нужен.
Краткая справка: API — аббревиатура от английского application programming interface («программный интерфейс приложения»). То есть API – это специальный инструмент, позволяющий одной программе взаимодействовать с другой программой.
Разберем API на примере автомобиля
Итак, в машине есть двигатель, колеса и рулевая рейка, то есть она способна ездить и возить грузы. Но если у машины нет руля, педалей и кнопки зажигания, мы не можем получить доступ к ее функционалу и не можем пользоваться ей.
Таким образом, руль, педали и кнопка зажигания – это и есть API. Это часть машины, которая дает доступ к ее функциям.
Может показаться, что в обычной жизни мы с API встречаемся мало, но это не так. Вот здесь работает API, и мы этими сервисами часто пользуемся:
· Оплата в интернет-магазинах. API платежных сервисов (ЯндексПэй, ЮMoney, Робокасса) позволяет интернет-магазинам принимать платежи без разработки собственной системы. Магазин отправляет запрос в платежный шлюз, банк проверяет данные и отправляет подтверждение.
· Онлайн-запись на прием к врачу. Приложение-календарь работает на API. Клиника встраивает API календаря на свои сайты, чтобы, к примеру, записывать своих клиентов на прием. Встраивание в форму записи календаря позволяет пациентам автоматически создавать событие и вносить детали о предстоящем визите. Благодаря API сервер сайта напрямую обращается к серверу с запросом на создание события, получает ответ, обрабатывает его и передает соответствующую информацию в браузер, которая поступает пациенту в виде сообщения с подтверждением записи.
· Заказ авиабилетов. Многие пользуются агрегаторами билетов, такими как Aviasales и SkyScanner. Такие сервисы собирают информацию о стоимости авиабилетов в разных авиакомпаниях и отображают ее в едином окне. Это позволяет реализовать API, встроенный в сайты авиакомпаний, который помогает в реальном времени обновлять информацию о направлениях и стоимости.
· Кнопки авторизации. На многих сайтах есть кнопки, позволяющие зарегистрироваться через уже существующие аккаунты на популярных площадках и в соцсетях. Это возможно благодаря API, которые есть у Google, Apple, Twitter, «ВКонтакте» и других компаний.
Для конечного пользователя это выглядит так, будто сайт магазина, клиники, агрегатора и социальной сети все знает и умеет, но секрет тут в использовании API сторонних сервисов.
Зачем и кому стоит изучать API подробнее?
Маркетологам и продуктологам:
Знание возможностей API сервиса, с которым вы работаете, помогает придумывать более эффективные воронки и интеграции. Например, понимая API сервиса email-рассылок, можно создавать сложные цепочки писем по поведению пользователей.
Предпринимателям:
Позволяет трезво оценивать сроки и стоимость разработки. Когда разработчик говорит «нужно API», вы понимаете — это про обмен данными, а не про дизайн.
Начинающим разработчикам:
Умение работать с API — must have навык. Подавляющее большинство современных проектов используют внешние API.
Если я, как разработчик, выбираю для клиента решение на базе API, это дает мне возможность:
· Связать разные системы: если нужно подключить к сайту платёжную систему или авторизацию через соцсети.
· Снизить стоимость разработки: часто бывает, что дешевле и быстрее воспользоваться платным API, чем создавать функциональность с нуля.
· Автоматизировать ручной труд, например, при переносе данных. Так, API поможет продавцу передать данные об актуальном остатке на маркетплейс, если товар был заказан на сторонней площадке. А маркетплейс, в свою очередь, информирует продавца о заказах, сделанных на своей платформе.
API экономит время программистов и уменьшает расходы бизнеса на разработку, но добавляет потенциальную точку отказа, которую вы не контролируете. Грамотный инженер ищет баланс между затратами, сроками реализации и отказоустойчивостью.
Работа с API - рядовая практика. Они везде и бояться этого не стоит. Если в целом ты соблюдаешь простые правила, то все будет окей.
Риски в работе с API
Главная опасность — зависимость от чужого сервиса:
· Чужой сервис может упасть — и ваша система тоже перестанет работать.
· Поставщик меняет правила — приходится срочно переделывать интеграцию (скорее редкость в наше время, но все же возможно).
· Ограничения по запросам — при большом трафике сервис может блокировать доступ (чаще всего решается либо переходом на более дорогой тариф, либо перераспределением нагрузки на нашей стороне).
Как защититься:
· Критичный функционал со временем лучше разрабатывать самим (если возможно и целесообразно).
· Выбирать проверенных поставщиков с стабильной историей.
· Иметь план «Б» на случай сбоев.
Современные API — это не «дыра в системе», а КПП с охраной. Используются ключи доступа, шифрование и лимиты запросов.
Вывод
API — не страшный технический термин, а обычный рабочий инструмент. Он решает конкретные задачи по обмену данными между системами.