API
Благодаря нашему интерфейсу API, разработчик приложения сможет обращаться к его методам посредством HTTP запросов и получать в ответ актуальную информацию с нашего сервиса в удобном JSON формате.
Большинство методов принимают POST запросы, а некоторые из них, содержат еще и подпись для доступа к закрытым методам.
API позволит получать информацию о дополнениях и их версиях, новостях, тегах, оповещениях и прочего. Полный список вы можете посмотреть в меню.
Мы так же подготовили в качестве наглядного примера схему импорта для Postman, которую вы можете скачать отсюда
Для чего можно использовать API?
Самое главное - это, конечно, автоматизация процесса получения необходимой информации с наименьшими затратами времени.
Предположим, у вас есть приложение со счётчиком продаж вашего дополнения. Чтобы счётчик менялся, вы можете либо отправлять регулярно запрос на получение кол-ва продаж, либо получать событие по факту продажи.
Для быстрого старта, вы можете использовать нашу SDK написанную на языке PHP.
Установка SDK через пакетный менеджер
Для установки вы можете воспользоваться пакетным менеджером Composer.
Подключите класс автозагрузки, который идет в комплекте с пакетным менеджером, если он еще не подключен
Ручная установка
Для ручной установки, скачиваем исходный код отсюда. Перемещаем содержимое папки src в нужную вам директорию.
Подключаем файлы в вашем приложении
Работа с SDK
Подключите пространство имён и создайте объект класса SiteSDK
В SDK имеются все методы для работы с API сайта, которые описаны в меню. Для обращения к ним, используйте символ нижнего подчеркивания "_" в качестве разделителя.
Например, если вам необходим метод /extensions/list/, вы можете обратиться к нему через объект $sdk так:
Если вам необходим метод с подписью (:sign), то в качестве второго аргумента, вы можете передать true, для активации вызова сигнатурного метода.
Исходящие запросы отправляются с вашего устройства на наше API. Абсолютное большинство отправок запросов происходит методом POST.
Многие из запросов необходимо производить с использованием подписи.
Отправка подписанных запросов
Запросы такого вида производятся с помощью добавления в конце URL адреса логина пользователя и секретного ключа интерфейса, который можно получить в настройках профиля в виде хэша md5 с разделителем "-".
Пример подписи запроса на языке PHP:
Пример ответа от сервера
Входящие запросы отправляются на ваше устройство с нашего сервера. Запросы отправляются с помощью метода POST.
Для безопасности, следует производить проверку входящего запроса с помощью подписи.
Приём подписанных запросов
Запросы такого вида проверяются с помощью сортировки всех входящих параметров по их ключу и заменой ключа sign на свой, который можно получить в настройках профиля. После замены ключа, все параметры объединяются с разделителем ":" и хэшированием с помощью алгоритма SHA256.
Пример подписи запроса на языке PHP:
POST /extensions/list/
Получение списка опубликованных дополнений
Обязательные параметры
-
Параметры сортировки
-
idПо ID дополнения
-
nameПо имени из адресной строки (пример: /extensions/example-name.1)
-
titleПо названию дополнения
-
priceПо цене
-
oldpriceПо старой цене
-
likesПо кол-ву симпатий
-
viewsПо кол-ву просмотров
-
commentsПо кол-ву комментариев
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
nameИмя из адресной строки (пример: /extensions/example-name.1)
-
titleНазвание дополнения
-
text_shortКраткая информация о дополнении в HTML формате
-
imagesМассив адресов разных форматов изображения дополнения
-
likesКол-во симпатий
-
viewsКол-во просмотров
-
commentsКол-во комментариев
-
priceЦена дополнения
-
oldpriceСтарая цена дополнения
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /extensions/get/
Получение опубликованного дополнения по его идентификатору
Обязательные параметры
id
Возвращаемые поля
-
nameИмя из адресной строки (пример: /extensions/example-name.1)
-
titleНазвание дополнения
-
text_shortКраткая информация о дополнении в HTML формате
-
textПолное описание дополнения в HTML формате
-
imagesМассив адресов разных форматов изображения дополнения
-
screenshotsМассив скриншотов дополнения
-
likesКол-во симпатий
-
viewsКол-во просмотров
-
commentsКол-во комментариев
-
priceЦена дополнения
-
oldpriceСтарая цена дополнения
-
siteАдрес сайта дополнения
-
tagsМассив имён тегов дополнения
-
instructionsИнструкции по дополненияю в HTML формате
-
rulesУсловия использования в HTML формате
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /extensions/list/:sign
Получение списка собственных дополнений
Обязательные параметры
-
Параметры сортировки
-
idПо ID дополнения
-
nameПо имени из адресной строки (пример: /extensions/example-name.1)
-
titleПо названию дополнения
-
statusПо статусу дополнения
-
priceПо цене
-
oldpriceПо старой цене
-
likesПо кол-ву симпатий
-
viewsПо кол-ву просмотров
-
commentsПо кол-ву комментариев
-
downloadsПо кол-ву скачиваний
-
salesПо кол-ву продаж
-
max_downloadsПо максимальному кол-ву скачиваний
-
max_purchasesПо максимальному кол-ву продаж
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
nameИмя из адресной строки (пример: /extensions/example-name.1)
-
titleНазвание дополнения
-
statusСтатус дополнения
-
text_shortКраткая информация о дополнении в HTML формате
-
imagesМассив адресов разных форматов изображения дополнения
-
likesКол-во симпатий
-
viewsКол-во просмотров
-
commentsКол-во комментариев
-
downloadsКол-во скачиваний
-
salesКол-во продаж
-
priceЦена дополнения
-
oldpriceСтарая цена дополнения
-
max_downloadsМаксимальное кол-во скачиваний
-
max_purchasesМаксимальное кол-во продаж
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /extensions/get/:sign
Получение собственного дополнения по его идентификатору
Обязательные параметры
id
Возвращаемые поля
-
nameИмя из адресной строки (пример: /extensions/example-name.1)
-
titleНазвание дополнения
-
statusСтатус дополнения
-
text_shortКраткая информация о дополнении в HTML формате
-
textПолное описание дополнения в HTML формате
-
imagesМассив адресов разных форматов изображения дополнения
-
screenshotsМассив скриншотов дополнения
-
likesКол-во симпатий
-
viewsКол-во просмотров
-
commentsКол-во комментариев
-
downloadsКол-во скачиваний
-
salesКол-во продаж
-
priceЦена дополнения
-
oldpriceСтарая цена дополнения
-
siteАдрес сайта дополнения
-
tagsМассив имён тегов дополнения
-
instructionsИнструкции по дополненияю в HTML формате
-
rulesУсловия использования в HTML формате
-
max_downloadsМаксимальное кол-во скачиваний
-
max_purchasesМаксимальное кол-во продаж
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /extensions/versions/list/
Получение списка опубликованных версий дополнений
Обязательные параметры
-
Параметры сортировки
-
idПо ID версии
-
extension_idПо ID дополнения
-
titleПо названию версии
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
extension_idИдентификатор дополнения
-
titleНазвание версии
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /extensions/versions/list/:sign
Получение списка собственных версий дополнений
Обязательные параметры
-
Параметры сортировки
-
idПо ID версии
-
extension_idПо ID дополнения
-
titleПо названию версии
-
downloadsПо кол-ву скачиваний
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
extension_idИдентификатор дополнения
-
downloadsКол-во скачиваний
-
titleНазвание версии
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /extensions/tags/list/
Получение списка тегов дополнений
Обязательные параметры
-
Параметры сортировки
-
idПо ID тега
-
nameПо имени из адресной строки (пример: /tags/example-name.1)
-
titleПо названию тега
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
nameИмя из адресной строки (пример: /tags/example-name.1)
-
titleНазвание тега
-
textОписание тега
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /extensions/sales/list/:sign
Получение списка собственных продаж дополнений
Обязательные параметры
-
Параметры сортировки
-
idПо ID версии
-
extension_idПо ID дополнения
-
promo_idИспользуемый идентификатор промо-кода. По умолчанию 0
-
sumПо стоимости покупки с учётом промо-кода
-
user_idПо идентификатору покупателя
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
extension_idИдентификатор дополнения
-
sumЦена, которую заплатил пользователь с учётом промо-кода
-
user_idИдентификатор покупателя
-
promo_idИдентификатор промо-кода. Если не указан, возвращается 0
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /news/list/
Получение списка опубликованных новостей
Обязательные параметры
-
Параметры сортировки
-
idПо ID новости
-
nameПо имени из адресной строки (пример: /news/example-name.1)
-
titleПо названию новости
-
likesПо кол-ву симпатий
-
viewsПо кол-ву просмотров
-
commentsПо кол-ву комментариев
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
nameИмя из адресной строки (пример: /news/example-name.1)
-
titleНазвание новости
-
text_shortКраткая информация о новости в HTML формате
-
imagesМассив адресов разных форматов изображения новости
-
likesКол-во симпатий
-
viewsКол-во просмотров
-
commentsКол-во комментариев
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /news/get/
Получение опубликованной новости по её идентификатору
Обязательные параметры
id
Возвращаемые поля
-
nameИмя из адресной строки (пример: /news/example-name.1)
-
titleНазвание новости
-
text_shortКраткая информация о новости в HTML формате
-
textПолное описание новости в HTML формате
-
imagesМассив адресов разных форматов изображения новости
-
likesКол-во симпатий
-
viewsКол-во просмотров
-
commentsКол-во комментариев
-
tagsМассив имён тегов новости
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /news/list/:sign
Получение списка собственных новостей
Обязательные параметры
-
Параметры сортировки
-
idПо ID новости
-
nameПо имени из адресной строки (пример: /news/example-name.1)
-
titleПо названию новости
-
statusПо статусу новости
-
likesПо кол-ву симпатий
-
viewsПо кол-ву просмотров
-
commentsПо кол-ву комментариев
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
nameИмя из адресной строки (пример: /news/example-name.1)
-
titleНазвание новости
-
statusСтатус новости
-
text_shortКраткая информация о новости в HTML формате
-
imagesМассив адресов разных форматов изображения новости
-
likesКол-во симпатий
-
viewsКол-во просмотров
-
commentsКол-во комментариев
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /news/get/:sign
Получение собственной новости по её идентификатору
Обязательные параметры
id
Возвращаемые поля
-
nameИмя из адресной строки (пример: /news/example-name.1)
-
titleНазвание новости
-
statusСтатус новости
-
text_shortКраткая информация о новости в HTML формате
-
textПолное описание новости в HTML формате
-
imagesМассив адресов разных форматов изображения новости
-
likesКол-во симпатий
-
viewsКол-во просмотров
-
commentsКол-во комментариев
-
tagsМассив имён тегов новости
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /news/tags/list/
Получение списка тегов новостей
Обязательные параметры
-
Параметры сортировки
-
idПо ID тега
-
nameПо имени из адресной строки (пример: /tags/example-name.1)
-
titleПо названию тега
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
nameИмя из адресной строки (пример: /tags/example-name.1)
-
titleНазвание тега
-
textОписание тега
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /notifications/list/:sign
Получение списка собственных оповещений
Обязательные параметры
-
Параметры сортировки
-
idПо ID оповещения
-
nameПо имени из адресной строки (пример: /notifications/example-name.1)
-
titleПо названию оповещения
-
statusПо статусу оповещения
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
nameИмя из адресной строки (пример: /notifications/example-name.1)
-
titleНазвание оповещения
-
statusСтатус оповещения
-
urlURL адрес оповещения
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /notifications/get/:sign
Получение собственного оповещения по его идентификатору
Обязательные параметры
id
Возвращаемые поля
-
nameИмя из адресной строки (пример: /notifications/example-name.1)
-
titleНазвание оповещения
-
statusСтатус оповещения
-
urlURL адрес оповещения
-
textПолное описание оповещения в HTML формате
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /requests/list/:sign
Получение списка собственных заявок на выплаты
Обязательные параметры
-
Параметры сортировки
-
idПо ID заявки
-
sumПо сумме выплаты
-
methodПо названию метода выплаты
-
accountПо номеру счёта
-
statusПо статусу заявки
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
methodИмя метода на латинице
-
accountНомер счёта
-
sumСумма платежа
-
statusСтатус дополнения
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /requests/get/:sign
Получение собственной заявки на выплату по её идентификатору
Обязательные параметры
id
Возвращаемые поля
-
methodИмя метода на латинице
-
accountНомер счёта
-
sumСумма платежа
-
possible_sumСумма платежа с вычетом комиссии
-
statusСтатус дополнения
-
messageОтвет администрации в случае каких-либо ошибок
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /promo/list/:sign
Получение списка собственных промо-кодов
Обязательные параметры
-
Параметры сортировки
-
idПо ID промо-кода
-
singleПо одноразовости использования кода
-
codeПо ключу промо-кода
-
discountПо размеру скидки в процентах
-
statusПо статусу промо-кода
-
extension_idПо идентификатору дополнения, к которому применим промо-код
-
expiredПо дате истечения (в unixtime формате)
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
codeКлюч промо-кода
-
discountРазмер скидки в процентах
-
extension_idИдентификатор дополнения
-
statusСтатус промо-кода
-
singleЯвляется ли промо-код одноразовым
-
expiredДата истечения (в unixtime формате)
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /promo/get/:sign
Получение собственного промо-кода по его идентификатору
Обязательные параметры
id
Возвращаемые поля
-
codeКлюч промо-кода
-
discountРазмер скидки в процентах
-
extension_idИдентификатор дополнения
-
usersСписок пользователей, для которых доступен промо-код
-
statusСтатус промо-кода
-
singleЯвляется ли промо-код одноразовым
-
expiredДата истечения (в unixtime формате)
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /cms/list/
Получение списка доступных систем управления (CMS)
Обязательные параметры
-
Параметры сортировки
-
idПо ID системы
-
titleПо названию системы
-
deprecatedПо состоянию устаревшести системы
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
titleНазвание CMS
-
deprecatedСтатус устаревшей системы
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /cms/get/
Получение опубликованной системы (CMS) по её идентификатору
Обязательные параметры
id
Возвращаемые поля
-
titleНазвание CMS
-
deprecatedСтатус устаревшей системы
-
textПолное описание CMS в HTML формате
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /cms/versions/list/
Получение списка доступных версий CMS
Обязательные параметры
-
Параметры сортировки
-
idПо ID версии
-
cms_idПо ID CMS
-
titleПо названию версии
-
deprecatedПо статусу устаревшести
-
createdПо дате создания (в unixtime формате)
-
updatedПо дате последнего изменения (в unixtime формате)
-
ascПрямой порядок
-
descОбратный порядок
Фильтры
Возвращаемые поля
-
cms_idИдентификатор CMS
-
deprecatedСтатус устаревшей версии
-
titleНазвание версии
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST /cms/versions/get/
Получение доступной версии CMS по её идентификатору
Обязательные параметры
id
Возвращаемые поля
-
cms_idИдентификатор CMS
-
urlURL адрес для скачивания версии
-
deprecatedСтатус устаревшей версии
-
titleНазвание версии
-
createdДата создания (в unixtime формате)
-
updatedДата последнего изменения (в unixtime формате)
POST EVENT sale-extension
Получение события продажи дополнения
Чтобы проверить, что запрос пришел действительно с нашего сервера, следует проверять его подпись, как это описано в разделе входящие запросы
Пример входящего запроса:
Описание параметров
POST EVENT change-status-extension
Получение события изменения статуса вашего дополнения
Чтобы проверить, что запрос пришел действительно с нашего сервера, следует проверять его подпись, как это описано в разделе входящие запросы
Пример входящего запроса:
Описание параметров
-
0На модерации
-
1Активно
-
2Отклонено
POST EVENT change-status-new
Получение события изменения статуса вашей новости
Чтобы проверить, что запрос пришел действительно с нашего сервера, следует проверять его подпись, как это описано в разделе входящие запросы
Пример входящего запроса:
Описание параметров
-
0На модерации
-
1Активно
-
2Отклонено