REST API

Обзор

API реализовано в соответствии с протоколом JSONAPI.

Все методы API, кроме Token доступны только авторизованным пользователям. Для вызова этих методов необходимо отправлять HTTP заголовок, содержащий токен JWT:

Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Все данные следует передавать в кодировке utf-8.

Постраничная навигация

При запросе коллекции сущностей в /GET параметрах можно передать:

?page[number]=1&page[size]=15

Номер и размер страницы соответственно. В ответе будут возвращены дополнительные блоки:

"meta": {
  "total": 21,
  "count": 5
},
"links": {
  "self": "https://api.loymaxsc.net/event?page[number]=1&page[size]=100",
  "first": "https://api.loymaxsc.net/event?page[number]=1&page[size]=100",
  "last": "https://api.loymaxsc.net/event?page[number]=5&page[size]=100",
  "next": "https://api.loymaxsc.net/event?page[number]=2&page[size]=100"
}

Сортировка

При запросе коллекции сущностей в /GET параметрах можно передать:

?sort=[{"attribute": "name", "direction": "asc"},...]

Он представляет собой json-массив объектов с условиями сортировки:

Типы данных

Доступные типы данных:

Ограничение нагрузки на REST API

В REST API действует ограничение на количество запросов с одного IP в единицу времени. При превышении лимита в 1000 запросов в минуту возвращается ошибка 429:

HTTP/1.1 Error 429: Too Many Attempts
{
    "errors": [
        {
            "status": 429,
            "title": "Too Many Attempts."
        }
    ]
}

В случае получения такого сообщения клиент должен сделать паузу на 1 минуту и уменьшить частоту запросов.

Методы API

Токен

Получить токен

POST https://api.loymaxsc.net/token

Метод для получения авторизационного токена. Токен необходим для выполнения запросов к API. Полученный токен отправляется в заголовке запроса: Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Query Parameters

Headers

HTTP/1.1 200 OK
{
  "data": {
    "type": "user",
     "id": "1",
     "attributes": {
        "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOmZhbHNlLCJhdWQiOiJza2VsZXRvbi5kZXYiLCJpYXQiOjE0NzY0Mjk4NjksImV4cCI6MTQ3NjQzMzQ2OX0.NJn_-lK28kEZyZqygLr6B-FZ2zC2-1unStayTGicP5g",
        "user": {
            "id": "1",
            "name": "api",
            "email": "api@example.com"
        }
     }
  }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "username": "admin@example.com",
            "password": "qwerty"
        }
    }
}

Стоит учитывать, что токен имеет ограниченный срок действия - 1 час. Если он истёк, возвращается ошибка 401, и будет необходимо получить новый токен.

Клиент

Получить список клиентов

GET https://api.loymaxsc.net/customer

Разрешено только для авторизованных пользователей с ролью API.

Headers

 HTTP/1.1 200 OK
{
  "data": [
   {
       "type": "customer",
       "id": "1",
       "attributes": {
           "id": "1",
           "uid": "dc6719706923287a20844dc0f50d9046",
           "site_user_id": "1",
           "local_id": "1",
           "full_name": "Тестовый клиент",
           "first_name": null,
           "middle_name": null,
           "last_name": null,
           "email": "mail@example.com",
           "email_validation_code": "39",
           "email_validation_date": "2017-06-20 16:06:02",
           "email_edited": "N",
           "phone": null,
           "phone_type": "10",
           "phone_validation_code": "30",
           "phone_validation_date": "2017-06-20 16:06:02",
           "phone_edited": "N",
           "timezone": null,
           "sex": null,
           "birth_date": null,
           "country": null,
           "area": null,
           "city": null,
           "zip": null,
           "register_date": "2017-06-20 16:06:02",
           "first_order_date": null,
           "first_order_number": null,
           "first_order_items_sum": "0.00",
           "last_order_date": null,
           "last_order_number": null,
           "last_order_items_sum": "0.00",
           "order_cnt": "0",
           "order_sum": "0.00",
           "order_average_check": "0.00",
           "order_cnt_rfm": "0",
           "order_sum_rfm": "0.00",
           "order_average_check_rfm": "0.00",
           "r_seg_now": "0",
           "f_seg_now": "0",
           "m_seg_now": "0",
           "r_seg_prev": "0",
           "f_seg_prev": "0",
           "m_seg_prev": "0",
           "rfm_date_upd": null,
           "active": "Y",
       },
       "links": {
           "self": "https://api.loymaxsc.net/customer/1"
       }
   },
   {
       "type": "customer",
       "id": "2",
       "attributes": {
           "id": "2",
           "uid": "sdfjkdfhsjdfhsdjkfbc734bdsmnbdsmnbdd",
           "site_user_id": "1",
           "local_id": "2",
           "full_name": "Тестовый клиент 2",
           "first_name": null,
           "middle_name": null,
           "last_name": null,
           "email": "mail@example.com",
           "email_validation_code": "39",
           "email_validation_date": "2017-06-20 16:06:02",
           "email_edited": "N",
           "phone": null,
           "phone_type": "10",
           "phone_validation_code": "30",
           "phone_validation_date": "2017-06-20 16:06:02",
           "phone_edited": "N",
           "timezone": null,
           "sex": null,
           "birth_date": null,
           "country": null,
           "area": null,
           "city": null,
           "zip": null,
           "register_date": "2017-06-20 16:06:02",
           "first_order_date": null,
           "first_order_number": null,
           "first_order_items_sum": "0.00",
           "last_order_date": null,
           "last_order_number": null,
           "last_order_items_sum": "0.00",
           "order_cnt": "0",
           "order_sum": "0.00",
           "order_average_check": "0.00",
           "order_cnt_rfm": "0",
           "order_sum_rfm": "0.00",
           "order_average_check_rfm": "0.00",
           "r_seg_now": "0",
           "f_seg_now": "0",
           "m_seg_now": "0",
           "r_seg_prev": "0",
           "f_seg_prev": "0",
           "m_seg_prev": "0",
           "rfm_date_upd": null,
           "active": "Y",
       },
       "links": {
           "self": "https://api.loymaxsc.net/customer/2"
       }
   }
  ]
}

Получить клиента

GET https://api.loymaxsc.net/customer/:id

Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
  "data": {
    "type": "customer",
    "id": "1",
    "attributes": {
        "id": "1",
        "uid": "dc6719706923287a20844dc0f50d9046",
        "site_user_id": "1",
        "local_id": "1",
        "full_name": "Тестовый клиент",
        "first_name": null,
        "middle_name": null,
        "last_name": null,
        "email": "mail@example.com",
        "email_validation_code": "39",
        "email_validation_date": "2017-06-20 16:06:02",
        "email_edited": "N",
        "phone": null,
        "phone_type": "10",
        "phone_validation_code": "30",
        "phone_validation_date": "2017-06-20 16:06:02",
        "phone_edited": "N",
        "timezone": null,
        "sex": null,
        "birth_date": null,
        "country": null,
        "area": null,
        "city": null,
        "zip": null,
        "register_date": "2017-06-20 16:06:02",
        "first_order_date": null,
        "first_order_number": null,
        "first_order_items_sum": "0.00",
        "last_order_date": null,
        "last_order_number": null,
        "last_order_items_sum": "0.00",
        "order_cnt": "0",
        "order_sum": "0.00",
        "order_average_check": "0.00",
        "order_cnt_rfm": "0",
        "order_sum_rfm": "0.00",
        "order_average_check_rfm": "0.00",
        "r_seg_now": "0",
        "f_seg_now": "0",
        "m_seg_now": "0",
        "r_seg_prev": "0",
        "f_seg_prev": "0",
        "m_seg_prev": "0",
        "rfm_date_upd": null,
        "active": "Y",
    },
    "links": {
        "self": "https://api.loymaxsc.net/customer/1"
    }
  }
}

