Логотип компании
1 342Просмотры

Что такое API-ключ и как его использовать

Каждый онлайн-сервис взаимодействует с десятками других: проводит платежи, отправляет уведомления, получает данные. Чтобы эти запросы были безопасными, используют API-ключ. Рассказываем, что это такое, зачем он нужен и как получить.

Приложения часто показывают не свои данные, а лишь удобно оформляют информацию из других сервисов. Источник: Iurii Motov / Shutterstock / FOTODOM

Что такое API-ключ

Когда появился ChatGPT, сайты начали активно внедрять его в работу. Но как это сделать без доступа к самому коду и данным? Для этого нужен API — для удобства разработчиков в OpenAI создали полноценную платформу.

API — набор готовых команд и правил, по которым одно приложение может запросить данные или функционал у другого.

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

Именно благодаря API сайт может принимать платежи через сторонний сервис, а приложение — показывать актуальный курс валюты, используя данные Центробанка.

Внешний вид

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

Реже XML — более строгий и сложный, но для задач со сложной структурой данных. Популярен в банковской сфере и госсекторе.

Если важна максимальная скорость работы — бинарные форматы. Они компактные и быстрые, но не универсальные. Незаменимы, когда нужна производительность: в играх, стримингах или системах реального времени.

Ключ может выглядеть так: SK-5xQ8nL2p9dR3tWvY1cBzM6kH8jF3gT. Это лишь пример, часто в него вписывают область действия.

Чем отличается от токена

Часто путают два инструмента аутентификации, которые решают разные задачи.

Ключ присваивают приложению. Его основная функция — идентифицировать источник запроса. У кодов обычно длительный или неограниченный срок действия, они дают доступ к общим ресурсам, не привязанным к конкретному пользователю.

Токен выдают для авторизации конкретного пользователя. Они имеют ограниченный срок действия и требуют периодического обновления, содержат информацию о правах доступа пользователя.

Типы ключей

Чтобы ограничить риски, создают API key с разными возможностями:

  • Публичные — подходят для обычных действий и дают ограниченные права, например чтение данных.
  • Секретные (приватные) — открывают доступ ко всем возможностям сервиса: управлению данными, настройкам, платежам и т. п. Доступ всегда платный, а полученные коды нужно надежно хранить: их нельзя публиковать, отправлять в чаты или выкладывать в открытый доступ.

Многие сервисы предоставляют оба типа идентификаторов: публичными пользуются обычные клиенты, а приватными — разработчики и владельцы сайтов.

API используют не только сайты, но и любые программы. Источник: Overearth / Shutterstock / FOTODOM

Примеры использования

Ключи открывают «двери» в самые разные сервисы. Доступ к ИИ, который и предлагает OpenAI, — лишь один пример. Через API компании внедряют чат-боты для поддержки, инструменты аналитики, облачные хранилища, платежные системы и даже готовые модули контента.

Любая автоматизация, мобильное приложение или сложный веб-сервис не обходится без программного интерфейса.

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

Развитие open banking — открытых API — меняет саму логику взаимодействия между банками и рынком. Вместо замкнутых экосистем появляются платформы, где сторонние разработчики создают новые продукты на базе банковских данных.

Например, Совкомбанк Страхование предлагает партнерам готовую API-интеграцию для подключения страховых продуктов. А в 2024 году банк перешел на работу по API с AI-платформой «ДВИЖ», что позволило ускорить одобрение ипотечных заявок.

Для бизнеса это новые возможности: привлекайте аудиторию, увеличивайте средний чек и повышайте лояльность клиентов с помощью финансовых продуктов Совкомбанка. Или станьте партнером Халвы.

Где взять API key

Обычному клиенту идентификатор не нужен — большинство продуктов уже настроены. Впрочем, продвинутые пользователи используют его для сбора статистики.

Ключи понадобятся разработчикам, которые пишут интеграции, настраивают ботов, автоматизацию и собирают данные. Малому бизнесу они нужны для подключения платежей, CRM, систем рассылки и других инструментов.

Общая схема получения кода доступа на большинстве платформ выглядит так:

  1. Войдите в аккаунт.
  2. Создайте проект.
  3. Перейдите в раздел API Keys (может называться иначе).
  4. Нажмите «Создать новый» (Generate new key). Обязательно запишите/скопируйте и сразу сохраните набор символов — система может показать их только один раз.
  5. Установите ограничения: IP-адреса, домены, права доступа.
  6. Сохраните код и используйте его на своем сервере.

Финансы — распространенная сфера внедрения программного интерфейса. Источник: Julia Tim / Shutterstock / FOTODOM

Меры безопасности

Если ваш API-ключ попадет в руки злоумышленника, в лучшем случае он прочитает данные, в худшем — скачает конфиденциальную информацию и украдет деньги.

Ущерб напрямую зависит от прав, которые были назначены идентификатору.

Самый распространенный пример — кража аккаунтов в Steam. Мошенники обманывают пользователей и получают доступ к их личному кабинету. Регистрируют ключ на свой домен и продают инвентарь игрока. Иногда потери составляют несколько десятков тысяч рублей.

Для бизнеса утечка может обернуться более серьезными последствиями.

Алексей рекомендует и другие способы защиты. Например, ограничить код по IP-адресу. Даже если его украдут, им не смогут воспользоваться из другого места. Еще один способ — дать минимально возможные права. К примеру, если ваше приложение только читает данные, не надо давать права на редактирование и удаление.

Используйте шифрование соединения, когда передаете ключ. Так его не перехватить.

Если ключ все-таки «утек», нужно немедленно отозвать его через личный кабинет того сервиса, где он был выпущен. Затем сгенерировать новый и обновить в приложении.

Алексей рекомендует посмотреть логи использования ключа, чтобы проверить, воспользовался ли кто-то утечкой. Затем проанализировать, каким образом она произошла, и принять меры, чтобы этого не повторилось.

Рекомендуем начать с изучения документации выбранного сервиса — сэкономит время при интеграции.

Подпишитесь на email-рассылку

Раз в неделю мы будем присылать вам лайфхаки о том, как обращаться с деньгами и повышать финансовую грамотность

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