POST
application/json
JSON
Сервер-сервер API проверяет авторизацию и IP адрес клиента.
Логин и секрет передаются с помощью Basic HTTP Authorization, в заголовке Authorization
Authorization: Basic base64('login:secret')
Логин и секрет и список разрешенных IP адресов могут быть изменены в настройках проекта.
Пользователи могут быть идентифицированы с помощью одного из четырех полей:
Создает нового или обновляет существующего пользователя на основании переданных полей.
Все поля должны быть предварительно объявлены через Web интерфейс в настройках проекта. Все необъявленные поля будут проигнорированы.
Обновление полей профиля может привести к запуску тригерных рассылок.
Обновление происходит синхронно
Параметр | Тип | Описание |
---|---|---|
uid |
string | ID пользователя в проекте. Опционально |
phone |
phone | Телефон пользователя. Опционально |
email |
Email пользователя. Опционально | |
wp_token |
wp_token | Web push token пользователя. Опционально |
fields |
JSON | Произвольные поля профиля специфичные для проекта |
В настройках проекта было объявлено поле "pole1" тип "Строка"
Body:
{
"email": "user@mail.ru",
"fields": {
"pole1": "text",
"pole2": 123
}
}
Response code: 201
Body:
{
"email": "user@mail.ru",
"fields": {
"pole1": "text",
}
}
Создает новых или обновляет существующих пользователей на основании переданных полей.
Все поля должны быть предварительно объявлены через Web интерфейс в настройках проекта. Все необъявленные поля будут проигнорированы.
Обновление происходит асинхронно.
Есть защита от "race condition", в виде специального системного поля "update_profile_last_updated_at", в котором хранится время последнего обновления профиля
Параметр | Тип | Описание |
---|---|---|
uid |
string | ID пользователя в проекте. Опционально |
phone |
phone | Телефон пользователя. Опционально |
email |
Email пользователя. Опционально | |
wp_token |
wp_token | Web push token пользователя. Опционально |
fields |
JSON | Произвольные поля профиля специфичные для проекта |
Необходимо передавать в теле массив. Один профиль - Один хешмап. Предварительно вам нужно смерджить все обновления одного профия в один хешмап. Не нужно передавать неколько хешмап с одинаковым uid или phone, или email, или wp_token.
В настройках проекта было объявлено поле "pole2" тип "Число"
Body:
[
{
"email":"user1@mail.ru",
"fields":{
"pole1":"text1",
"pole2":123
}
},
{
"email":"user2@mail.ru",
"fields":{
"pole1":"text2",
"pole2":777
}
}
]
Response code: 202
Body:
[
{
"email":"user1@mail.ru",
"fields":{
"pole2":123
}
},
{
"email":"user2@mail.ru",
"fields":{
"pole2":777
}
}
]