Зарегистрировать клиента

POST https://api.loymaxsc.net/customer

Метод для регистрации профиля клиента клиента по его идентификатору в мастер-системе. ВАЖНО: Повторный вызов запроса для уже имеющегося в базе local_id обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя платформы. Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

HTTP/1.1 200 OK
{
  "data": {
    "type": "customer",
    "id": "2",
    "attributes": {
      "id": "2",
      "local_id": 724,
      "full_name": "Тестовый клиент",
      "email": "mail@example.com",
      "register_date": "2017-06-12 16:57:52",
    },
    "links": {
      "self": "https://api.loymaxsc.net/customer/2"
    }
  }
}

Изменить клиента

PATCH https://api.loymaxsc.net/customer/:id

Метод для изменения профиля клиента по его идентификатору в мастер-системе. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
  "data": {
    "type": "customer",
    "id": "2",
    "attributes": {
      "id": "2",
      "local_id": 724,
      "full_name": "Тестовый клиент",
      "email": "mail2@example.com",
      "register_date": "2017-06-12 16:57:52",
    },
    "links": {
      "self": "https://api.loymaxsc.net/customer/2"
    }
  }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "local_id": "724",
            "full_name": "Тестовый клиент",
            "email": "mail2@example.com",
            "register_date": "2017-06-12 16:57:52"
        }
    }
}

Изменить подписку клиента

PATCH https://api.loymaxsc.net/customer/:local_id/subscribe

Метод для управления подпиской клиента по его идентификатору в мастер-системе. ВАЖНО: Подписка на категории рассылок, по которым код не передан не обновляется. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
        "attributes": {
            "status":"success"
        }
    }
}

Обращение к категориям рассылок производится по коду категории.

Пример запроса:

{
  "data": {
    "attributes": {
  		"categories": {
          "news": {"email" :"N", "sms": "Y", "push": "N"},
          "hidden-sales":  {"email" :"Y"}
		  }
    }
  }
}

Получить список рассылок и кампаний, в которых участвовал клиент

GET https://api.loymaxsc.net/customer/:id/mailing

Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

 HTTP/1.1 200 OK
{
    "links": {
        "first": "/mailing?page%5Blimit%5D=10",
        "next": "/mailing?page%5Bnumber%5D=2&page%5Blimit%5D=10",
        "last": "/mailing?page%5Bnumber%5D=13&page%5Blimit%5D=10"
    },
    "data": [
          {
            "type": "mailing",
            "id": "705",
            "attributes": {
                "id": "705",
                "subject": "asd",
                "date": "2022-12-01 19:21:32",
                "in_control_group": "Y",
                "entity_type": "client_mailings_list",
                "type": "mailing",
                "channel": "mail",
                "contact": "test@email.com",
                "template": null,
                "context": [
                    {
                        "key" : "Audience",
                        "value" : "27200722"
                    },
                    {
                        "key" : "MechanicsCode",
                        "value" : "373673"
                    },
                ],
                "event_type": "send",
                "events": [
                    {
                        "type": "send",
                        "date": "2022-12-01 19:21:32"
                    }
                    {
                        "type": "delivered",
                        "date": "2022-12-01 19:21:56"
                    },
                ]
            },
            {
            "type": "mailing",
            "id": "705",
            "attributes": {
                "id": "705",
                "message": "",
                "sms_message": "This is a test SMS",
                "date": "2023-02-28 14:33:48",
                "in_control_group": "Y",
                "entity_type": "client_sms_list",
                "type": "mailing",
                "channel": "sms",
                "contact": "+79235227632",
                "template": "This is a test SMS",
                "context": null,
                "event_type": "send",
                "events": [
                    {
                        "type": "send",
                        "date": "2023-02-28 14:33:48"
                    }
                ]
            },
            "links": {
                "self": "/mailing/705"
            }
        },
        {
            "type": "mailing",
            "id": "440",
            "attributes": {
                "id": "440",
                "message": "This is a test PUSH",
                "date": "2023-03-13 15:14:21",
                "in_control_group": "Y",
                "entity_type": "client_push_list",
                "type": "mailing",
                "channel": "push",
                "contact": "6516626e-0681-11ed-bde6-1595aa93e5c2",
                "template": "This is a test PUSH",
                "context": null,
                "event_type": "send",
                "events": [
                    {
                        "type": "send",
                        "date": "2023-03-13 15:14:21"
                    }
                ]
            },
            "links": {
                "self": "/mailing/440"
            }
        },
        {
            "type": "mailing",
            "id": "608",
            "attributes": {
                "id": 608,
                "name": "4584_3",
                "date": "2022-11-15 15:26:45",
                "in_control_group": "N",
                "send_type": "mail",
                "entity_type": "client_campaigns_list",
                "type": "campaign",
                "channel": "mail",
                "send_type_t": "email",
                "contact": "test@email.com",
                "step_id": "4",
                "context": [
                    {
                        "key" : "Audience",
                        "value" : "27200724"
                    },
                    {
                        "key" : "MechanicsCode",
                        "value" : "373670"
                    },
                ],
                "event_type": "send",
                "template": "<head><style type=\"text/css\"></style></head><body><p>4584</p><p>{{client.links.unsubscribe}}</p></body>",
                "events": [
                    {
                        "type": "send",
                        "date": "2022-11-15 15:26:45"
                    }
                ]
            },
            "links": {
                "self": "/mailing/608"
            }
        },
    ]
}

Зарегистрировать устройство

POST https://api.loymaxsc.net/customer/:local_id/device

Метод для регистрации устройства клиента. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

{
    // Response
}

Получить список устройств

GET https://api.loymaxsc.net/customer/:local_id/device

Метод для получения списка устройств клиента. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

{
    // Response
}

Удалить устройство

DELETE https://api.loymaxsc.net/customer/:local_id/device/:token

Метод для удаления устройства клиента. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

{
    // Response
}

Бонусы клиента

Получить информацию о бонусах клиента по его идентификатору в мастер-системе

GET https://api.loymaxsc.net/customer/:local_id/bonus

Метод возвращает информацию о бонусах клиента по его идентификатору в мастер-системе: - Количество активных бонусов; - Количество бонусов, которые ожидают активации; - Количество бонусов, которые ожидают деактивации; - Ближайшую дату деактивации бонусов; - Ближайшее количество деактивируемых бонусов. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "bonus",
        "id": "4615",
        "attributes": {
            "id": 4615,
            "bonus_active": 1000,
            "bonus_expect_activate": 300,
            "bonus_expect_deactivate": 100,
            "bonus_expect_deactivate_next_date": "2020-12-01 16:30:45",
            "bonus_expect_deactivate_next_value": 0
        }
    }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "bonus_active": 1, //бонусов активно, money
            "bonus_expect_activate": 1, //бонусов ожидает активации, money (может быть пустым)
            "bonus_expect_deactivate": 1, //бонусов ожидает деактивации, money (может быть пустым)
            "bonus_expect_deactivate_next_date": "2020-08-01 16:30:45", //ближайшая дата деактивации бонусов, yyyy-mm-dd hh:mm:ss, string (может быть пустым);
            "bonus_expect_deactivate_next_value": 1, //ближайшее количество деактивируемых бонусов, money (может быть пустым).
        }
    }
}

Изменить информацию о бонусах клиента по его идентификатору в мастер-системе

PATCH https://api.loymaxsc.net/customer/:local_id/bonus

