Полное руководство по доступу и использованию API
Вы можете не знать, что делает API. Вы можете не знать, что это означает. Но повседневные API работают за кулисами, чтобы предоставить вам более богатый цифровой опыт. Билет в кино, который вы купили онлайн, рецепт блоггера, которым вы поделились на Facebook, и дешевый рейс, который вы забронировали на Expedia, – все это благодаря API.
Помогая доставлять легко интегрированный пользовательский интерфейс с одного устройства на другое, API-интерфейсы предоставляют множество бизнес-возможностей. Прежде чем обсуждать, как API-интерфейсы могут способствовать развитию вашего бизнеса, давайте подробнее рассмотрим, что такое API-интерфейсы и почему они так быстро распространяются.
Что такое API?
API, сокращение от «интерфейс прикладного программирования», представляет собой программный интерфейс. Это означает, что он обеспечивает безопасный и стандартизованный способ взаимодействия приложений друг с другом и предоставления запрошенной информации или функций без какого-либо вмешательства пользователя.
Это отличная новость для конечных пользователей (и сторонних разработчиков, но мы вернемся к ним через минуту). Поскольку API-интерфейсы выполняют всю тяжелую работу в фоновом режиме, цифровые интерфейсы остаются практически без усилий.
Время для примера. Допустим, вы хотите увидеть последний кассовый хит. Вашим первым шагом может быть поиск, где и когда он играет на сайте онлайн-продажи билетов, таком как Fandango. После ввода почтового индекса и выбора даты вы нажимаете «перейти», и, вуаля, через несколько секунд появляется список сеансов в ближайших кинотеатрах. Вот как это выглядит для конечного пользователя.
Хотя вы все время находитесь на сайте Fandango, существует множество приложений, которые делают ваш поиск возможным. Когда вы нажимаете «перейти», сайт использует API-интерфейсы для запроса доступа к базе данных каждого театра. Затем эти API извлекают запрошенную информацию, чтобы сайт Fandango отображал для вас наиболее релевантные результаты.
По мере того, как ожидания такого легкого взаимодействия с пользователем растут, компании все чаще обращаются к API, чтобы предоставить потребителям большую ценность за меньшее время. Используя API-интерфейсы для доступа к данным, фрагменту кода, программному обеспечению или службам другой компании, вы можете расширить функциональные возможности своего продукта, сэкономив время и деньги. Это важно не только для удовлетворения и прогнозирования все более сложных потребностей потребителей, но и для того, чтобы оставаться гибкими на рынке.
Как работают API?
API-интерфейсы – это наборы определений и протоколов, которые позволяют программным компонентам общаться и взаимодействовать друг с другом с помощью простого набора команд. Действуя как мессенджеры, API-интерфейсы доставляют запрос одного приложения другому и возвращают ответ в режиме реального времени.
Если сервер (приложение, предоставляющее ресурс) может делать то, что просил клиент (запрашивающее приложение), тогда API вернет требуемый ресурс или код состояния, который примерно соответствует выполненной миссии! Если сервер не может выполнить то, что просил клиент – возможно, клиент запросил ресурс, который не существует или у него нет разрешения на доступ, – тогда API вернется с сообщением об ошибке.
Такой контроль доступа к серверу имеет решающее значение. Вместо того, чтобы предоставлять вам всю информацию или код программы, API предоставляет вам только данные, которые были доступны для внешних пользователей.
Все еще не понимаете? Попробуем аналогию. Принципы работы API часто сравнивают с заказом еды в ресторане, в котором вы, посетитель, представляете клиента, официант представляет API, а повар представляет сервер. Вы просматриваете меню, выбираете блюдо, которое хотите, и размещаете заказ у официанта. Официант приносит вашу заявку шеф-повару. Шеф-повар выполняет его. Затем официант приносит вам еду, и вы получаете удовольствие от того, что вам не пришлось готовить ее самостоятельно.
Но допустим, что в ресторане приходит слишком много гостей и им не хватает места. Допустим, это происходит по мере роста популярности ресторана. Что тогда? Вот тут и нужны ключи API.
Что такое ключ API?
Ключ API – это уникальный идентификатор, используемый для аутентификации вызовов API. Ключ состоит из строки букв и цифр, которые идентифицируют клиента (помните, что это приложение или сайт, выполняющие запрос). Ключ может предоставить или отклонить этот запрос в зависимости от разрешений доступа клиента и отслеживать количество запросов, сделанных для использования и выставления счетов.
Хотя этот метод не так безопасен, как токены аутентификации, он имеет некоторые преимущества по сравнению с базовой аутентификацией, для которой требуются только имя пользователя и пароль.
Ограничивая доступ только тем, у кого есть ключи, компания может контролировать количество обращений к ее API и гарантировать, что только определенная доверенная группа клиентов может получить доступ к ресурсам своего сервера.
Продолжая приведенный выше пример, представьте себе ключ API как бронирование, а API – как эксклюзивный ресторан. Установив, что посетители должны бронировать столик в ресторане, вы можете ограничить количество мест, чтобы кухня могла адекватно и эффективно обслуживать каждого гостя. Точно так же, разрешая только клиентам с ключом API доступ к вашим ресурсам, доступным через API, и их использование, вы помогаете обеспечить безопасное использование вашего программного обеспечения и возможность обработки большого количества входящих запросов.
Для чего используются API?
Возможно, лучше спросить, для чего не используются API. Хотите встроить фотографии из Instagram в свое приложение для электронной коммерции? Для этого есть API. Хотите предоставить мгновенный доступ к тысячам отелей в своем блоге о путешествиях? Для этого есть API. Хотите интегрировать переводчик Йоды на свой сайт фанфиков по «Звездным войнам»? Если вы можете в это поверить, для этого есть API.
Эти примеры раскрывают некоторые из наиболее распространенных причин, по которым компании используют API. Большинство клиентов, использующих API, хотят, чтобы сервер выполнял основные функции. Эти запросы могут быть записаны как URL-адреса, так что обмен данными между клиентом и сервером определяется правилами протокола передачи гипертекста (HTTP). Четыре основных запроса сервера:
- GET: получить ресурс
- POST: для создания нового ресурса
- PUT: для редактирования или обновления существующего ресурса
- УДАЛИТЬ: удалить ресурс
Сегодня доступно огромное количество API. Некоторые для операционных систем, другие для веб-сайтов и т.д., Но чтобы полностью оценить их потенциал в цифровой экономике, давайте подробнее рассмотрим, как API классифицируются по тем, с кем они делятся и почему.
Типы API
- Частные API.
- Партнерские API.
- Публичные API.
Эти имена интуитивно понятны, поэтому мы кратко коснемся каждого типа ниже.
Частные API
Частные API-интерфейсы доступны только сотрудникам для повышения производительности и прозрачности. Другими словами, разработчики, работающие в компании, могут использовать эти API по мере необходимости, а сторонние разработчики – нет.
Фактически, поскольку эти API-интерфейсы не задокументированы в общедоступном комплекте разработки программного обеспечения (например, стартовый комплект для создания программных приложений на конкретной платформе) или вообще в некоторых случаях, они часто полностью скрыты от общественности. Многие компании в конечном итоге становятся публичными со своими частными API.
Партнерские API
Партнерские API предоставляются внешним пользователям, но только для тех, кто поддерживает деловые отношения с компанией, предоставляющей API. Логика партнерских API, схожая с логикой общедоступных API, основана на идее «если ты почешь мне спину, я почешу и твою».
Подумайте, например, о транспортном приложении Waze, которое использует API-интерфейсы для обмена данными с муниципалитетами и другими партнерами о закрытых дорогах, авариях, задержках строительства, выбоинах и работающих транспортных средствах, таких как снегоочистители и мусоровозы.
Некоторые компании предпочитают партнерские API публичным, потому что они хотят большего контроля над тем, кто имеет доступ к ресурсам, которые они раскрывают, и большего права голоса в том, как эти ресурсы используются. Например, Pinterest приняла подход на основе отправки для предоставления доступа к новым службам данных через свой API, требуя от партнеров отправки запроса с подробным описанием того, как они хотели бы использовать API и какие базовые данные он предоставит им до предоставления доступа.
Публичные API
Общедоступные API-интерфейсы, также известные как открытые API-интерфейсы, доступны для внешнего использования и, как следствие, часто гораздо более ограничены в общих ресурсах, чем частные или партнерские API. Хотя некоторые открытые API-интерфейсы бесплатны, для использования других требуется абонентская плата, которая часто бывает многоуровневой в зависимости от использования.
Публикация API дает бесчисленное множество преимуществ, но пока мы сосредоточимся на двух основных. Разделяя API за пределами организации, компании извлекают уроки о поддержке, документации и схемах аутентификации, которые улучшают принятие их API, а также побуждают третьи стороны создавать приложения, надстройки или интеграции с API, которые не только улучшают их продукты. ценными, но также делают API более ценными.
Преимущества API
Теперь, когда мы знаем, что компании могут использовать API-интерфейсы для безопасного запроса и совместного использования контента, услуг и функций как с внутренней, так и с внешней аудиторией, вы можете подумать, зачем компании платить другой за доступ к ресурсам, которые она может создать самостоятельно? Почему эта компания согласилась делиться своими активами, особенно с конкурентами? Или зачем ему прикладывать всю работу по созданию API только для того, чтобы его собственные сотрудники могли его использовать?
Всем хороших вопросов. Прежде чем мы углубимся в ответы, давайте разделим преимущества API на две группы: потребители API и поставщики API.
Преимущества для потребителей API
Вы можете использовать API-интерфейсы для запроса доступа к ресурсам другого сервера или вы можете использовать свои собственные API-интерфейсы для автоматизации определенных задач. В любом случае вы попадаете под мантию потребителей API. Эти потребители получают выгоду от использования каждого типа API несколькими способами.
Продуктивность
Многие компании используют свои собственные API. Фактически, из миллиардов выполненных вызовов API около двух третей этих вызовов приходится на компании, выполняющие вызовы своих собственных API. Почему? Внутреннее использование API-интерфейсов позволяет сотрудникам оптимизировать операции, развивать сотрудничество и повышать прозрачность в компании. Основатель и генеральный директор Amazon Джефф Безос осознал огромный потенциал внутренних API-интерфейсов еще в 2002 году, когда отправил электронное письмо с инструкциями каждой команде о необходимости взаимодействия через API в дальнейшем. Следуя тому, что было названо «Мандатом Безоса», разработчики создали или превратили свои хорошо разработанные программные компоненты в API-интерфейсы, в результате создав согласованные и хорошо управляемые способы обмена данными и возможностями в рамках всей компании.
Удовлетворенность пользователей
Компании хотят обеспечить своим пользователям лучший опыт. Редко один продукт может удовлетворить и предвосхитить все потребности и ожидания. Вот почему они используют API для расширения функциональности своих продуктов. Например, OpenTable использует API JavaScript Карт для встраивания интерактивной карты на свой сайт, позволяя пользователям прокладывать маршруты от их домов до ближайших ресторанов всего за несколько кликов. Если вы не знакомы с сайтом, посмотрите этот снимок экрана с обзором стейк-хауса в Индиане.
Инновации
Позволяя разработчикам – сторонним или внутренним сотрудникам – повторно использовать программные компоненты, API-интерфейсы дают им возможность сосредоточиться на разработке новых решений, а не на повторении уже выполненной работы. Вернемся к приведенному выше примеру. Без Google Maps API разработчикам OpenTable пришлось бы посвятить свое время и ресурсы рисованию собственной карты и предоставлению картографических данных в реальном времени для включения этой функции на свой сайт. Что еще хуже, независимо от того, сколько времени они потратят, было бы почти невозможно сделать его таким же подробным и надежным, как существующее решение Google. Таким образом, вместо того, чтобы тратить время на то, чтобы изобрести колесо, API-интерфейсы позволяют разработчикам сосредоточиться на создании новых инструментов и функций, которые принесут больше пользы их пользователям.
Преимущества для поставщиков API
Теперь, когда вы убедились в преимуществах использования API, давайте обратим наше внимание на то, почему вы можете захотеть создать его, а затем поделиться им с партнерами или широкой публикой.
Проще говоря, становление поставщиком API открывает возможности для бизнеса и другие преимущества, основанные на простом использовании API. Давайте рассмотрим каждый из них ниже.
Доход
Простой ответ – деньги. Google, Yelp, Facebook и тысячи других компаний делают свои API общедоступными и монетизируют их, чтобы они стали дополнительными источниками дохода. Фактически, в некоторых компаниях API являются основным источником дохода. Согласно недавнему отчету MuleSoft Inc., 35 процентов сегодняшних технологических лидеров генерируют более четверти дохода своих организаций в результате использования API.
Шкала
Делясь тем, что у вас действительно хорошо получается, с максимально широкой аудиторией, сеть пользователей, помимо ваших сотрудников и клиентов, включая сторонних разработчиков и потребителей, станет полагаться на данные и функции, предоставляемые вашими API. В конечном итоге это улучшит использование и принятие вашей основной платформы. Другими словами, API-интерфейсы не только расширяют вашу клиентскую базу, но и создают новые рыночные возможности в цифровой экономике. Amazon Web Services (AWS) – один из самых ярких примеров. Эта платформа, которая позволяет любой компании или разработчику запускать свои приложения поверх платформы технологической инфраструктуры Amazon через API, используется миллионами клиентов по всему миру, и ей приписывают преобразование Amazon из книжного онлайн-магазина в глобального цифрового гиганта..
Инновации
Да, я перечисляю это снова, но с изюминкой. Выше мы обсудили, как потребители API получают выгоду от использования сторонних решений, которые позволяют им сосредоточить свое время и ресурсы на улучшении собственных продуктов, а не на изобретении колеса. Однако чаще всего отношения между потребителями и поставщиками API являются гораздо более компромиссными. Вы можете вспомнить, что в первые дни Twitter его пользовательский интерфейс был немного неуклюжим. Затем появилось независимое приложение TweetDeck, которое разработало лучший пользовательский интерфейс поверх платформы Twitter, используя свой общедоступный API, чтобы все пользователи могли лучше взаимодействовать с Twitter. Это называется беспроигрышным вариантом, друзья мои.
Как использовать API
Итак, вы взволнованы и готовы испытать удачу с API. Что теперь? Вероятно, для вашей компании будет наиболее разумным начать с использования API, а не тратить время и ресурсы на создание своего собственного. Давайте рассмотрим основы того, как вы начали бы использовать API.
Выбор API
Перво-наперво вы захотите найти API, подходящий для вашего бизнеса. Возможно, вы уже положили глаз на API, особенно если вас интересует один из больших париков, таких как API Facebook. Или вам может потребоваться поиск по стоимости – вы можете начать с бесплатного API, прежде чем переходить, например, к платным API, – или по категории или любому количеству других фильтров. Вы можете вводить ключевые слова прямо в поисковой системе или просматривать торговые площадки API, такие как Marketplace Rapid API.
После того, как вы выбрали API, наденьте очки для чтения. Пришло время просмотреть документацию по API.
Просмотр документации API
Документация по API – это, по сути, инструкция по эффективному использованию API и интеграции с ним. Помимо предоставления всей информации, необходимой для работы с API, например о том, нужен ли вам ключ API, он также обычно включает в себя примеры и руководства. Его важность не следует недооценивать: у компании может быть самый лучший API, но никто не будет использовать его, если не знает, как это сделать.
Написание запроса
Далее вам нужно будет написать свой запрос. Самый простой способ – использовать Postman или другой онлайн-клиент HTTP, у которого есть инструменты, которые помогут вам структурировать запросы. Вам по-прежнему необходимо понимать и получать некоторую информацию из документации API, но вам не потребуется много знаний в области программирования, чтобы добиться успеха.
Вы также можете пойти по пути DIY и создать URL-адрес, настроив примеры в существующей документации API, чтобы получить желаемый результат. Это может показаться пугающим, но для этого не обязательно быть разработчиком. Чтобы доказать это, давайте рассмотрим простой пример от TechnologyAdvice.com.
Допустим, вы хотите запросить погоду для конкретного города с помощью API Open Weather Map. Просматривая документацию, вы найдете этот пример URL: api.openweathermap.org/data/2.5/weather?q={city name}. Сладкий! Теперь все, что вам нужно сделать, это скопировать и вставить этот URL-адрес в браузер, ввести название города, о котором вы хотите знать, и указать свой ключ API. Если вы хотите знать погоду в Нэшвилле, ваш URL-адрес будет выглядеть так: api.openweathermap.org/data/2.5/weather?q=Nashville,TN&APIID={numberslettersnumbersletters}.
На этом этапе онлайн-уроки действительно могут прийти на помощь. Например, это видео на YouTube объясняет, как использовать API для извлечения данных о местоположении из Google Maps, а затем использовать эти координаты для поиска ближайших фотографий в Instagram.
Это видео, как и многие другие ресурсы, предназначенные как для разработчиков, так и для не-разработчиков, посвящено определенному типу API, который считается более простым в использовании, чем другие. Эти API-интерфейсы называются REST API.
REST API
API-интерфейсы REST соответствуют ограничениям стиля архитектуры программного обеспечения, называемого «передача репрезентативного состояния», что делает API-интерфейсы относительно простыми в использовании и обнаружении. REST делает данные и функции доступными в виде ресурсов, которые представлены уникальными URL-адресами. Чтобы запросить ресурс через REST API, например Open Weather Map API, вам просто нужно указать его URL.
В типичном REST API ресурсу будут назначены два шаблона URL: множественное число (для обозначения всех ресурсов) и единственное число (для указания одного ресурса). Их также называют конечными точками. Вы можете догадаться, почему? Потому что они идут в конце URL-адреса.
Каждой конечной точке также назначается список действий, которые клиент может запросить у сервера. Таким образом, множественная конечная точка может быть для перечисления или создания ресурсов, а единственная конечная точка может быть для извлечения, обновления и отмены определенного ресурса. Клиент должен будет включить правильный HTTP-глагол (GET, POST, PUT, DELETE) в свой запрос, чтобы сообщить серверу, какое действие следует предпринять.
Клиент и сервер могут использовать разные форматы данных для передачи этой информации туда и обратно. JSON, аббревиатура от JavaScript Object Notation, является излюбленным форматом данных, используемым для REST API, поскольку он считается легким и удобочитаемым.
WordPress имеет REST API, который позволяет разработчикам удаленно создавать, читать и обновлять контент WordPress, передавая объекты JSON между клиентами и серверами. Другими словами, позволяя разработчикам легко структурировать способ получения данных на сервере и с сервера, они могут тратить меньше времени на доступ к нужным им данным и больше времени на улучшение взаимодействия с пользователем.
ОТДЫХ против мыла
REST обычно соприкасается с протоколом простого доступа к объектам (SOAP), еще одним способом создания приложений, работающих через HTTP. REST считается более простой альтернативой SOAP, поскольку он требует написания меньшего количества кода для выполнения задач и следует менее жесткой структуре и логике, чем SOAP. Еще одна причина, по которой люди любят REST: он предоставляет множество соглашений, но оставляет множество решений на усмотрение человека, разрабатывающего API.
Вот простой тест, если вы выбираете между REST и SOAP для вашего API: если вам нужна гибкость, используйте REST. Если вам нужна стандартизация, используйте SOAP.
Примеры API
Без поиска на торговой площадке API и даже без подробного знания об API вы, вероятно, слышали о некоторых из них. Ниже мы более подробно рассмотрим четыре примера, чтобы вы могли понять, какая информация и какие функции доступны через них.
Twitter API
У Twitter есть целая платформа, предлагающая API, которые позволяют копаться в огромном архиве Twitter. Вы можете использовать API-интерфейсы Twitter для поиска старых твитов, встраивания твитов и временных шкал в свой веб-сайт или приложение, программного создания и управления рекламными кампаниями, фильтрации и потоковой передачи твитов в режиме реального времени, предоставления персонализированного обслуживания клиентов с помощью прямых сообщений, подписки на действия в реальном времени более 15 учетных записей через webhooks и многое другое.
Также доступно множество технических ресурсов и инструментов, которые помогут вам в полной мере использовать потенциал глобальной коммуникационной сети.
API Instagram
Платформа Instagram предлагает ряд API-интерфейсов, которые помогут вашему бизнесу с публикацией контента, показателями, анализом и многим другим. Разработчики подключаются к этой платформе для создания приложений и сервисов, ориентированных на три группы: лица, желающие поделиться своим контентом со сторонними приложениями; бренды и рекламодатели, которым необходимо понимать свою аудиторию и права СМИ и управлять ими; а также вещатели и издатели, желающие обнаруживать контент и получать цифровые права на медиа или делиться им с надлежащей атрибуцией.
API YouTube
Давайте рассмотрим несколько причин, по которым вы можете захотеть использовать один из многих доступных API YouTube: воспроизведение видео прямо в приложении; чтобы пользователи могли искать контент, загружать видео, а также создавать списки воспроизведения и управлять ими; чтобы понять, как пользователи взаимодействуют с вашими видео и каналом; планировать прямые трансляции; и многое другое. Вам понадобится ключ API YouTube, чтобы раскрыть его потенциал.
API HubSpot
Платформа HubSpot обращается к компаниям с тремя основными потребностями: тем, кто хочет создать приложение и представить его тысячам потенциальных пользователей, тем, кто хочет создать индивидуальную интеграцию между своим приложением и приложением HubSpot, и тем, кто хочет создать или расширить функциональность своего веб-сайта.
Сбор данных из различного программного обеспечения для транзакций, хранение контактов и взаимодействие со сторонними инструментами и пользовательскими приложениями в одной CRM – это всего лишь несколько способов, которыми API HubSpot могут помочь вашему бизнесу.
Будущее цифровой экономики
Использование и предоставление API дает множество бизнес-преимуществ, но давайте будем простыми. Главная причина? Чтобы подключить ваше приложение к остальному миру программного обеспечения. Эти связи могут дать возможность всем типам организаций, от стартапов до государственных учреждений, создавать новые бизнес-модели, которые стимулируют больше инноваций и идей в современной цифровой экономике.
Таким образом, API меняют не только способ ведения бизнеса компаниями. Они меняют то, как компании думают о бизнесе.
Источник записи: https://blog.hubspot.com