Библиотека GetCourse.ru для доступа к API
Лицензия: Apache2
Системные требования:
- PHP 5.4+
- PHP cURL extension с поддержкой SSL (обычно включена).
- PHP JSON extension
Если вы используете Composer, то добавьте в свой "composer.json":
"repositories": [
{
"type": "git",
"url": "https://github.com/getcourse-ru/GetCourse-PHP-SDK"
}
],
"require": {
"getcourse-ru/GetCourse-PHP-SDK": "dev-master"
}
Находится в директории sample
Функции АПИ доступны только по ssl протоколу (https)
Для авторизации необходимо передать секретный ключ как параметр key POST запроса
Действие передается как параметр action POST запроса
Параметры в формате base64 кодированной JSON строки передаются как параметр params POST запроса
Импорт пользователя находится по адресу https://{account_name}.getcourse.ru/pl/api/users
Для добавления пользователя необходимо передать действие add, секретный ключ и параметры добавляемого пользователя:
curl -i -H "Accept: application/json; q=1.0, */*; q=0.1" "https://{account_name}.getcourse.dev/pl/api/users" --data "action=add&key={secret_key}¶ms={params}"
Параметры пользователя:
base64_encode(
{
"user":{
"email":"email",
"phone":"телефон",
"first_name":"имя",
"last_name":"фамилия",
"city":"город",
"country":"страна",
"group_name":["Группа1","Группа2"], // для добавления пользователя в группу
"addfields":{"Доп.поле1":"значение","Доп.поле2":"значение"} // для добавления дополнительных полей пользователя
},
"system":{
"refresh_if_exists":0, // обновлять ли существующего пользователя 1/0 да/нет
"partner_email":"email партнера",
"multiple_offers":0, // добавлять несколько предложений в заказ 1/0
"return_payment_link":0 // возвращать ссылку на оплату 1/0
},
"session":{
"utm_source":"",
"utm_medium":"",
"utm_content":"",
"utm_campaign":"",
"utm_group":"",
"gcpc":"",
"gcao":"",
"referer":"",
}
});
Импорт сделки находится по адресу https://{account_name}.getcourse.ru/pl/api/deals
Для добавления сделки необходимо передать действие add, секретный ключ и параметры добавляемого пользователя и сделки:
curl -i -H "Accept: application/json; q=1.0, */*; q=0.1" "https://{account_name}.getcourse.dev/pl/api/deals" --data "action=add&key={secret_key}¶ms={params}"
Параметры сделки должны включать параметры пользователя и дополнительно параметры сделки с ключом deal:
base64_encode(
{
"user":{
// как в импорте пользователя
},
"system":{
// как в импорте пользователя
},
"session":{
// как в импорте пользователя
},
"deal":{
"deal_number":"номер заказа",
"offer_code":"уникальный код предложения",
"product_title":"наименование предложения",
"product_description":"описание предложения",
"quantity":1, // количество
"deal_cost":"сумма заказа",
"deal_is_paid":"оплачен да/нет"
"manager_email":"email менеджера",
"deal_created_at":"дата заказа",
"deal_finished_at":"дата оплаты/завершения заказа",
"deal_comment":"комментарий",
"payment_type":"тип платежа из списка",
"payment_status":"статус платежа из списка",
"addfields":{"Доп.поле1":"значение","Доп.поле2":"значение"} // для добавления дополнительных полей заказа
}
});
Отправка сообщения находится по адресу https://{account_name}.getcourse.ru/pl/api/messages
Для добавления сделки необходимо передать действие send, секретный ключ и параметры отправляемого сообщения:
curl -i -H "Accept: application/json; q=1.0, */*; q=0.1" "https://{account_name}.getcourse.dev/pl/api/messages" --data "action=send&key={secret_key}¶ms={params}"
Параметры отправляемого сообщения должны включать:
base64_encode(
{
"message":{
"email":"email пользователя",
"transport":"email", // тип транспорта
"mailing_id":"id рассылки",
"params":{"поле шаблона 1":"значение","поле шаблона 2":"значение"} // можно переопределить поля шаблона, например first_name
}
});
Ответ возвращается в формате JSON:
{
"success":"true/false", // результат вызова
"action":"вызванное действие",
"result":{
"success":"true/false", // результат действия
"user_id":"id пользователя",
"user_status":"статус пользователя",
"error_message":"сообщение об ошибке",
"error":"true/false", // наличие ошибок
}
}