Метод для изменения бонусов клиента по его идентификатору в мастер-системе пользователя. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "bonus",
        "id": "4615",
        "attributes": {
            "id": 4615,
            "bonus_active": 1000,
            "bonus_expect_activate": 300,
            "bonus_expect_deactivate": 100,
            "bonus_expect_deactivate_next_date": "2020-12-01 16:30:45",
            "bonus_expect_deactivate_next_value": 0
        }
    }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "bonus_active": 1, //бонусов активно, money
            "bonus_expect_activate": 1, //бонусов ожидает активации, money (может быть пустым)
            "bonus_expect_deactivate": 1, //бонусов ожидает деактивации, money (может быть пустым)
            "bonus_expect_deactivate_next_date": "2020-08-01 16:30:45", //ближайшая дата деактивации бонусов, yyyy-mm-dd hh:mm:ss, string (может быть пустым);
            "bonus_expect_deactivate_next_value": 1, //ближайшее количество деактивируемых бонусов, money (может быть пустым).
        }
    }
}

Чек

Получить список чеков

GET https://api.loymaxsc.net/order

Метод для получения списка чеков (заказов/транзакций). Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
  "data": [
   {
       "type": "order",
       "id": "1",
       "attributes": {
           "id": "1",
           "local_id": "177",
           "status_name": "Отмена",
           "delivery_country": null,
           "delivery_area": null,
           "delivery_city": null,
           "delivery_zip": null,
           "date": "2017-06-20 16:06:02",
           "items":  [
               {
                   "local_id": "577",
                   "product_id": 789,
                   "product_name": "Зубной порошок",
                   "price": 120,
                   "cnt": 1,
                   "sum": 120
               }
           ]
       },
       "links": {
           "self": "https://api.loymaxsc.net/order/1"
       }
   },
   {
       "type": "order",
       "id": "2",
       "attributes": {
           "id": "2",
           "local_id": "754",
           "status_name": "Продажа",
           "delivery_country": null,
           "delivery_area": null,
           "delivery_city": null,
           "delivery_zip": null,
           "date": "2017-06-21 16:06:02",
           "items":  [
               {
                   "local_id": "577",
                   "product_id": 789,
                   "product_name": "Зубной порошок",
                   "price": 120,
                   "cnt": 1,
                   "sum": 120
               }
           ]
       },
       "links": {
           "self": "https://api.loymaxsc.net/order/2"
       }
   }
  ]
}

Получить чек

GET https://api.loymaxsc.net/order/:id

Метод для получения чека (заказа/транзакции) по идентификатору в мастер-системе. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
  "data": {
    "type": "order",
    "id": "1",
    "attributes": {
         "id": "1",
         "local_id": "177",
         "status_name": "Отмена",
         "delivery_country": null,
         "delivery_area": null,
         "delivery_city": null,
         "delivery_zip": null,
         "date": "2017-06-20 16:06:02",
         "items": [
             {
                 "local_id": "577",
                 "product_id": 789,
                 "product_name": "Зубной порошок",
                 "price": 120,
                 "cnt": 1,
                 "sum": 120
             }
         ]
    },
    "links": {
        "self": "https://api.loymaxsc.net/order/1"
    }
  }
}

Зарегистрировать чек

POST https://api.loymaxsc.net/order

Метод для регистрации чека (заказа/транзакции), либо обновления существующего чека (заказа/транзакции) по его local_id. ВАЖНО: Повторный вызов запроса для уже имеющегося в базе local_id обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
      "attributes": {
        "local_id": "1050",
        "client_id": "724",
        "status_name": "Создан",
        "items": [
            {
             "local_id": "577",
             "product_id": "789",
             "price": 120,
             "cnt": 1,
             "sum": 120
            }
        ]
      }
    },
    "links": {
      "self": "https://api.loymaxsc.net/order/2"
    }
  }
}

Состав чека (строка чека):

Жирным обозначены обязательные поля.

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

Пример запроса:

{
    "data": {
        "attributes": {
            "local_id": "1050",
            "client_id": "724",
            "date": "2020-07-03 17:30:22",
            "status_name": "Создан",
            "items": [
                {
                    "local_id": "577",
                    "product_id": "789",
                    "price": 120,
                    "cnt": 1,
                    "sum": 120
                }
            ]
        }
    }
}

Изменить чек

PATCH https://api.loymaxsc.net/order/:id

Метод для изменения чека (заказа/транзакции) по его идентификатору в мастер-системе. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
      "attributes": {
        "local_id": "1050",
        "client_id": "724",
        "status_name": "Создан",
        "items": [
            {
             "local_id": "577",
             "product_id": "789",
             "price": 120,
             "cnt": 1,
             "sum": 120
            }
        ]
      }
    },
    "links": {
      "self": "https://api.loymaxsc.net/order/2"
    }
  }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "local_id": "1050",
            "client_id": "724",
            "status_name": "Создан",
            "date": "2020-07-03 17:30:22",
            "items": [
                {
                    "local_id": "577",
                    "product_id": "789",
                    "price": 120,
                    "cnt": 1,
                    "sum": 120
                }
            ]
        }
    }
}

Событие

Получить список событий

GET https://api.loymaxsc.net/event

Метод для получения списка событий. Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "https://api.loymaxsc.net/event?page%5Blimit%5D=10",
        "last": "https://api.loymaxsc.net/event?page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "event",
            "id": "1",
            "attributes": {
                "id": "1",
                "site_user_id": "1",
                "client_id": "91",
                "date_add": "2017-06-20 16:57:52",
                "name": "reset-password",
                "context": {
                   "token": "klhe74njl83jxd00"
                }
            },
            "links": {
                "self": "https://api.loymaxsc.net/event/1"
            }
        },
    ],
    "meta": {
        "count": 1,
        "total": 1
    }
}

Получить событие

GET https://api.loymaxsc.net/event/:id

Метод для получения события. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "event",
        "id": "3",
        "attributes": {
            "id": "3",
            "local_id": "40", 
            "site_user_id": "1",
            "client_id": "21",
            "date_add": "2017-06-20 18:32:08",
            "name": "reset-password",
            "context": {
               "token": "klhe74njl83jxd00"
            }
        },
        "links": {
            "self": "https://api.loymaxsc.net/event/3"
        }
    }
}

Зарегистрировать событие

POST https://api.loymaxsc.net/event

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

Headers

Request Body

HTTP/1.1 200 OK
{
  "data": {
    "type": "event",
    "id": "2",
    "attributes": {
      "id": "2",
      "client_id": "17",
      "name": "reset-password",
      "context": { 
         "token": "klhe74njl83jxd00"
      }
    },
    "links": {
      "self": "https://api.loymaxsc.net/event/2"
    }
  }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "client_id": "17",
            "date": "2020-07-03 17:30:22",
            "name": "reset-password",
            "context": {
                "token": "klhe74njl83jxd00"
            }
        }
    }
}

Изменить событие

PATCH https://api.loymaxsc.net/event/:id

Метод для изменения события по его идентификатору в мастер-системе. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
  "data": {
    "type": "event",
    "id": "2",
    "attributes": {
     "id": "2",
     "client_id": "17",
     "name": "reset-password",
         "context": { 
             "token": "klhe74njl83jxd00"
         }
    },
    "links": {
      "self": "https://api.loymaxsc.net/event/2"
    }
  }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "client_id": "17",
            "date": "2020-07-03 17:30:22",
            "name": "reset-password",
            "context": {
                "token": "klhe74njl83jxd00"
            }
        }
    }
}

Web-событие

Зарегистрировать web-событие

POST https://api.loymaxsc.net/web_event

