База контактов
Создание списка контактов¶
Для создания списка контактов необходимо вызвать POST /address-book-api/contact-groups, передавая в теле параметры с указанием данных авторизации в заголовке.
curl -X POST https://api.devino.online/address-book-api/contact-groups \
-h 'Authorization: Key QWxhZGRpbjpvcGVuIHNlc2FtZQ==' \
-h 'Content-Type: application/json' \
-h 'Accept: application/json' \
-d '{
"fields": [
{
"displayName": "NickName",
"name": "Nickname",
"type": 3
},
{
"displayName": "Automobile",
"name": "Auto",
"type": 3
}
],
"name": "TestList",
"type": "STANDARD"
}'
Параметр | Тип данных | Описание и Допустимые значения | |
---|---|---|---|
fields | array[object] | Массив полей списка контактов | |
displayName | string | Имя поля, которое будет отображаться в ЛК | |
name | string | Имя поля | |
type | integer | Тип поля. Возможные значения: 0 - дата/время, 1 - true/false, 2 - число, 3 - текст, 5 - объект, 8 - дата |
|
values | array[string] | Массив возможных значений поля, если они предусмотрены (например: ["gender.male", "gender.female"]) | |
name | string | Название списка контактов | |
type | string | Тип списка контактов. Возможные значения:STANDARD - обычный список,STOPLIST - список, по контактам которого не нужно рассылаться |
{
"result": "3576515602081985000"
}
Параметр | Тип данных | Описание и Допустимые значения |
---|---|---|
result | string | Идентификатор списка контактов |
Загрузка контактов в список¶
Для загрузки котактов в список необходимо вызвать POST /address-book-api/contacts/batch, передавая в теле параметры с указанием данных авторизации в заголовке.
curl -X POST https://api.devino.online/address-book-api/contacts/batch \
-h 'Authorization: Key QWxhZGRpbjpvcGVuIHNlc2FtZQ==' \
-h 'Content-Type: application/json' \
-h 'Accept: application/json' \
-d '{
"contactGroupId": 3576505602081984000,
"contacts": [
{
"email": "valya@yandex.ru",
"fields": [
{
"displayName": "NickName",
"name": "Nickname",
"type": 3
},
{
"displayName": "Automobile",
"name": "Auto",
"type": 3
}
],
"phone": "79100000000"
}
],
"duplicateCheckField": "phone"
}'
Параметр | Тип данных | Описание и Допустимые значения | ||
---|---|---|---|---|
zoneOffset | integer | Смещение времени для контакта от UTC+0 (в минутах) | ||
contactGroupId | integer | Идентификатор списка контактов | ||
contacts | array[object] | Массив контактов | ||
string | Email контакта | |||
fields | array[object] | Массив полей контакта | ||
displayName | string | Имя поля, которое будет отображаться в ЛК | ||
name | string | Имя поля | ||
type | integer | Тип поля. Возможные значения: 0 - дата/время, 1 - true/false, 2 - число, 3 - текст, 5 - объект, 8 - дата |
||
value | array[string] | Значение поля | ||
phone | string | Телефон контакта | ||
duplicateCheckField | integer | Проверка на дублирование данных контакта. Возможные значения:null - не проверять,phone - телефон,email - email |
{
"result": [
{
"code": "OK",
"result": {
"contactId": "31a24ce55d4a8e00-31a251fea18b9280"
}
}
]
}
Параметр | Тип данных | Описание и Допустимые значения | ||
---|---|---|---|---|
result | array[object] | Массив данных ответа | ||
code | string | Код ответа | ||
result | object | Массив созданных контактов | ||
contactId | string | Идентификатор созданного контакта |
Получение всех списков контактов¶
Для получения всех списков контактов необходимо вызвать GET /address-book-api/contact-groups, передавая в теле параметры с указанием данных авторизации в заголовке.
curl https://api.devino.online/address-book-api/contact-groups?limit=10&offset=0 \
-h 'Authorization: Key QWxhZGRpbjpvcGVuIHNlc2FtZQ=='
Параметр | Тип данных | Описание и Допустимые значения |
---|---|---|
limit | integer | Количество выводимых строк в ответе |
offset | integer | С какой строки выводить ответ (смещение) |
name (optional) |
string | Название списка контактов (поиск по вхождению) |
from (optional) |
string | Дата начала поиска даты создания списка контактов |
to (optional) |
string | Дата окончания поиска даты создания списка контактов |
type (optional) |
array[string] | Массив типов списка контактов. Возможные значения:STANDARD - обычный список,STOPLIST - список, по контактам которого не нужно рассылаться |
zoneOffset (optional) |
integer | Смещение времени для контакта от UTC+0 (в минутах), по умолчанию равно нулю |
{
"result": [
{
"contactGroupId": "3576515602081985000",
"companyId": 112233,
"name": "TestList",
"creationDate": "2020-10-20T08:16:31",
"lastUpdate": "2020-10-20T09:01:05",
"fields": [
{
"name": "name",
"displayName": "Имя",
"type": 3,
"isDefault": true
},
{
"name": "surname",
"displayName": "Фамилия",
"type": 3,
"isDefault": true
},
{
"name": "phone",
"displayName": "Телефон",
"type": 3,
"isDefault": true
},
{
"name": "email",
"displayName": "E-Mail",
"type": 3,
"isDefault": true
},
{
"name": "gender",
"displayName": "Пол",
"type": 3,
"isDefault": true,
"values": [
"gender.male",
"gender.female"
]
},
{
"name": "country",
"displayName": "Страна",
"type": 3,
"isDefault": true
},
{
"name": "city",
"displayName": "Город",
"type": 3,
"isDefault": true
},
{
"name": "birthdate",
"displayName": "Дата рождения",
"type": 8,
"isDefault": true
},
{
"name": "creationDate",
"displayName": "Дата создания",
"type": 0,
"isDefault": true
},
{
"name": "lastUpdate",
"displayName": "Дата последнего изменения",
"type": 0,
"isDefault": true
},
{
"name": "timezone",
"displayName": "Таймзона",
"type": 2,
"isDefault": true
},
{
"name": "Nickname",
"displayName": "NickName",
"type": 3,
"isDefault": false
},
{
"name": "Auto",
"displayName": "Automobile",
"type": 3,
"isDefault": false
}
],
"contactsCount": "1",
"segmentsCount": "0",
"type": "STANDARD"
}
]
}
Параметр | Тип данных | Описание и Допустимые значения | ||
---|---|---|---|---|
result | array[string] | Массив списков контактов | ||
companyId | integer | Идентификатор компании | ||
contactGroupId | string | Идентификатор списка контактов | ||
contactsCount | integer | Количество контактов в списке | ||
creationDate | string | Дата создания списка контактов | ||
fields | array[object] | Массив полей контактов в списке | ||
displayName | string | Имя поля, которое будет отображаться в ЛК | ||
name | string | Имя поля | ||
type | integer | Тип поля. Возможные значения: 0 - дата/время, 1 - true/false, 2 - число, 3 - текст, 5 - объект, 8 - дата |
||
values | array[string] | Массив возможных значений поля, если они предусмотрены (например: ["gender.male", "gender.female"]) | ||
isDefault | boolean | Является ли поле отображаемым по умолчанию | ||
lastUpdate | string | Дата последнего изменения списка контактов | ||
name | string | Название списка контактов | ||
segmentsCount | integer | Количество сегментов в списке | ||
type | string | Тип списка контактов. Возможные значения:STANDARD - обычный список,STOPLIST - список, по контактам которого не нужно рассылаться |
Получение всех контактов из конкретного списка¶
Для получения всех контактов из конкретного списка необходимо вызвать GET /address-book-api/contacts/http/range, передавая в теле параметры с указанием данных авторизации в заголовке.
curl https://api.devino.online/address-book-api/contacts/http/range?limit=10&offset=0&contactGroupId=3576515602081985000 \
-h 'Authorization: Key QWxhZGRpbjpvcGVuIHNlc2FtZQ=='
-h 'Content-Type: application/json'
-h 'Accept: application/json'
Параметр | Тип данных | Описание и Допустимые значения |
---|---|---|
contactGroupId | string | Идентификатор списка контактов |
descOrder | boolean | Порядок сортировки. Возможные значения:asc - false,desc - true |
limit | integer | Количество выводимых строк в ответе |
offset | integer | С какой строки выводить ответ (смещение) |
queryName | string | Поле для фильтра |
queryOperator | string | Оператор для фильтра. Возможные значения:ex - EXISTSeq - EQUALSneq - NOT_EQUALSgt - GREATER_THENlt - LESS_THANngt - NOT_GREATER_THANnlt - NOT_LESS_THANinc - CONTAINSninc - NOT_CONTAINSsw - STARTS_WITHew - ENDS_WITHnsw - NOT_STARTS_WITHnew - NOT_ENDS_WITHrange - RANGEnrange - NOT_IN_RANGEma - MATCHESnma - NOT_MATCHES |
queryValue | string | Значение для фильтра |
segmentId | string | Идентификатор сегмента |
sortByField | string | Поле, по которому будет проходить сортировка |
zoneOffset | integer | Смещение времени для контакта от UTC+0 (в минутах) |
{
"result": [
{
"contactId": "31a24ce55d4a8e00-31a251fea18b9280",
"companyId": 112233,
"contactGroupId": "3576515602081985000",
"creationDate": "2020-10-20 09:01:05",
"lastUpdate": "2020-10-20 09:01:05",
"phone": "79100000000",
"email": "valya@yandex.ru",
"unsubscribedData": [
{
"companyId": 112233,
"data": "valya@yandex.ru",
"dataType": "EMAIL",
"channelList": [
{
"channel": "EMAIL",
"unsubscribedAt": "2020-10-21 08:13:55"
}
],
"updatedAt": "2020-10-21 08:13:55"
}
],
"fields": [
{
"name": "name",
"displayName": "Имя",
"type": 3,
"isDefault": true
},
{
"name": "surname",
"displayName": "Фамилия",
"type": 3,
"isDefault": true
},
{
"name": "gender",
"displayName": "Пол",
"type": 3,
"isDefault": true,
"values": [
"gender.male",
"gender.female"
]
},
{
"name": "country",
"displayName": "Страна",
"type": 3,
"isDefault": true
},
{
"name": "city",
"displayName": "Город",
"type": 3,
"isDefault": true
},
{
"name": "birthdate",
"displayName": "Дата рождения",
"type": 8,
"isDefault": true
},
{
"name": "timezone",
"displayName": "Таймзона",
"type": 2,
"value": "180",
"isDefault": true
},
{
"name": "Nickname",
"displayName": "NickName",
"type": 3,
"value": "null",
"isDefault": false
},
{
"name": "Auto",
"displayName": "Automobile",
"type": 3,
"value": "null",
"isDefault": false
}
]
}
]
}
Параметр | Тип данных | Описание и Допустимые значения | ||
---|---|---|---|---|
result | array[string] | Массив контактов | ||
companyId | integer | Идентификатор компании | ||
contactGroupId | integer | Идентификатор списка контактов | ||
contactId | string | Идентификатор контакта | ||
creationDate | string | Дата создания контакта | ||
string | Email контакта | |||
fields | array[object] | Массив полей контактов в списке | ||
displayName | string | Имя поля, которое будет отображаться в ЛК | ||
name | string | Имя поля | ||
type | integer | Тип поля. Возможные значения: 0 - дата/время, 1 - true/false, 2 - число, 3 - текст, 5 - объект, 8 - дата |
||
value | object | Значение поля | ||
values | array[string] | Массив возможных значений поля, если они предусмотрены (например: ["gender.male", "gender.female"]) | ||
isDefault | boolean | Является ли поле отображаемым по умолчанию | ||
lastUpdate | string | Дата последнего изменения контакта | ||
phone | string | Телефон контакта | ||
unsubscribedData | array[object] | Данные об отписке контакта | ||
channelList | array[object] | Данные каналов отписки. Массив вида:channel - канал отпискиunsubscribedAt - дата отпискиunsubscribedType - тип отписки |
||
companyId | integer | Идентификатор компании | ||
data | string | Данные отписки (телефон или email) | ||
dataType | string | Канал отписки | ||
updatedAt | string | Дата последнего изменения отписки |