Интерфейсы прикладного программирования (API) выходят на новый уровень, позволяя создавать программные приложения более высокого порядка. Компаниям стоит более детально изучить возможности API, пишет на портале InformationWeek Сурабх Чиримар, старший директор Whatfix по партнерству с независимыми разработчиками.

API, который позволяет двум программам (или дата-центрам) взаимодействовать друг с другом, может быть критически важен при доступе к данным или запросе на выполнение определенной процедуры или отчета. API выполняют множество задач, поскольку они создают каналы связи между внутренними серверами и данными, хранящимися в облаке. Они предоставляют короткую ссылку, которая экономит время разработчиков и является отправной точкой для выполнения корпоративных задач.

API не новы, их использование началось более двух десятилетий назад. IBM описывает их как возможность предоставлять данные и функциональность приложений сторонним разработчикам, бизнес-партнерам и внутренним отделам компании. Например, программа, ведущая учет клиентов, может установить связь с другой программой, которая ищет в Интернете дополнительную информацию об этих клиентах, что позволяет создать более богатую базу данных. Другой API может соединить розничный интернет-сайт с банковским бэкендом для проведения финансовых операций.

Наиболее распространенная архитектура и отраслевой стандарт для таких приложений разработаны в формате REST API, что обеспечивает разработчикам высокий уровень гибкости. В мае 2021 г. Forbes сообщал, что почти 40% крупных организаций используют для ведения своего бизнеса более 250 API, а в 2020-м в компании, занимающиеся разработкой API, было инвестировано 2 млрд. долл. (тремя годами ранее — всего 500 млн. долл.)

Полезнее, чем кажется

API используются не только для доступа к данным из двух баз данных в облаке. Например, они могут соединять данные из внутреннего «бункера» с источником, расположенным в публичном облаке. Такая гибкость может помочь освободить ресурсы внутри компании для других задач без необходимости добавления еще одного сервера. На начальном этапе API имели некоторые ограничения, но сейчас они достигли такого уровня, что могут получать доступ к данным, интерпретировать их и формулировать команды для нового рутинного ПО на основе полученных данных, например, для автоматизированных ботов. Облачные провайдеры также сделали шаг вперед и упростили написание API, которые взаимодействуют с их сервисами, помогая снять часть нагрузки по хранению данных с собственной серверной фермы.

Зачем инвестировать в API

По мере роста компании и числа применяемых программ, одним из лучших способов преодоления изолированности каждой программы является использование API с открытым исходным кодом. Благодаря этому все программы могут общаться друг с другом и легко получать доступ к необходимым данным. API представляют собой язык, необходимый именно для этого. Компании же выпускают руководства для партнеров, которые объясняют, как можно использовать их API, чтобы все были на одной волне, когда дело доходит до написания программ.

В качестве примера можно привести интеграцию HubSpot и SalesForce. HubSpot — инструмент отслеживания активности продаж, который фиксирует взаимодействие с клиентами на различных платформах (электронная почта, социальные сети, записи телефонных звонков и т. д.). SalesForce — это инструмент управления взаимоотношениями с клиентами (CRM), который использует преимущества API для отслеживания потенциальных/существующих клиентов — прорываясь через изолированные структуры для создания более полного профиля, собранного из различных баз данных. Соединяя эти разрозненные платформы с помощью API, можно быстро получить доступ к данным из различных источников, вооружив специалистов по продажам большим количеством данных, необходимых им для реализации возможностей продаж и отслеживания потребительских тенденций.

Что нужно учитывать

При написании API с открытым исходным кодом крайне важно иметь «чистую документацию». Технологические команды на обоих концах «трубы» должны пообщаться друг с другом до написания программы, чтобы заранее проработать все возможные ошибки. Облегчить жизнь — в этом весь смысл использования API. Документация о том, как построены API компании, должна быть полной и общедоступной для разработчиков. Это дает им отправную точку, на которую можно опираться, не разрабатывая ПО с нуля подобно программе «под ключ». Кроме того, компании могут извлечь пользу из следующих лучших практик:

Будьте внимательны к вопросам безопасности. Это очень важно при написании API, поскольку он осуществляет доступ к данным компании (и личной информации). Если конечные пользователи API не владеют технологией или передовыми методами обеспечения безопасности, особенно если API написан некачественно, могут возникнуть проблемы.

Придерживайтесь принципа модульности. Для доступа к различным функциям и хранилищам данных лучше написать несколько простых и небольших API. Таким образом, при возникновении ошибок или проблем с безопасностью вся сеть данных может быть не затронута. Например, один API может быть только для чтения, а другой позволять писать процедуры на основе информации, к которой осуществляется доступ. Увеличение числа API не приводит к значительному увеличению затрат, к тому же их легче обновлять.

Используйте лучшие из доступных технологий. API REST стал стандартом, но в некоторых случаях он может оказаться не самой лучшей моделью. GraphQL был разработан десять лет назад, а в 2015 г. представлен публично. Цель заключалась в том, чтобы сделать API быстрыми, гибкими и удобными для разработчиков. Он считается более мощным способом взаимодействия между программами, но пока не получил широкого распространения.

Используйте все преимущества API

С бурным ростом цифровой трансформации API-интеграции, работающие как «труба наружу», нашли свою нишу, поскольку писать программы для доступа в облако и из облака становится все проще. Сегодня API называют строительными блоками де-факто цифровой эпохи, позволяющими разработчикам ПО иметь прочную отправную точку для работы. В то же время API выходят за рамки этого первого этапа, позволяя создавать программные приложения более высокого порядка. Это может помочь быстрее запустить новые направления бизнеса или быстрее вывести какое-то из них на рынок. Компаниям стоит активизироваться и более подробно изучить, что API могут сделать для них.