Метод для записи web-событий, таких как регистрация, авторизация в системе, просмотр карточки в МП, просмотр продуктовой категории, просмотр продукта, добавление продукта в корзину, удаление продукта из корзины, очистка корзины, завершение оформления заказа, регистрация произвольного события.

Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

Пример запроса:

{
    "data": {
        "attributes": {
            "client_id": "17", 
            "source_code": "mainweb",
            "source_id": "323",
            "session_id": "123456",
            "date": "2020-07-03 17:30:22",
            "name": "add_to_container",
            "category_id": "12",
            "product_id": "423",
            "quantity": 1.56,
            "price": 149.90,
            "container": "webcart"
        }
    }
}

Продукт

Получить список продуктов

GET https://api.loymaxsc.net/product

Метод для получения списка продуктов. Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
   "links": {
       "first": "https://api.loymaxsc.net/product?page%5Blimit%5D=10",
       "next": "https://api.loymaxsc.net/product?page%5Bnumber%5D=2&page%5Blimit%5D=10",
       "last": "https://api.loymaxsc.net/product?page%5Bnumber%5D=33101&page%5Blimit%5D=10"
   },
   "data": [
       {
           "type": "product",
           "id": "2",
           "attributes": {
               "id": "2",
               "date_add": null,
               "date_upd": null,
               "site_user_id": "118",
               "local_id": "000-110-069",
               "category_id": "10118",
               "name": "Подарочная карта",
               "category_name": "Услуги разное",
               "sku": "000-110-069",
               "supplier": null,
               "brand": "Rosenberry",
               "producer": null,
               "season_type": "Временный",
               "season_start": null,
               "season_end": null
           },
           "links": {
               "self": "https://api.loymaxsc.net/product/1"
           }
       },
       {
           "type": "product",
           "id": "51",
           "attributes": {
               "id": "51",
               "date_add": null,
               "date_upd": null,
               "site_user_id": "118",
               "local_id": "000-023-119",
               "category_id": "244320",
               "name": "Лопата необыкновенная. 5м.",
               "category_name": "Лопата совковая с черенком",
               "sku": "000-001-119",
               "supplier": "ШтыкМастер",
               "brand": "Hozyaister",
               "producer": "Фераментас",
               "season_type": "Постоянный",
               "season_start": null,
               "season_end": null
           },
           "links": {
               "self": "https://api.loymaxsc.net/product/2"
           }
       },
       {
           "type": "product",
           "id": "33",
           "attributes": {
               "id": "33",
               "date_add": null,
               "date_upd": null,
               "site_user_id": "118",
               "local_id": "000-000-990",
               "category_id": "212438",
               "name": "Удлинитель сборный дер. 3м.",
               "category_name": "Лопата штыковая с черенком",
               "sku": "000-000-990",
               "supplier": "ШтыкМастер",
               "brand": "Hozyaister",
               "producer": null,
               "season_type": "Постоянный",
               "season_start": null,
               "season_end": null
           },
           "links": {
               "self": "https://api.loymaxsc.net/product/3"
           }
       },
   ],
   "meta": {
       "count": 10,
       "total": 331003
   }
}

Получить продукт

GET https://api.loymaxsc.net/product/:id

Метод для получения продукта. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
   "data": {
       "type": "product",
       "id": "533",
       "attributes": {
           "id": "533",
           "date_add": null,
           "date_upd": null,
           "site_user_id": "13",
           "local_id": "000-000-300",
           "category_id": "12343",
           "name": "Корнеудалитель с дерев. ручкой",
           "category_name": "Культиваторы, рыхлители",
           "sku": "000-345-300",
           "supplier": "DachCraft",
           "brand": "OGuiller",
           "producer": null,
           "season_type": "Сезонный",
           "season_start": null,
           "season_end": null
       },
       "links": {
           "self": "https://api.loymaxsc.net/product/33"
       }
   }
}

Зарегистрировать продукт

POST https://api.loymaxsc.net/product

Метод для создания нового продукта. ВАЖНО: Повторный вызов запроса для уже имеющегося в базе local_id обновляет все поля. Поля, которые не передавались в запросе, будут заполнены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

HTTP/1.1 200 OK
{
   "data": {
       "type": "product",
       "id": "73785",
       "attributes": {
           "id": "73785",
           "date_add": "2019-10-11 18:36:24",
           "date_upd": null,
           "site_user_id": "1",
           "local_id": "1337",
           "category_id": "0",
           "name": "AwesomeProduct"
       },
       "links": {
           "self": "https://api.loymaxsc.net/product/73785"
       }
   }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "name": "AwesomeProduct",
            "local_id": "1337product"
        }
    }
}

Изменить продукт

PATCH https://api.loymaxsc.net/product/:id

Метод для изменения продукта по его идентификатору в мастер-системе. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
   "data": {
       "type": "product",
       "id": "73785",
       "attributes": {
           "id": "73785",
           "date_add": "2019-10-11 18:36:24",
           "date_upd": null,
           "site_user_id": "1",
           "local_id": "1337",
           "category_id": "0",
           "name": "AwesomeProduct"
       },
       "links": {
           "self": "https://api.loymaxsc.net/product/73785"
       }
   }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "name": "AwesomeProduct",
            "local_id": "1337product"
        }
    }
}

Категория продуктов

Получить список категорий продуктов

GET https://api.loymaxsc.net/category

Метод для получения списка категорий. Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
   "links": {
       "first": "https://api.loymaxsc.net/category?page%5Blimit%5D=10",
       "next": "https://api.loymaxsc.net/category?page%5Bnumber%5D=2&page%5Blimit%5D=10",
       "last": "https://api.loymaxsc.net/category?page%5Bnumber%5D=436&page%5Blimit%5D=10"
   },
   "data": [
       {
           "type": "category",
           "id": "8",
           "attributes": {
               "id": "8",
               "date_add": null,
               "date_upd": null,
               "site_user_id": "077",
               "local_id": "032",
               "parent_id": "0",
               "left_key": "33",
               "right_key": "23",
               "name": "Краски"
           },
           "links": {
               "self": "https://api.loymaxsc.net/category/8"
           }
       },
       {
           "type": "category",
           "id": "9",
           "attributes": {
               "id": "9",
               "date_add": null,
               "date_upd": null,
               "site_user_id": "071",
               "local_id": "123",
               "parent_id": "0",
               "left_key": "333",
               "right_key": "222",
               "name": "Освещение"
           },
           "links": {
               "self": "https://api.loymaxsc.net/category/9"
           }
       },
       {
           "type": "category",
           "id": "10",
           "attributes": {
               "id": "10",
               "date_add": null,
               "date_upd": null,
               "site_user_id": "13",
               "local_id": "12345",
               "parent_id": "0",
               "left_key": "222",
               "right_key": "244",
               "name": "Электрика"
           },
           "links": {
               "self": "https://api.loymaxsc.net/category/10"
           }
       }
   ],
   "meta": {
       "count": 10,
       "total": 3224
   }
}

Получить продуктовую категорию

GET https://api.loymaxsc.net/category/:id

Метод для получения продуктовой категории по её идентификатору в мастер-системе. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
   "data": {
       "type": "category",
       "id": "123",
       "attributes": {
           "id": "123",
           "date_add": null,
           "date_upd": null,
           "site_user_id": "355",
           "local_id": "Маркетинг077",
           "parent_id": "0",
           "left_key": "165",
           "right_key": "323",
           "name": "Маркетинг"
       },
       "links": {
           "self": "https://api.loymaxsc.net/category/7"
       }
   }
}

Зарегистрировать продуктовую категорию

POST https://api.loymaxsc.net/category

Метод для создания новой продуктовой категории. ВАЖНО: Повторный вызов запроса для уже имеющегося в базе local_id обновляет все поля. Поля, которые не передавались в запросе, будут заполнены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

