/v2/Api/Subscribers GET
Возвращает информацию о подписчике. Существует 4 варианта получения информации.
| Короткая информация | Короткая информация, содержащая стоп-листы | Полная информация | История событий |
|
|
|
|
Формат запроса
| Параметр | Тип | Описание |
|---|---|---|
| apiKey | string | Ваш API-ключ, необходимый для авторизации. Обязательный. |
| string* | Емейл подписчика. | |
| customSubscriberId | string* | Идентификатор подписчика. |
| phone | string* | Номер телефона. |
| option | string** | Short - короткая информация. Long - короткая информация, содержащая стоп-листы. Full - полная информация со значениями дополнительных полей. EventsHistory - Информация о действиях подписчика (История событий). |
*Необходимо указать хотя бы одно из следующего: Email, Phone или CustomSubscriberId. Сначала система будет искать Emal, затем Phone и CustomSubscriberId. Если указано более одного, система будет использовать первый элемент с любым значением и игнорировать остальные.
**В целях совместимости можно использовать integer значения (1,2,3,4) вместо string. Но использование такого способа является устаревшим, и будет отключено в скором времени.
Ответ
Short - Короткая информация
Элементы тега Data в ответе:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| Blacklist | boolean | Если значение «true», то емейл находится в черном списке (локальном или глобальном). Если «false», то этот емейл не находится в черных списках. |
| StateOnLists | array[complex] | Массив элементов StateOnList. |
Элементы тега StateOnList:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| ListId | int | ID листа. |
| Name | string | Имя листа. |
| Status | string | Статус емейла в этом листе. Возможные значения: «Unsubscribed», «Active», «Snoozed», «NotConfirmed». |
| SubscribedOn | datetime | Дата подписки. |
Long - Короткая информация, содержащая информацию о стоп-листах.
Элементы тега Data в ответе:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| Blacklist | boolean | Если значение «true», то емейл находится в черном списке (локальном или глобальном). Если «false», то этот емейл не находится в черных списках. |
| StateOnLists | array[complex] | Массив элементов StateOnList. |
| SuppressionLists | array[complex] | Массив элементов SuppressionLists. |
Элементы тега StateOnList:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| ListId | int | ID листа. |
| Name | string | Имя листа. |
| Status | string | Статус емейла в этом листе. Возможные значения: «Unsubscribed», «Active», «Snoozed», «NotConfirmed». |
| SubscribedOn | datetime | Дата подписки |
Элементы тега SuppressionList:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| Id | integer | ID стоп-листа. |
| Name | string | Имя стоп-листа. |
Full - Полная информация
Элементы тега Data в ответе:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| BlackList | boolean | Если значение «true», то емейл находится в черном списке (локальном или глобальном). Если «false», то этот емейл не находится в черных списках. |
| StateOnLists | array[complex] | Массив элементов StateOnList. |
| SuppressionLists | array[complex] | Массив элементов SuppressionLists. |
| Firstname | string | Имя подписчика. |
| Lastname | string | Фамилия подписчика. |
| Ip | string | IP-адрес подписчика. Необязательное. |
| Id | Integer | ID подписчика. Обязательное. |
| Vendor | string | Источник трафика. Необязательное. |
| Properties | array[complex] | Массив дополнительных полей подписчика. Необязательное. |
Элементы тега StateOnList:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| ListId | int | ID листа. |
| Name | string | Имя листа. |
| Status | string | Статус емейла в этом листе. Возможные значения: «Unsubscribed», «Active», «Snoozed», «NotConfirmed». |
| SubscribedOn | datetime | Дата подписки. |
Элементы тега SuppressionLists:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| Id | integer | ID стоп-листа. |
| Name | string | Имя стоп-листа. |
Элементы тега Properties:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| Id | integer | ID текущего дополнительного поля подписчика. |
| Source | string | Информация об источнике дополнительного поля подписчика. Ниже смотрите все возможные источники. |
| DateTimeValue | datetime | Значение. Только для дополнительных полей с типом date и datetime. |
| IntValue | integer | Значение. Только для дополнительных полей с числовым типом. |
| StringValue | string | Значение. Только для дополнительных полей со строковым типом. |
| DecimalValue | decimal | Значение. Только для дополнительных полей с типом валюта. |
| Type | string | Тип дополнительного поля подписчика. Смотрите ниже все возможные типы. |
| FriendlyName | string | Имя дополнительного поля подписчика. |
| Name | string | Служебное имя дополнительного поля подписчика. |
| DefaultStringValue | string | Значение дополнительного поля подписчика по умолчанию. Только для текстовых типов. |
| DefaultIntValue | integer | Значение дополнительного поля подписчика по умолчанию. Только для текстовых типов. |
| DefaultDateTimeValue | datetime | Значение дополнительного поля подписчика по умолчанию. Только для дополнительных полей с типом Дата и Дата и время. |
| DefaultDecimalValue | decimal | Значение дополнительного поля подписчика по умолчанию. Только для дополнительных полей с типом валюта. |
Источники дополнительных полей:
| Name | Описание |
|---|---|
| Web | Значение дополнительного поля подписчика было добавлено/изменено через веб-форму подписки. |
| Panel | Значение дополнительного поля подписчика было добавлено/изменено вручную через ExpertSender. |
| Import | Значение дополнительного поля подписчика было добавлено/изменено через импорт. |
| Api | Значение дополнительного поля подписчика было добавлено/изменено через REST APIExpertSender. |
| PrefCenter | Значение дополнительного поля подписчика было добавлено/изменено через страницу «Менеджер подписки». |
Типы дополнительных полей:
| Name | Описание |
|---|---|
| Text | Текстовое дополнительное поле подписчика. |
| Number | Целое число, например, 0 или 123. |
| Money | Число с десятичным разделителем, например, 10,99. |
| Url | Url. |
| Date | Дата, например, 2011-01-01. |
| Datetime | Дата и время, например, 2011-01-01 12:00:00. |
| SingleSelect | Список с возможностью выбрать из него только одно значение. |
| Boolean | true/false. |
При создании дополнительного поля подписчика в платформе ExpertSender необходимо сразу удостовериться, что тип дополнительного поля подписчика задан верно. Впоследствии тип дополнительного поля подписчика менять нельзя.
EventsHistory - История событий подписчика.
Элементы тега Data:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| Events | array[complex] | Массив элементов Event |
Элементы тега Event:
| Элемент/атрибут | Тип | Описание |
|---|---|---|
| StartDate | datetime | Дата начала события. |
| EndDate | datetime | Дата окончания события. |
| MessageType | string | Тип сообщения |
| EventType | string | Тип события. Возможны следующие значения:
|
| EventCount | integer | Номер события со StartDate до EndDate |
| MessageId | integer | ID сообщения в статистике. |
| MessageSubject | string | Тема сообщения в событии. |
Примеры
Получить информацию о подписчике:
Запрос:
GET https://api.esv2.com/v2/Api/Subscribers?apiKey=Ваш_API_ключ&email=john%40yahoo.com&option=2 HTTP/1.1 Accept-Encoding: gzip,deflate User-Agent: Jakarta Commons-HttpClient/3.1 Host: api.esv2.com
Ответ:
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/xml; charset=utf-8
Content-Encoding: gzip
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
Set-Cookie: ASP.NET_SessionId=soo4fqb5y5cjbr3wimnyelb3; path=/; HttpOnly
X-AspNetMvc-Version: 1.0
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Thu, 22 Jul 2010 11:35:21 GMT
Content-Length: 293
<ApiResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Data>
<BlackList>false</BlackList>
<StateOnLists>
<StateOnList>
<Name>Тестовый лист</Name>
<Status>Unsubscribed</Status>
<SubscribedOn>2014-11-12T12:30:41</SubscribedOn>
</StateOnList>
<StateOnList>
<Name>Тестовый лист 1 (3)</Name>
<Status>Active</Status>
<SubscribedOn>2014-11-12T12:30:41</SubscribedOn>
</StateOnList>
<StateOnList>
<Name>Тестовый лист 2</Name>
<Status>Unsubscribed</Status>
<SubscribedOn>2014-11-12T12:30:41</SubscribedOn>
</StateOnList>
</StateOnLists>
<EmailInSuppressionLists>
<SuppressionList>
<Id>1</Id>
<Name>Тестовый стоп-лист 1</Name>
</SuppressionList>
<SuppressionList>
<Id>2</Id>
<Name>Тестовый стоп-лист 2</Name>
</SuppressionList>
</EmailInSuppressionLists>
</Data>
</ApiResponse>
Формат ответа с ошибкой:
HTTP/1.1 400 Bad Request
Cache-Control: private
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNetMvc-Version: 1.0
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Wed, 28 Oct 2009 11:32:07 GMT
Content-Length: 239
<ApiResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ErrorMessage>
<Code>400</Code>
<Message>Receivers data was not supplied;</Message>
</ErrorMessage>
</ApiResponse>
Получить историю событий подписчика:
Запрос:
GET https://api.esv2.com/v2/Api/Subscribers?apiKey=Ваш_API_ключ&email=john%40yahoo.com&option=EventsHistory HTTP/1.1 Accept-Encoding: gzip,deflate Host: api.esv2.com Connection: Keep-Alive User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
ОК ответ:
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNetMvc-Version: 5.2
X-AspNet-Version: 4.0.30319
Set-Cookie: TEMP_DATA=2baf0f58-63a5-44bc-9673-988be8061978; path=/
X-Powered-By: ASP.NET
Date: Tue, 27 Jan 2015 13:37:40 GMT
Content-Length: 1259
<ApiResponse xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Data>
<Events>
<Event>
<StartDate>2015-01-25T10:00:00</StartDate>
<EndDate>2015-01-25T11:00:00</EndDate>
<MessageType>Newsletter</MessageType>
<EventType>Click</EventType>
<EventCount>1</EventCount>
<MessageId>120540</MessageId>
<MessageSubject>Тема тестового сообщения</MessageSubject>
</Event>
<Event>
<StartDate>2015-01-25T10:00:00</StartDate>
<EndDate>2015-01-25T11:00:00</EndDate>
<MessageType>Newsletter</MessageType>
<EventType>Open</EventType>
<EventCount>1</EventCount>
<MessageId>120540</MessageId>
<MessageSubject>Тема тестового сообщения</MessageSubject>
</Event>
<Event>
<StartDate>2015-01-25T10:00:00</StartDate>
<EndDate>2015-01-25T11:00:00</EndDate>
<MessageType>Newsletter</MessageType>
<EventType>Send</EventType>
<EventCount>1</EventCount>
<MessageId>120540</MessageId>
<MessageSubject>Тема тестового сообщения</MessageSubject>
</Event>
</Events>
</Data>
</ApiResponse>