API или Application Programming Interface — это правила, по которым сервисы, программы и приложения взаимодействуют между собой, чтобы обмениваться данными.
Как работает API
Этот инструмент позволяет программам, которые написаны на разных языках программирования, хранятся на разных серверах и работают в разных операционных системах, без проблем передавать друг другу данные. Ниже пример, как это работает.
Пример. Онлайн-редактор «Главред» помогает очистить текст от словесного мусора. Раньше, чтобы использовать «Главред», пользователи открывали браузер, переходили по ссылке на сайт и уже там проверяли текст. Потом разработчики онлайн-редактора написали API.
Теперь если «Главред» связать через API с другим сайтом, сайт может обращаться к «Главреду» напрямую.
- Разработчик стороннего сайта пишет код по правилам API «Главреда».
- После настройки этих правил пользователи сайта могут проверить текст никуда не переходя. Они запускают проверку на сервисе, текст уходит на сервер «Главреда», там проверяется, после чего возвращается.
- Веб-сервис получает результат и показывает выделенные «Главредом» ошибки.
Читайте также
Поправь то, не знаю что: как понять, что вам не нравится в тексте
Зачем нужен API
Настроить связь между программами. Одни программы собирают данные, другие считают, третьи строят графики и отчёты. Если их связать друг с другом через API, программами можно пользоваться одновременно как единой системой.
Например, у компании есть интернет-магазин. Учёт товара ведут в 1С на компьютере. Если настроить связь между интернет-магазином и 1C через API, остатки товаров на сайт будут попадать из 1С. Если сайт в свою очередь распродаст весь товар, уже он отправит уведомление в 1C. 1С обновит остатки товара.
Быстро улучшить программу. Если вдруг надо улучшить программу, разработчики пишут новый код, тестируют его, потом выпускают новые функции и поддерживают их. Это дорого и долго. Проще подключить к имеющейся программе сторонний сервис, в котором уже есть необходимые функции.
Заработать деньги. Чтобы подключить некоторые сервисы, надо заплатить их разработчикам. Так API помогает зарабатывать и продвигать свои продукты как услугу.
Что такое REST API
REST API или Representational State Transfer API — это вид связи между двумя программами. С помощью этой связи одна программа получает данные с сервера другой по ссылке через интернет. Для этого она использует протокол HTTP.
Преимущества REST API:
- Объединяет новые функции с уже написанной программой. Разработчики не тратят времени на разработку с нуля, а только соединяют между собой нужные блоки кода.
- Позволяет получать одни и те же данные с разных платформ. Например, если данные 1С лежат на сервере облачного хранилища, пользователь может скачать их через мобильное приложение или браузер. Проблем не возникнет.
- Блокирует изменения одной программы от другой. Если разработчик перепишет код одной программы, это не затронет API, и код не повлияет на другую программу.
Что такое интеграции API
Это сам процесс соединения программ. После интеграции программы автоматически обмениваются данными. Это уменьшает количество ошибок, которые могли бы допустить сотрудники, если бе переносили данные между программами вручную.
Пример интеграции — синхронизация галереи смартфона с облачным хранилищем. Работает так: пользователь смартфона делает новое фото, оно сохраняется сначала на устройстве, а затем автоматически «уходит» в облако.
Читайте также
Что такое зерокодинг, какие перспективы у этой технологии
Какие типы API существуют
- Частные или внутренние. Их пишут разработчики для программ внутри одной организации. Другие организации доступ к таким API получить не могут, так как частные API нигде не публикуются.
- Общедоступные или публичными. Они есть в открытом доступе в интернете для всех.
- Партнёрские. Ими могут пользоваться компании, которые заключили соглашение и согласились делиться своими API друг с другом. Такие API используют для интеграции партнёрских программ, которые дополняют функциональность друг друга.
- Составные — объединяют API нескольких сервисов и систем. Через них собирают большие системы из множества программ.
Что такое адрес API
Связь по API является маршрутом между двумя программами. Конечная точка этого маршрута — это адрес API. Адресом может быть URL веб-сервиса, службы, сервера.
Такая связь работает через запросы и ответы. То есть одна программа обращается с запросом к API другой программы и получает ответ. Таким образом одна система получает доступ к информации или функционалу другой системы.
Примеры API
Агрегаторы авиа и ж/д билетов
Сервисы, которые собирают информацию о стоимости билетов компаний-перевозчиков, называют «агрегаторами».
Например, Туту.ру собирает данные о билетах авиакомпаний и РЖД, а потом отображает информацию в одном месте. Это происходит через API, по которому Туту.ру подключается к сайтам компаний-перевозчиков. Информация на сайте агрегатора постоянно обновляется: меняются направления, стоимость билетов, их количество.
Авторизация на сайтах
Чтобы зайти на сайт, необязательно регистрировать личный кабинет. Авторизоваться можно с помощью сторонних аккаунтов, например, Google, «ВКонтакте» и так далее
Это возможно благодаря API. Сайт, на котором надо авторизоваться, обращается к базе данных других сервисов, получает нужную информацию о пользователе и автоматически регистрирует его у себя.
Сбор аналитической информации
С помощью API связывают инструменты, которыми пользуются маркетологи, бизнес-аналитики, руководители компаний. Например, настраивают взаимодействие CRM-систем с веб-аналитикой. Данные из веб-аналитики попадают в CRM, после чего в отчётах больше информации, он подробнее отображают работу сайта.
Приём платежей
Онлайн-магазины и сервисы принимают оплату прямо на сайте. Это работает через API. Сайт передаёт данные для проверки карты в банк, банк проводит транзакцию и подтверждает сайту, что оплата успешно проведена.
Работа коммерческих сервисов
У интернет-магазинов есть системы, в которых принимают и обрабатывают заказы, оформляют доставку, пополняют склады и так далее. Чтобы сайт и подобные системы работали синхронно и обменивались информацией о клиентах, ассортименте товара, актуальных ценах, разработчики настраивают для них API.
Самое главное
- API — это инструмент, который позволяет взаимодействовать программам, сервисам, приложениям. С помощью этого инструмента разработчики соединяют сервера, базы данных, но при этом не затрагивают код систем. Это связующее звено или посредник между программами.
- С помощью API возможно быстро разрабатывать новые IT-продукты, улучшать существующие, увеличивать производительность систем, объединять их таким образом, чтобы они работали последовательно и синхронно.
- По типу выделяют частные, публичные, партнёрские и составные API. Они отличаются доступом. Частные закрыты для использования другим разработчикам, публичные и партнёрские доступны, но могут быть платными и договорными. А составные объединяют несколько API и помогают создавать масштабные системы.
- Взаимосвязь двух систем формируется с помощью API. Разработчики не изучают и не ломают коды программ, а лишь создают коннекторы между ними. Это делает разработку быстрой и менее затратной.