HTTP/1.1 200 OK
{
   "data": {
       "type": "category",
       "id": "137",
       "attributes": {
           "id": "137",
           "date_add": "2019-10-11 16:25:22",
           "date_upd": null,
           "site_user_id": "1",
           "local_id": "TEST-Local-Id_123",
           "parent_id": "0",
           "left_key": "0",
           "right_key": "0",
           "name": "СуперКатегорияДляКниг"
       },
       "links": {
           "self": "https://api.loymaxsc.net/category/137"
       }
   }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "name": "TestCategory",
            "local_id": "TEST-Local-Id_123"
        }
    }
}

Изменить категорию

PATCH https://api.loymaxsc.net/category/:id

Метод для изменения категории по её идентификатору в мастер-системе. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
   "data": {
       "type": "category",
       "id": "138",
       "attributes": {
           "id": "138",
           "date_add": "2019-10-11 16:25:22",
           "date_upd": "2021-12-11 16:26:55",
           "site_user_id": "1",
           "local_id": "TEST-Local-Id_124",
           "parent_id": "0",
           "left_key": "0",
           "right_key": "0",
           "name": "СуперКатегорияДляКниг2"
       },
       "links": {
           "self": "https://api.loymaxsc.net/category/138"
       }
   }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "name": "TestCategory2",
            "local_id": "TEST-Local-Id_124"
        }
    }
}

Коммуникация

E-mail

Получить список e-mail-рассылок

GET https://api.loymaxsc.net/communication/email/

Метод для получения списка e-mail-рассылок. Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "https://api.loymaxsc.net/communication/email?page%5Blimit%5D=10",
        "next": "https://api.loymaxsc.net/communication/email?page%5Bnumber%5D=2&page%5Blimit%5D=10",
        "last": "https://api.loymaxsc.net/communication/email?page%5Bnumber%5D=3&page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "email",
            "id": "147",
            "attributes": {
                "id": "147",
                "status": "new",
                "subject": "Снижение цен",
                "date_add": "2018-11-20 12:18:02",
                "tran_cnt": "0",
                "tran_sum": null
            },
            "links": {
                "self": "https://api.loymaxsc.net/communication/email/147"
            }
        },
        {
            "type": "email",
            "id": "40",
            "attributes": {
                "id": "40",
                "status": "send",
                "subject": "Поздравление с Новым Годом",
                "date_add": "2018-12-31 11:05:14",
                "tran_cnt": "15",
                "tran_sum": "18198.50"
            },
            "links": {
                "self": "https://api.loymaxsc.net/communication/email/40"
            }
        }
    ],
    "meta": {
        "count": 2,
        "total": 2
    }
}

Получить e-mail-рассылку

GET https://api.loymaxsc.net/communication/email/:id

Метод для получения e-mail-рассылки. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "email",
        "id": "40",
        "attributes": {
            "id": "40",
            "site_user_id": "3",
            "hash": "7a5fae984c7cde2acf54a95baeaea2b8",
            "date_add": "2017-01-10 01:18:44",
            "status": "send",
            "from_name": "Books365",
            "from_email": "hello@bookean.ru",
            "reply_email": "info@bookean.ru",
            "bcc_email": "user@gmail.com",
            "subject": "Поздравление с Новым Годом",
            "message": "Поздравление с Новым Годом. Тут тело письма",
            "utm": "",
            "size_limit": "100",
            "bonus_quantity": "0",
            "bonus_validity": "0",
            "wait": "n",
            "wait_date": "30.11.-0001",
            "attribution_days": "7",
            "attribution_date_start": null,
            "attribution_date_end": null,
            "control_group": "0",
            "wait_time": "00:00",
            "report": {
                "send": 200,
                "delivered": 34,
                "opens": 34,
                "clicks": 3,
                "spam": 0,
                "unsubscribe": 0,
                "orders": 12,
                "tran_cnt": 15,
                "tran_sum": 18198.5
            }
        },
        "links": {
            "self": "https://api.loymaxsc.net/communication/email/40"
        }
    }
}

Получить список участников e-mail-рассылки

GET https://api.loymaxsc.net/communication/email/:id/customers

Метод позволяет получить список участников e-mail-рассылки. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "/communication/email/441/customers?page%5Blimit%5D=10000",
        "last": "/communication/email/441/customers?page%5Blimit%5D=10000"
    },
    "data": [
        {
            "type": "communication",
            "id": "253981",
            "attributes": {
                "id": 253981,
                "delivered": 1,
                "date_delivered": null,
                "opens": 1,
                "clicks": 1,
                "spam": null,
                "in_control_group": "Y",
                "local_id": "20805"
            }
        },
        {
            "type": "communication",
            "id": "253982",
            "attributes": {
                "id": 253982,
                "delivered": 1,
                "date_delivered": null,
                "opens": 1,
                "clicks": 1,
                "spam": null,
                "in_control_group": "Y",
                "local_id": "18924"
            }
        },
        {
            "type": "communication",
            "id": "253983",
            "attributes": {
                "id": 253983,
                "delivered": 1,
                "date_delivered": null,
                "opens": 1,
                "clicks": 1,
                "spam": null,
                "in_control_group": "Y",
                "local_id": "22002"
            }
        },
        ...
    ],
    "meta": {
        "count": 357,
        "total": 357
    }
}

SMS

Получить список SMS-рассылок

GET https://api.loymaxsc.net//communication/sms/

Метод для получения списка SMS-рассылок. Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "https://api.loymaxsc.net/communication/sms?page%5Blimit%5D=10",
        "last": "https://api.loymaxsc.net/communication/sms?page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "sms",
            "id": "37",
            "attributes": {
                "id": "37",
                "status": "new",
                "message": "Снижение цен",
                "date_add": "2017-12-14 15:40:30",
                "tran_cnt": "0",
                "tran_sum": null
            },
            "links": {
                "self": "https://api.loymaxsc.net/communication/sms/37"
            }
        },
        {
            "type": "sms",
            "id": "31",
            "attributes": {
                "id": "31",
                "status": "send",
                "message": "Поздравление с Новым Годом",
                "date_add": "2018-12-31 15:55:53",
                "tran_cnt": "512",
                "tran_sum": "657315"
            },
            "links": {
                "self": "https://api.loymaxsc.net/communication/sms/31"
            }
        }
    ],
    "meta": {
        "count": 2,
        "total": 2
    }
}

Получить SMS-рассылку

GET https://api.loymaxsc.net/communication/sms/:id

Метод для получения SMS-рассылки. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
  "data": {
    "attributes": {
      "attribution_date_end": null,
      "attribution_date_start": null,
      "attribution_days": "7",
      "btn_name": "Узнать больше",
      "btn_url": "https://acmecorp.ru",
      "control_group": "0",
      "date_add": "2017-12-14 15:40:30",
      "from_name": "ACME",
      "hash": "222632d69ce84af89cf84fd8b0240eca",
      "id": "37",
      "image_url": "https://api.loymaxsc.net/var/uploads/images/3/banner.png",
      "immediately": "n",
      "message": "Небывалое снижение цен на ковровые покрытия",
      "report": {
        "delivered": 6500,
        "send": 6489
      },
      "site_user_id": "3",
      "size_limit": "100",
      "sms_message": "",
      "status": "send",
      "wait": "n",
      "wait_date": "30.11.-0001",
      "wait_time": "00:00"
    },
    "id": "37",
    "links": {
      "self": "https://api.loymaxsc.net/communication/sms/37"
    },
    "type": "sms"
  }
}

Получить список участников SMS-рассылки

