Интеграция сайта с API - Что это и как пользоваться?

Application programming interface, сокращенно API, представляет собой набор методов для взаимодействия с другими приложениями.

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

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

Тогда вы делаете два метода:

- метод, показывающий цену продукта (а к ней уже сайт контрагентов добавит 10%)

- и метод, возвращающий остатки на складе.

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

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

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

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

Вот так мы разобрали, что такое API. В реальности методов намного больше.

Обычно API содержит следующие данные:

- методы для взаимодействия и их описания

- данные, которые можно передать этим методам

- возвращаемые методами данные (в том числе и ошибки)

Примеры API

С API вы встречаетесь повседневно в интернете. Вот несколько распространенных примеров.

Комментарии Вконтакте и Фейсбук.

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

Передача заказа из интернет магазина в 1с

А также получение товара из 1С.

Регистрация через соцсети

Применяется на всех современных сайтах, чтобы мотивировать пользователей регистрироваться в системе.

Агрегаторы (квестов)

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

Онлайн-оплата

Используется на сайтах большинства интернет-магазинов.

Можно ли самостоятельно настроить API на сайте?

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

Яндекс Метрика и Google Analitycs

Счетчики посещений на сайт. Для первоначальной интеграции достаточно вставить код на сайт по инструкции. Для настройки целей потребуются уже знания веб-разработки.

Конструктор карт Яндекса

Позволяет создать карту с меткой, схему проезда, карту доставки в конструкторе. А потом получить код и вставить в нужное место на сайте.

Видео Ютуб

Видео с Ютуба также можно вставить на страницу сайта.

Под видео выбираем Поделиться - Встроить.

Появится код видео. Его и вставляем, куда нам нужно.

Интеграция готового API с помощью программиста на примере эквайринга

Разберем небольшой пример - оплата с сайта с помощью эквайринга Сбербанка.

Для начала вы заключаете договор со Сбербанком. Это могут сделать только юридические лица или индивидуальные предприниматели. Без юрлица/ИП вы не имеете права принимать оплату на сайте.

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

Разработчики пишут следующие методы:

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

- Регистрация заказа

- Передача корзины (списка товаров заказа) и общей суммы

Методы вызываются при оформлении заказа.

После успешной регистрации заказа пользователь перенаправляется на страницу оплаты товара. Разработчики могут сами ее создать либо использовать готовую форму от Сбербанка.

После того, как сумма оплачена, пользователь возвращается в магазин. Тут скрипт проверяет статус заказа и в случае успешной оплаты уведомляет пользователя об этом. Если во время операции произошли ошибки, они тоже выводятся на экран.

При успешной оплате заказ отправляется в 1с с помощью другого API (обмен с 1с).

Вверх