Download the PHP package business-ru/business-online-sdk-php without Composer
On this page you can find all versions of the php package business-ru/business-online-sdk-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download business-ru/business-online-sdk-php
More information about business-ru/business-online-sdk-php
Files in business-ru/business-online-sdk-php
Package business-online-sdk-php
Short Description SDK для работы с API Бизнес.Ру
License proprietary
Homepage https://online.business.ru/
Informations about the package business-online-sdk-php
Описание API:
https://api-online.class365.ru
Требования:
PHP 7.3 (и выше)
Установка:
В консоли с помощью Composer
-
Установите пакетный менеджер Composer в папке вашего проекта, если до этого момента он еще не был установлен.
- В консоли выполните команду
Либо
- В файле composer.json своего проекта
Добавьте строку "business-ru/business-online-sdk-php": "*" в список зависимостей вашего проекта в файле composer.json
- Обновите зависимости проекта. В консоли перейдите в каталог, где лежит composer.json, и выполните команду:
Начало работы:
Создайте объект для работы с API:
При создании обьекта ему передаются параметры:
- $account - Имя аккаунта. Например для работы с API https://a13344.business.ru/ это a13344. Данный параметр является обязательным.
- $app_id - ID интеграции. Представляет собой набор цифр, который выдается при создании интеграции. Данный параметр является обязательным.
- $secret - Секретный ключ. Представляет собой набор символов, который выдается при создании интеграции. Длина - 32 символа. Данный параметр является обязательным.
- $sleep - При превышении количества запросов включение данной функции даст возможность ожидать сброса лимита и продолжить выполнение запросов к API. true - Включить функцию false - Отключить функцию (По умолчанию) Данный параметр не является обязательным.
- $cache - Библиотека использует кеширование для хранения токенов. Если вы хотите чтобы использовался ваш кэш, в качестве параметра нужно передать объект, реализующий интерфейс CacheInterface (PSR-16). По умолчанию библиотека использует встроенный кэш. Данный параметр не является обязательным.
- $http - Если вы хотите использовать свой HTTP - клиент для запросов к API, в качестве параметра нужно передать объект, реализующий интерфейс ClientInterface (PSR-18). По умолчанию библиотека использует встроенный HTTP - клиент. Данный параметр не является обязательным.
Запросы к API реализуются путем вызова методов у данного обьекта.
Запросы:
Запрос к API может быть выполнен двумя способами:
- с помощью метода request
- c помощью метода requestAll
Request($method, $model, $params)
$method - Метод запроса
Поддерживаются 4 метода запроса:
- get - Запрос на получение записи
- post - Запрос на создание записи
- put - Запрос на изменение записи
- delete - Запрос на удаление записи
Не все модели поддерживают все методы.
Подробнее о методах запроса можно узнать на сайте документации.
$model - Модель
Модель - требуется для указания типа данных для работы Все поддерживаемые модели можно узнать на сайте документации.
$params - Параметры запроса
Параметры запроса нужны для указания конкретного документа, сортировки, условий выборки и т.д. Возможные параметры можно узнать на сайте документации.
RequestAll($model, $params)
В отличии от предыдущего метода, данный метод выполняет только get запросы, но в ответе можно получить неограниченное количество данных (ограничение запросов в 250 записей не действует). Время выполнения данного метода может занимать длительное время. Если при создании данного объекта был передан параметр $sleepy равный true, то даже при превышении лимита запросов метод будет продолжать работу до тех пор, пока не получит все записи.
$model - Модель
Модель - требуется для указания типа данных для работы Все поддерживаемые модели можно узнать на сайте документации.
$params - Параметры запроса
Параметры запроса нужны для указания конкретного документа, сортировки, условий выборки и т.д. Возможные параметры можно узнать на сайте документации.
Работа с веб-хуками
Для работы с веб - хуками у созданного обьекта есть специальный метод - checkNotification()
При сравбатываниии веб - хука вы можете вызвать этот метод для проверки подлинности уведомления.
Метод возвращает true если событие прошло проверку, в противном случае вернет false
В случае если вам нужен функционал только проверки подлинности хуков, возможно не создавать обьект, а вызвать статичный метод __Client::check($app_id, $secret)__
Параметры:
- $app_id - ID интеграции. Представляет собой набор цифр, который выдается при создании интеграции. Данный параметр является обязательным.
- $secret - Секретный ключ. Представляет собой набор символов, который выдается при создании интеграции. Длина - 32 символа. Данный параметр является обязательным.
Подробнее о веб - хуках можно узнать на сайте документации.
Уведомления
Для отправки уведомления пользователям используется метод sendNotification()
Метод принимает в качестве аргумента массив с параметрами уведомления, подробнее можно узнать на сайте документации.
Логирование
Библиотека использует стандарт PSR-3 для логгирования. Для включения логирования нужно у созданного ранее класса вызвать метод setLogger() и передать в качестве аргумента обьект, реализующий интерфейс
LoggerInterface пакета Psr\Log. Подробнее о PSR-3
Подготовленные запросы
Если вы хотите самостоятельно делать запросы - библиотека предоставляет возможность получать данные для этого. Для этого есть метод getPreparedUrl($method, $model, $params), где $method - метод запроса, $model - модель, $params - параметры запроса. Результатом работы метода является массив с ключом url - URL - адрес для выполенения запроса и data - данные, которые должны быть переданы в теле запроса.
Примеры
Ответ
В массиве ответа
- ключ status - статус запроса
- ключ result - ответ на запрос
Примечания
- Для работы библиотеки требуется права на чтение и запись в директории библиотеки.
- При выполнении запроса requestAll нужно понимать, что если например запросить все товары, а товаров бывает очень много, получение ответа может занять продолжительное время.
- При включении опции sleep библиотека будет ждать до 300 секунд, пока не получит разрешения продолжить запрос. Если в конфигурации интерпретатора php.ini параметр max_execution_time указано значение меньше 300, то время ожиидания будет снижено до этого значения.
All versions of business-online-sdk-php with dependencies
ext-curl Version *
ext-json Version *
psr/log Version ^1.1
psr/simple-cache Version ^1.0
psr/http-client Version ^1.0