GET https://api.loymaxsc.net/communication/sms/:id/customers

Метод позволяет получить список участников SMS-рассылки. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "/communication/sms/393/customer?page%5Blimit%5D=10000",
        "last": "/communication/sms/393/customer?page%5Blimit%5D=10000"
    },
    "data": [
        {
            "type": "communication",
            "id": "72569",
            "attributes": {
                "id": 72569,
                "delivered": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "19754"
            }
        },
        {
            "type": "communication",
            "id": "72570",
            "attributes": {
                "id": 72570,
                "delivered": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "20780"
            }
        },
        {
            "type": "communication",
            "id": "72571",
            "attributes": {
                "id": 72571,
                "delivered": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "20805"
            }
        },
        {
            "type": "communication",
            "id": "72572",
            "attributes": {
                "id": 72572,
                "delivered": null,
                "date_delivered": null,
                "in_control_group": "Y",
                "local_id": "21354"
            }
        },
        {
            "type": "communication",
            "id": "72573",
            "attributes": {
                "id": 72573,
                "delivered": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "20633"
            }
        },
...
    ],
    "meta": {
        "count": 190,
        "total": 190
    }
}

Push

Получить список push-рассылок

GET https://api.loymaxsc.net/communication/push/

Метод для получения списка push-рассылок. Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
  "data": [
    {
      "attributes": {
        "date_add": "2018-12-10 15:13:32",
        "id": "4",
        "message": "3 по цене 2 на всю обувь, только в эти выходные!",
        "status": "new",
        "tran_cnt": "0",
        "tran_sum": null
      },
      "id": "4",
      "links": {
        "self": "https://api.loymaxsc.net/communication/push/4"
      },
      "type": "push"
    }
  ],
  "links": {
    "first": "https://api.loymaxsc.net/communication/push?page%5Blimit%5D=10",
    "last": "https://api.loymaxsc.net/communication/push?page%5Blimit%5D=10"
  },
  "meta": {
    "count": 1,
    "total": 1
  }
}

Получить push-рассылку

GET https://api.loymaxsc.net/communication/push/:id

Метод для получения push-рассылки. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
  "data": {
    "attributes": {
      "attribution_date_end": null,
      "attribution_date_start": null,
      "attribution_days": "0",
      "control_group": "0",
      "date_add": "2018-12-10 15:13:32",
      "hash": "0ecbec63abca44a9feba70feea7b900a",
      "id": "4",
      "image": "",
      "immediately": "n",
      "message": "3 по цене 2 на всю обувь, только в эти выходные!",
      "report": null,
      "site_user_id": "3",
      "size_limit": "100",
      "status": "new",
      "title": "",
      "url": "",
      "wait": "y",
      "wait_date": "29.12.2018",
      "wait_time": "15:12"
    },
    "id": "4",
    "links": {
      "self": "https://api.loymaxsc.net/communication/push/4"
    },
    "type": "push"
  }
}

Получить список участников push-рассылки

GET https://api.loymaxsc.net/communication/push/:id/customers

Метод позволяет получить список участников push-рассылки. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "/communication/push/78/customer?page%5Blimit%5D=10000",
        "last": "/communication/push/78/customer?page%5Blimit%5D=10000"
    },
    "data": [
        {
            "type": "communication",
            "id": "18366",
            "attributes": {
                "id": 18366,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "20805"
            }
        },
        {
            "type": "communication",
            "id": "18367",
            "attributes": {
                "id": 18367,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "22051"
            }
        },
        {
            "type": "communication",
            "id": "18368",
            "attributes": {
                "id": 18368,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "18924"
            }
        },
        {
            "type": "communication",
            "id": "18369",
            "attributes": {
                "id": 18369,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "22693"
            }
        },
        {
            "type": "communication",
            "id": "18370",
            "attributes": {
                "id": 18370,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "22002"
            }
        },
        {
            "type": "communication",
            "id": "18371",
            "attributes": {
                "id": 18371,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "22942"
            }
        },
        {
            "type": "communication",
            "id": "18372",
            "attributes": {
                "id": 18372,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "92"
            }
        },
        {
            "type": "communication",
            "id": "18373",
            "attributes": {
                "id": 18373,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "23121"
            }
        },
        {
            "type": "communication",
            "id": "18374",
            "attributes": {
                "id": 18374,
                "delivered": null,
                "opens": null,
                "clicks": null,
                "date_delivered": null,
                "in_control_group": "N",
                "local_id": "23376"
            }
        },
...
    ],
    "meta": {
        "count": 31,
        "total": 31
    }
}

Зарегистрировать статус push-сообщения

POST https://api.loymaxsc.net/communication/push/state

Метод для регистрации статуса push-сообщения. Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

Опросы

Получить список опросов

GET https://api.loymaxsc.net/communication/poll/

Метод для получения списка опросов. Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "https://api.loymaxsc.net/communication/poll?page%5Blimit%5D=10",
        "last": "https://api.loymaxsc.net/communication/poll?page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "poll",
            "id": "1",
            "attributes": {
                "id": "1",
                "site_user_id": "3",
                "hash": "fd7c0c4ac4523f901d3c548b81f05ee8",
                "date_add": "2018-09-02 02:39:33",
                "name": "Новогодний опрос",
                "transport": "sms",
                "count_clients": "48415"
            },
            "links": {
                "self": "https://api.loymaxsc.net/communication/poll/1"
            }
        }
    ],
    "meta": {
        "count": 1,
        "total": 1
    }
}

Получить опрос

GET https://api.loymaxsc.net//communication/poll/:id

Метод для получения опроса. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "poll",
        "id": "2",
        "attributes": {
            "id": "2",
            "site_user_id": "3",
            "hash": "73232cad003d0f6d93376b45d205c097",
            "date_add": "2018-09-02 03:03:06",
            "name": "Новогодний опрос",
            "transport": "file",
            "count": "2",
            "data": {
                "question": [
                    "Как часто вы посещаете наш магазин?",
                    "Закупаете ли вы подарки для перед Новым Годом?"
                ],
                "answers": [
                    "Раз в неделю\r\nРаз в месяц\r\nНесколько раз в год\r\nРеже",
                    "Да\r\nНет"
                ]
            },
            "count_clients": "42415",
            "report": null
        },
        "links": {
            "self": "https://api.loymaxsc.net/communication/poll/2"
        }
    }
}

Черный список

Получить список плохих контактов

GET https://api.loymaxsc.net/black-list/:type

Метод для получения списка плохих контактов. Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

HTTP/1.1 200 OK
{
    "links": {
        "first": "https://api.loymaxsc.net/black-list/email?page%5Blimit%5D=10",
        "next": "https://api.loymaxsc.net/black-list/email?page%5Bnumber%5D=2&page%5Blimit%5D=10",
        "last": "https://api.loymaxsc.net/black-list/email?page%5Bnumber%5D=3202&page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "black-list",
            "id": "1",
            "attributes": {
                "id": "1",
                "value": "12345@example.com"
            }
        }
    ],
    "meta": {
        "count": 1,
        "total": 32014
    }
}

Метка

Создать метку

POST https://api.loymaxsc.net/customer/:id/marker/

Метод для привязки метки к указанному клиенту (если метки с таким именем нет, создаётся). Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

HTTP/1.1 200 OK
{
   "data": {
       "type": "marker-clients",
       "id": "76012345669408",
       "attributes": {
           "id": "76012345669408",
           "name": "NameOfMarkerToBeCreated"
       },
       "links": {
           "self": "https://api.loymaxsc.net/markers/NameOfMarkerToBeCreated"
       }
   }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "name": "NameOfMarkerToBeCreated"
        }
    }
}

Получить список меток клиента

