API (аббревиатура от Application Programming Interface) – интерфейс программирования приложений, позволяющий сервисам взаимодействовать, получать доступ и обмениваться данными.
По сути API выступает в роли посредника между двумя приложениями или сервисами – оно предоставляет решения (классы, функции, структуры), реализованные в одном сервисе, и создает среду для создания нового приложения с применением этих решений.
Объяснение для чайников: например, набор команд, которым обучена собака – это API. Если мы знаем эти команды, мы без проблем сможем взаимодействовать с собакой (она понимает, что именно мы хотим от нее) и тренировать ее. Если у нас нет доступа к такому API, нам придется заново обучать собаку командам (на что уйдет много времени и успех не гарантирован) или она просто не будет выполнять наши команды.
Пример использования API, знакомый большинству интернет-пользователей – регистрация на сайте с помощью аккаунта социальной сети. Благодаря API сайт может подключиться к базе данных социальной сети и получить нужную ему информацию.
Типы API
Наиболее распространены во всемирной паутине так называемые Web API, которые используются в качестве платформы для создания HTTP-служб. Среди них выделяют:
- RPC (Remote Procedure Call ) – удаленный вызов процедур,
- SOAP (Simple Object Access Protocol) – простой протокол доступа к объектам,
- REST (Representational State Transfer ) – передача состояния представления.
API можно разделить по типу сервиса, у которого они есть: приложения, вебсайты и операционные системы. Например, у большей части операционных систем (Unix, Windows, MacOS, и т. д.) есть API, благодаря которому возможно программирование сервисов для этих систем.
Также API можно подразделять по типу доступа:
- Внутренние API (доступны внутренним разработчикам компании и сотрудникам, используются для оптимизации рабочих процессов и снижения затрат),
- Партнерские API (доступны бизнес-партнерам и потребителям продукта или услуги, используются для оптимизации процессов и разработки),
- Публичные API (доступны всем, используются для создания новых сервисов и популяризации существующего направления).
Плюсы и минусы работы с API
Плюсов у использования API немало:
- Самый главный плюс работы с API – это экономия времени при разработке собственных сервисов. Программист получает готовые решения и ему не нужно тратить время на написание кода для функционала, который уже давно реализован.
- В API могут учитываться нюансы, которые сторонний разработчик может не учесть или просто не знать,
- API дает приложениям определенную системность и предсказуемость – одна и та же функция с помощью API может быть реализована в разных приложениях так, что будет понятна и знакома всем пользователям.
- API дает сторонним разработчикам доступ к закрытым сервисам.
Но также есть и минусы:
- Если в основной сервис вносятся изменения и доработки, в API они могут попасть не сразу,
- Разработчику доступны готовые решения, как именно они реализованы и как выглядит исходный код, он не знает,
- API предназначен в первую очередь для общего использования, он может не подойти для создания какого-то особого функционала.
Использование API на практике
Самые распространенные способы использования различных API разработчиками и компаниями по всему миру:
- Добавление в свои сервисы функционала социальных сетей и мессенджеров, калькуляторов валют, погоды и т.д. Стандартное рабочее решение, которое не требует долгих месяцев программирования.
- Доступ к популярному сервису или хранилищу данных с соблюдением всех требований безопасности.
- Внутренние нужды компании, например, разработка мобильного приложения под сайт, с последующей систематизацией всех данных.
Популярные API
API позволяет разработчикам использовать уже имеющийся функционал одного приложения для доработки другого. Пользователям всемирной паутины наиболее знакомы функции, реализованные с помощью API социальных сетей:
- Facebook API позволяет логиниться на сторонних платформах с помощью своего аккаунта, оплачивать покупки в приложении, получать доступ к данным крупных и средних аккаунтов Instagram Business, управлять страницами сообществ и публиковать на них контент, получать статистику по рекламе, управлять объявлениями и аудиторией, запускать прямые эфиры,
- С помощью Twitter API можно показывать ленту твитов на сайте, управлять профилем и настройками учетной записи, автоматически создавать рекламные кампании в Твиттере и управлять ими,
- API ВКонтакте дает возможность отслеживать активность пользователей в сообществах, создавать ботов, собирать статистику по действиям в сообществе, автоматически модерировать контент, автоматизировать работу с товарами (например, импорт из внешней базы), получать текстовые публикации из ВКонтакте по заданным ключевым словам и т.д.,
- Telegram Bot API представляет собой HTTP-интерфейс для работы с ботами в Telegram,
- YouTube API позволяет встраивать видео на сайт, создавать плейлисты, встраивать плеер в приложение, получать данные об активности пользователей.
Не менее популярны и следующие API:
Яндекс API – у всех популярных сервисов Яндекса есть свои API (Вебмастер, Метрика, Директ, Маркет, Аудитории, Карты и т.д.), благодаря которым можно:
- получать информацию о товарах, представленных на Маркете и создавать приложения для автоматизированного размещения,
- автоматизировать создание счётчиков Метрики, настройку целей и получение статистики,
- создавать приложения для управления рекламными кампаниями, автоматизировать процесс создания рекламных кампаний и управлять ими через интерфейс собственного приложения,
- настраивать разнообразные аудиторные сегменты, которые можно использовать для показа рекламных объявлений,
- использовать картографические данные,
- размещать на сайте или в приложении расписания поездов, электричек, самолетов,
- автоматизировать создание и отправку заказов на доставку,
- встроить Яндекс.Переводчик в мобильное приложение или веб-сервис для конечных пользователей,
- автоматизировать проверку семантической разметки и т.д.
Google API – компания также предоставляет разработчикам несколько десятков API для решения самых разных задач:
- Работа с устройствами и приложениями на платформе Android,
- Управление событиями в Календаре,
- Управление товарами и акккаунтом в Google Покупках,
- Управление файлами на Google Диске, включая загрузку, скачивание, поиск, изменение прав доступа,
- Просмотр и управление данными Google Analytics,
- Чтение и редактирование файлов в Документах,
Если думать об API, как о способе упрощения кода, то можно сказать, что библиотека jQuery, написанная на языке программирования JavaScript, является тоже своего рода API, т.к. предлагает разработчикам способ упростить код в несколько раз (5-6 строк вместо 30).
Похожие темы:
нет
Синонимы:
нет
Все термины на букву «A»
Все термины в глоссарии