База знаний
API {App}
описание методов по отправке сообщений в приложения
Введение

BaseURL: https://***.marketingcrm.online/userapi/installhook – установка хука.
https://***.marketingcrm.online - адрес сервера уточнить у сотрудника MCRM

Параметры на входе (метод POST):

- secretKey – секретный ключ.

- restoID – ID предприятия

- hookType – типхука, может принимать значения: 'push', 'wallet_message', 'balance', 'dynamic_action'

- url– адрес на который будут отсылаться уведомления указанного hookType.

Также на входе должен быть еще GET параметр resto_key (столбец ApiKey из таблицы Resto в строке соответствующей указанному в POST параметру restoID).

На выходе:

при успешной установке хука вернет массив:
array('status' =>'ok');

при ошибке запроса:

array('error' => 'Error saving hook!')
array('error' => 'Hook url is not set!')
array('error' => 'Hook type is not set!')
array('error' => 'Resto ID is not set!')
array('error' => 'Secret key is not set!')
Формат POST данных отправляемых наUrl указанный в хуке:

1. Уведомление типа 'push':

Сообщения отправляются по 1000 сообщений в 1 запросе:

array(
'publicKey' =>PublicKey,
'secretKey' =>SecretKey,
'hookType' => 'push',
'cards' =>array(
0 =>array('resto' => 'flyfoods.ru', 'card' => '1000001', 'push' => 'Текст пуша 1'),
1 =>array('resto' => 'Tony Moly', 'card' => '1000122', 'push' => 'Текст пуша 2'),
2 =>array('resto' => 'Филадельфия', 'card' => '1000261', 'push' => 'Текст пуша 3'),

)
)

2. Уведомления типа 'wallet_message': аналогично уведомлениям типа 'push', только

'hookType' => 'wallet_message', и в каждом элементе массива cards будет еще
'message' => 'текст сообщения'.

3. Уведомления типа 'balance':

array(
'publicKey' =>PublicKey,
'secretKey' =>SecretKey,
'resto' => 'flyfoods.ru',
'card' =>'1000001',
'bonusSumm' => 100,
'cardSumm' => 200,
'hookType' => 'balance'
)

Сумма передается в копейках.

4. Уведомления типа 'dynamic_action':

array(
'publicKey' => PublicKey,
'secretKey' => SecretKey,
'hookType' => 'dynamic_action',
'cards' => array(
0 => array(
'resto'=> 'flyfoods.ru',
'card' => '1000001',
'subject'=> 'Здравствуйте!',
'push' => 'Примите участие в акции',
'text'=> 'При покупке электрической зубной щетки, получите пасту Sanino в подарок', 'dateBegin'=> '2020-03-01 00:00:00',
'dateEnd'=> '2020-04-01 10:00:00',
'imageUrl'=> 'https://***.marketingcrm.online/upload/images/5e67c961ee521-fflogo.png'
),
1 => array(
'resto'=> 'Tony Moly',
'card' => '1000042',
'subject'=> 'С праздником!',
'push' => 'Специально для вас!',
'text'=> 'Закажите пиццу к 8 марта и получите скидку 30% на роллы Филадельфия',
'dateBegin'=> '2020-03-05 00:00:00',
'dateEnd'=> '2020-03-11 12:35:00',
'imageUrl'=> 'https://***.marketingcrm.online/upload/images/3767c195qr521-logo.png'
),

)
)

Примечание:

'secretKey' - это зашифрованное с помощью md5 объединение строк 'publicKey'(задан при отправке данных на Url указанный в хуке) и 'secretKey' (задан при установке хука).