GET https://api.loymaxsc.net/customer/:id/marker/

Метод для получения списка меток, которыми отмечен клиент, по идентификатору этого клиента. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
   "links": {
       "first": "https://api.loymaxsc.net/local-client-markers?page%5Blimit%5D=10",
       "last": "https://api.loymaxsc.net/local-client-markers?page%5Blimit%5D=10"
   },
   "data": [
       {
           "type": "local-client-markers",
           "id": "1333337999",
           "attributes": {
               "id": "1337",
               "site_user_id": "001",
               "name": "xxxabc123",
               "date": "2016-01-21 11:55:11"
           },
           "links": {
               "self": "https://api.loymaxsc.net/local-client-markers/xxxabc123"
           }
       }
   ],
   "meta": {
       "count": 1,
       "total": 1
   }
}

Удалить метку

DELETE https://api.loymaxsc.net/customer/:id/marker/

Метод для снятия метки с указанного клиента. Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

HTTP/1.1 200 OK
{
   "data": {
       "type": "marker-clients",
       "id": "76012345669408",
       "attributes": {
           "id": "76012345669408",
           "name": "NameOfMarkerToBeDeleted"
       },
       "links": {
           "self": "https://api.loymaxsc.net/markers/NameOfMarkerToBeDeleted"
       }
   }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "name": "NameOfMarkerToBeDeleted"
        }
    }
}

Промокоды

Получить список групп промокодов

GET https://api.loymaxsc.net/promocode-group

Метод для получения списка групп промокодов. Разрешено только для авторизованных пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "/promocode-group?page%5Blimit%5D=10",
        "next": "/promocode-group?page%5Bnumber%5D=2&page%5Blimit%5D=10",
        "last": "/promocode-group?page%5Bnumber%5D=2&page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "promocode-group",
            "id": "43",
            "attributes": {
                "id": 43,
                "name": "New Year",
                "total_cnt": 10,
                "active_cnt": 0,
                "locked_cnt": 0
            },
            "links": {
                "self": "/promocode-group/43"
            }
        },
        {
            "type": "promocode-group",
            "id": "42",
            "attributes": {
                "id": 42,
                "name": "Christmas",
                "total_cnt": 5,
                "active_cnt": 4,
                "locked_cnt": 0
            },
            "links": {
                "self": "/promocode-group/42"
            }
        },

    ],
    "meta": {
        "count": 2,
        "total": 2
    }
}

Получить информацию по группе промокодов с идентификатором

GET https://api.loymaxsc.net/promocode-group/:id

Метод для получения информации по группе промокодов с идентификатором <id>. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "promocode-group",
        "id": "20",
        "attributes": {
            "id": 20,
            "local_id": null,
            "site_user_id": 28,
            "name": "New Year",
            "date_add": null,
            "date_upd": null,
            "total_cnt": 3,
            "active_cnt": 0,
            "locked_cnt": 3
        },
        "links": {
            "self": "/promocode-group/20"
        }
    }
}

Создать новую группу промокодов

POST https://api.loymaxsc.net/promocode-group

Метод для создания новой группы промокодов, либо обновления существующей группы промокодов по её local_id. ВАЖНО: Повторный вызов запроса для уже имеющегося в базе local_id обновляет все поля. Поля, которые не передавались в запросе, будут заполнены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
        "type": "promocode-group",
        "id": "44",
        "attributes": {
            "id": 44,
            "local_id": null,
            "site_user_id": 28,
            "name": "Новая группа 100-рублевых кодов",
            "date_add": null,
            "date_upd": null,
            "total_cnt": 0,
            "active_cnt": 0,
            "locked_cnt": 0
        },
        "links": {
            "self": "/promocode-group/44"
        }
    }
}

Пример запроса:

{
  "data": {
    "attributes": {
      "local_id": "xjasjkhhjdjhgf",
      "name": "Новая группа 100-рублевых кодов"
    }
  }
}

Изменить группу промокодов с идентификатором

PATCH https://api.loymaxsc.net/promocode-group/:id

Метод для изменения группы промокодов по её id в Платформе. Если требуется изменить группу по её local_id, следует использовать метод POST. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
        "type": "promocode-group",
        "id": "44",
        "attributes": {
            "id": 44,
            "local_id": null,
            "site_user_id": 28,
            "name": "Переименованная группа",
            "date_add": null,
            "date_upd": null,
            "total_cnt": 3,
            "active_cnt": 3,
            "locked_cnt": 0
        },
        "links": {
            "self": "/promocode-group/44"
        }
    }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "local_id": "xjasjkhhjdjhgf",
            "name": "Переименованная группа"
        }
    }
}

Удалить группу промокодов с идентификатором

DELETE https://api.loymaxsc.net/promocode-group/:id

Метод для удаления группы промокодов. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "status": "success"
    }
}

Залить промокоды в группу с идентификатором

POST https://api.loymaxsc.net/promocode-group/:id/codes

Метод для заливки промокодов в группу по local_id. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "promocode-group",
        "id": "44",
        "attributes": {
            "id": 44,
            "local_id": null,
            "site_user_id": 28,
            "name": "Новая группа 100-рублевых кодов",
            "date_add": null,
            "date_upd": null,
            "total_cnt": 3,
            "active_cnt": 3,
            "locked_cnt": 0
        },
        "links": {
            "self": "/promocode-group/44"
        }
    }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "codes": [
            "code1",
            "code2",
            "codeXX"
            ]
        }
    }
}

Справочник

Получить список справочников

GET https://api.loymaxsc.net/dictionary

Метод для получения списка справочников с их идентификаторами. Разрешено только для пользователей с ролью API.

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "/dictionary?page%5Blimit%5D=10",
        "last": "/dictionary?page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "dictionary",
            "id": "13",
            "attributes": {
                "id": 13,
                "site_user_id": 3,
                "code": "delivery-statuses",
                "name": "Статусы доставки",
                "date_add": null,
                "date_upd": null
            },
            "links": {
                "self": "/dictionary/13"
            }
        },
        {
            "type": "dictionary",
            "id": "33",
            "attributes": {
                "id": 33,
                "site_user_id": 3,
                "code": "new",
                "name": "new",
                "date_add": null,
                "date_upd": null
            },
            "links": {
                "self": "/dictionary/33"
            }
        }
    ],
    "meta": {
        "count": 2,
        "total": 2
    }
}

Пример запроса:

{
    "links": {
        "first": "https://api.loymaxsc.net/dictionary?page%5Blimit%5D=10",
        "last": "https://api.loymaxsc.net/dictionary?page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "dictionary",
            "id": "13",
            "attributes": {
                "id": "13",
                "site_user_id": "3",
                "code": "delivery-statuses",
                "name": "\u0421\u0442\u0430\u0442\u0443\u0441\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary/13"
            }
        },
        {
            "type": "dictionary",
            "id": "19",
            "attributes": {
                "id": "19",
                "site_user_id": "3",
                "code": "123",
                "name": "ff"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary/19"
            }
        },
        {
            "type": "dictionary",
            "id": "20",
            "attributes": {
                "id": "20",
                "site_user_id": "3",
                "code": "qwqwqwq",
                "name": "qwqw"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary/20"
            }
        },
        {
            "type": "dictionary",
            "id": "22",
            "attributes": {
                "id": "22",
                "site_user_id": "3",
                "code": "werw3242333432",
                "name": "\u0421\u0435\u0440\u0433\u0435\u0438"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary/22"
            }
        },
        {
            "type": "dictionary",
            "id": "23",
            "attributes": {
                "id": "23",
                "site_user_id": "3",
                "code": "123333",
                "name": "123"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary/23"
            }
        },
        {
            "type": "dictionary",
            "id": "26",
            "attributes": {
                "id": "26",
                "site_user_id": "3",
                "code": "new_dict1",
                "name": "\u041d\u043e\u0432\u044b\u0439"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary/26"
            }
        }
    ],
    "meta": {
        "count": 6,
        "total": 6
    }
}

Получить справочник

GET https://api.loymaxsc.net/dictionary/:id

Метод для получения справочника. Разрешено только для пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "dictionary",
        "id": "33",
        "attributes": {
            "id": 33,
            "site_user_id": 3,
            "code": "new",
            "name": "new",
            "date_add": null,
            "date_upd": null
        },
        "links": {
            "self": "/dictionary/33"
        }
    }
}

Пример запроса:

{
    "data": {
        "type": "dictionary",
        "id": "13",
        "attributes": {
            "id": "13",
            "site_user_id": "3",
            "code": "delivery-statuses",
            "name": "\u0421\u0442\u0430\u0442\u0443\u0441\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438"
            },
        "links": {
        "self": "https://api.loymaxsc.net/dictionary/13"
        }
    }
}

Зарегистрировать справочник

POST https://api.loymaxsc.net/dictionary

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

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
        "type": "dictionary",
        "id": "37",
        "attributes": {
            "id": 37,
            "site_user_id": 3,
            "code": "CestCode",
            "name": "CestDictionary",
            "date_add": null,
            "date_upd": null
        },
        "links": {
            "self": "/dictionary/37"
        }
    }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "code": "new_dict1",
            "name": "Новый"
        }
    }
}

Изменить справочник

PATCH https://api.loymaxsc.net/dictionary/:id

Метод для изменения справочника по его id в Платформе. Если требуется изменить справочник по его local_id, следует использовать метод POST. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
        "type": "dictionary",
        "id": "37",
        "attributes": {
            "id": 37,
            "site_user_id": 3,
            "code": "12313123123",
            "name": "CestDictionary",
            "date_add": null,
            "date_upd": null
        },
        "links": {
            "self": "/dictionary/37"
        }
    }
}

Пример запроса:

{
  "data": {
    "attributes": {
      "code": "new_dict1",
      "name": "Новый"
    }
  }
}

Удалить справочник

DELETE https://api.loymaxsc.net/dictionary/:id

Метод для удаления справочника. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "status": "success"
    }
}

Получить список элементов справочника <pid>

GET https://api.loymaxsc.net/dictionary/:id/item

Метод для получения списка элементов справочника. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "links": {
        "first": "/dictionary-items/33?page%5Blimit%5D=10",
        "last": "/dictionary-items/33?page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "dictionary-items/33",
            "id": "54",
            "attributes": {
                "id": 54,
                "site_user_id": 3,
                "parent_id": 33,
                "local_id": "123",
                "value": "qwer а",
                "date_add": null,
                "date_upd": null
            },
            "links": {
                "self": "/dictionary-items/33/54"
            }
        },
        {
            "type": "dictionary-items/33",
            "id": "55",
            "attributes": {
                "id": 55,
                "site_user_id": 3,
                "parent_id": 33,
                "local_id": "345",
                "value": "qwer е",
                "date_add": null,
                "date_upd": null
            },
            "links": {
                "self": "/dictionary-items/33/55"
            }
        }, 
        {
            "type": "dictionary-items/33",
            "id": "61",
            "attributes": {
                "id": 61,
                "site_user_id": 3,
                "parent_id": 33,
                "local_id": "code_new",
                "value": "new_code",
                "date_add": null,
                "date_upd": null
            },
            "links": {
                "self": "/dictionary-items/33/61"
            }
        }
    ],
    "meta": {
        "count": 3,
        "total": 3
    }
}
{
    "links": {
        "first": "https://api.loymaxsc.net/dictionary-items/13?page%5Blimit%5D=10",
        "last": "https://api.loymaxsc.net/dictionary-items/13?page%5Blimit%5D=10"
    },
    "data": [
        {
            "type": "dictionary-items/13",
            "id": "10",
            "attributes": {
                "id": "10",
                "site_user_id": "3",
                "parent_id": "13",
                "local_id": "\u0414\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e",
                "value": "!\u0414\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e!"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary-items/13/10"
            }
        },
        {
            "type": "dictionary-items/13",
            "id": "11",
            "attributes": {
                "id": "11",
                "site_user_id": "3",
                "parent_id": "13",
                "local_id": "\u041d\u0435 \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e",
                "value": "!\u041d\u0435 \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e!"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary-items/13/11"
            }
        },
        {
            "type": "dictionary-items/13",
            "id": "23",
            "attributes": {
                "id": "23",
                "site_user_id": "3",
                "parent_id": "13",
                "local_id": "\u0432\u044b\u0430\u0432\u044b\u0430",
                "value": "\u044b\u0432\u0430\u0432\u044b\u0432\u044b"
            },
            "links": {
                "self": "https://api.loymaxsc.net/dictionary-items/13/23"
            }
        }
    ],
    "meta": {
        "count": 3,
        "total": 3
    }
}

Получить элемент справочника <pid>

GET https://api.loymaxsc.net/dictionary/:pid/item/:id

Метод для получения элемента справочника. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "type": "dictionary-items/33",
        "id": "61",
        "attributes": {
            "id": 61,
            "site_user_id": 3,
            "parent_id": 33,
            "local_id": "code_new",
            "value": "new_code",
            "date_add": null,
            "date_upd": null
        },
        "links": {
            "self": "/dictionary-items/33/61"
        }
    }
}

Зарегистрировать новый элемент справочника

POST https://api.loymaxsc.net/dictionary/:pid/item

Метод для создания нового элемента в справочнике. Поля, которые не передавались в запросе, будут заполнены пустыми значениями, либо значениями по умолчанию. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
        "type": "dictionary-items/33",
        "id": "62",
        "attributes": {
            "id": 62,
            "site_user_id": 3,
            "parent_id": 33,
            "local_id": "CestNew",
            "value": "NewDictionaryItem",
            "date_add": null,
            "date_upd": null
        },
        "links": {
            "self": "/dictionary-items/33/62"
        }
    }
}

Пример запроса:

{
    "data": {
        "attributes": {
            "local_id": "4342348234",
            "value": "Новый элемент"
        }
    }
}

Изменить элемент справочника

PATCH https://api.loymaxsc.net/dictionary/:pid/item/:id

Метод для изменения элемента справочника по его id в Платформе. ВАЖНО: Запрос обновляет все поля. Поля, которые не передавались в запросе, будут обновлены пустыми значениями, либо значениями по умолчанию. Помимо явно перечисленных ниже параметров запрос также может содержать любые параметры, имеющиеся в решении и/или индивидуальной конфигурации пользователя Платформы. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

Request Body

HTTP/1.1 200 OK
{
    "data": {
        "type": "dictionary-items/33",
        "id": "61",
        "attributes": {
            "id": 61,
            "site_user_id": 3,
            "parent_id": 33,
            "local_id": "new",
            "value": "CestDictionaryItem",
            "date_add": null,
            "date_upd": null
        },
        "links": {
            "self": "/dictionary-items/33/61"
        }
    }
}

Пример запроса:

{
    "data": {
        "attributes":{
            "local_id": "локалАйди",
            "value": "value"
        }
    }
}

Удалить элемент справочника

DELETE https://api.loymaxsc.net/dictionary/:pid/item/:id

Метод для удаления элемента справочника. Разрешено только для авторизованных пользователей с ролью API.

Path Parameters

Headers

HTTP/1.1 200 OK
{
    "data": {
        "status": "success"
    }
}

Last updated