Подписчики

С помощью API вы можете создавать, редактировать и удалять подписчиков в нужном вам списке.

Базовый URL: http://api.mailhandler.ru/sub/lists/{list_id}/subscribers/

Получение списка подписчиков

Отправьте GET запрос на URL http://api.mailhandler.ru/sub/lists/{list_id}/subscribers/, где list_id - идентификатор нужного вам списка.

Вы можете осуществлять фильтрацию подписчиков по следующим параметрам:

Название

Описание

Обязателен

Пример

email

Email

Нет

email__icontains=ivanov - осуществит поиск подписчиков, адрес которых содержит строку ivanov, [email protected] - осуществит поиск подписчика, адрес которого совпадает с [email protected]

is_active

False/True, активный или нет

Нет

is_active=False

Пример поискового запроса: http://api.mailhandler.ru/sub/lists/100/subscribers/?email__icontains=ivanov&is_active=True

В результате вы получите ответ в формате JSON со списком созданных вами подписчиков.

Bash
Python
Bash

Пример получения списка объектов с помощью curl:

curl 'http://api.mailhandler.ru/sub/lists/100/subscribers/' \
-X GET \ -H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-Secure-Token: <YOUR_TOKEN>'
Python

Пример получения списка объектов на python:

import requests
def get_list():
headers = {
'X-Secure-Token': '<YOUR_TOKEN>',
'Accept': 'application/json',
'Content-Type': 'application/json',
}
response = requests.get('http://api.mailhandler.ru/sub/lists/100/subscribers/',
json=data,
headers=headers)
print(response.status_code)

В случае успешного выполнения запроса вы получите ответ в формате JSON со статусом 200 OK

{
"count": 1,
"next": null,
"previous": null,
"results": [{
"id": 688072,
"list_id": 100,
"email": "[email protected]",
"name": "",
"is_active": true,
"disable_reason": null,
"is_email_verified": false,
"meta": {},
"source": "API",
"opt_in_signed": null,
"date_created": "2017-02-28T23:16:26.203756"
}]
}

Создание подписчика

Отправьте POST запрос на URL http://api.mailhandler.ru/sub/lists/{list_id}/subscribers/. Запрос может содержать следующие параметры:

Название

Описание

Обязателен

Пример

email

Email

Да

[email protected]

name

Имя подписчика

Нет

Дмитрий

meta

Дополнительные данные подписчика в формате JSON. Ключи в структуре обязательно должны совпадать с названиями дополнительных переменных вашего списка

Нет

"{\"surname\": \"Иванов\"}"

is_active

bool, активный или нет, по умолчанию true

Нет

false

В результате успешного создания объекта вы получите ответ в формате JSON с данными созданного объекта:

Название

Описание

Пример

id

Идентификатор объекта

100

list_id

Идентификатор списка

1

email

Email

[email protected]

name

Имя

Дмитрий

is_active

Активный или нет

true

disable_reason

Причина выключения

UNSUBSCRIBED

is_email_verified

Подтвержден email или нет

false

meta

Дополнительные данные подписчика. Структура в формате JSON.

{"surname":"Иванов"}

source

Источник. Возможные значения: IMPORT, FORM, API, APP

IMPORT

opt_in_signed

Дата подписки Opt-In, может быть null

2017-03-15T10:21:56.854530

date_created

Дата добавления

2017-03-15T10:21:56.854530

Bash
Python
Bash

Пример создания объекта с помощью curl:

curl 'http://api.mailhandler.ru/sub/lists/100/subscribers/' \
-X POST \ -H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-Secure-Token: <YOUR_TOKEN>' \
-d '{"email":"[email protected]"}'
Python

Пример создания объекта на python:

import requests
def create():
headers = {
'X-Secure-Token': '<YOUR_TOKEN>',
'Accept': 'application/json',
'Content-Type': 'application/json',
}
data = {
'email': '[email protected]'
}
response = requests.post('http://api.mailhandler.ru/sub/lists/100/subscribers/',
json=data,
headers=headers)
print(response.status_code)

В случае успешного создания объекта вы получите ответ в формате JSON со статусом 201 Created

{
"id": 688072,
"list_id": 100,
"email": "[email protected]",
"name": "",
"is_active": true,
"disable_reason": null,
"is_email_verified": false,
"meta": {},
"source": "API",
"opt_in_signed": null,
"date_created": "2017-02-28T23:16:26.203756"
}

Редактирование подписчика

Отправьте PUT или PATCH запрос на URL http://api.mailhandler.ru/sub/lists/{list_id}/subscribers/{subscriber_id}/, где list_id - идентификатор нужного вам списка, subscriber_id - идентификатор нужного вам подписчика.

Запрос может содержать следующие параметры:

Название

Описание

Обязателен

Пример

email

Email

Да

[email protected]

name

Имя подписчика

Нет

Дмитрий

meta

Дополнительные данные подписчика в формате JSON. Ключи в структуре обязательно должны совпадать с названиями дополнительных переменных вашего списка

Нет

"{\"surname\": \"Иванов\"}"

is_active

bool, активный или нет, по умолчанию true

Нет

false

В результате успешного создания объекта вы получите ответ в формате JSON с данными отредактированного подписчика:

Название

Описание

Пример

id

Идентификатор объекта

100

list_id

Идентификатор списка

1

email

Email

[email protected]

name

Имя

Дмитрий

is_active

Активный или нет

true

disable_reason

Причина выключения

UNSUBSCRIBED

is_email_verified

Подтвержден email или нет

false

meta

Дополнительные данные подписчика. Структура в формате JSON.

{"surname":"Иванов"}

source

Источник. Возможные значения: IMPORT, FORM, API, APP

IMPORT

opt_in_signed

Дата подписки Opt-In, может быть null

2017-03-15T10:21:56.854530

date_created

Дата добавления

2017-03-15T10:21:56.854530

Bash
Python
Bash

Пример редактирования объекта с помощью curl:

curl 'http://api.mailhandler.ru/sub/lists/100/subscribers/500/' \
-X PATCH \ -H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-Secure-Token: <YOUR_TOKEN>' \
-d '{"email":"[email protected]"}'
Python

Пример редактирования объекта на python:

import requests
def edit():
headers = {
'X-Secure-Token': '<YOUR_TOKEN>',
'Accept': 'application/json',
'Content-Type': 'application/json',
}
data = {
'email': '[email protected]'
}
response = requests.patch('http://api.mailhandler.ru/sub/lists/100/subscribers/500/',
json=data,
headers=headers)
print(response.status_code)

В случае успешного редактирования объекта вы получите ответ в формате JSON со статусом 200 OK

{
"id": 688072,
"list_id": 100,
"email": "[email protected]",
"name": "",
"is_active": true,
"disable_reason": null,
"is_email_verified": false,
"meta": {},
"source": "API",
"opt_in_signed": null,
"date_created": "2017-02-28T23:16:26.203756"
}

Получение данных подписчика

Отправьте GET запрос на URL http://api.mailhandler.ru/sub/lists/{list_id}/subscribers/{subscriber_id}/, где list_id - идентификатор нужного вам списка, subscriber_id - идентификатор нужного вам подписчика.

Запрос не должен содержать параметров.

В результате успешного запроса вы получите ответ в формате JSON с данными объекта:

Название

Описание

Пример

id

Идентификатор объекта

100

list_id

Идентификатор списка

1

email

Email

[email protected]

name

Имя

Дмитрий

is_active

Активный или нет

true

disable_reason

Причина выключения

UNSUBSCRIBED

is_email_verified

Подтвержден email или нет

false

meta

Дополнительные данные подписчика. Структура в формате JSON.

{"surname":"Иванов"}

source

Источник. Возможные значения: IMPORT, FORM, API, APP

IMPORT

opt_in_signed

Дата подписки Opt-In, может быть null

2017-03-15T10:21:56.854530

date_created

Дата добавления

2017-03-15T10:21:56.854530

Bash
Python
Bash

Пример получения данных объекта с помощью curl:

curl 'http://api.mailhandler.ru/sub/lists/100/subscribers/500/' \
-X GET \ -H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-Secure-Token: <YOUR_TOKEN>'
Python

Пример получения данных объекта на python:

import requests
def get():
headers = {
'X-Secure-Token': '<YOUR_TOKEN>',
'Accept': 'application/json',
'Content-Type': 'application/json',
}
response = requests.get('http://api.mailhandler.ru/sub/lists/100/subscribers/500/',
headers=headers)
print(response.status_code)

В случае успешного получения данных объекта вы получите ответ в формате JSON со статусом 200 OK

{
"id": 688072,
"list_id": 100,
"email": "[email protected]",
"name": "",
"is_active": true,
"disable_reason": null,
"is_email_verified": false,
"meta": {},
"source": "API",
"opt_in_signed": null,
"date_created": "2017-02-28T23:16:26.203756"
}

Удаление подписчика

Отправьте DELETE запрос на URL http://api.mailhandler.ru/sub/lists/{list_id}/subscribers/{subscriber_id}/, где list_id - идентификатор нужного вам списка, subscriber_id - идентификатор нужного вам подписчика.

Запрос не должен содержать параметров.

В результате успешного запрос вы получите ответ со статусом 204 No Content.

Bash
Python
Bash

Пример удаления объекта с помощью curl:

curl 'http://api.mailhandler.ru/sub/lists/100/subscribers/500/' \
-X DELETE \ -H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-Secure-Token: <YOUR_TOKEN>'
Python

Пример удаления объекта на python:

import requests
def delete():
headers = {
'X-Secure-Token': '<YOUR_TOKEN>',
'Accept': 'application/json',
'Content-Type': 'application/json',
}
response = requests.delete('http://api.mailhandler.ru/sub/lists/100/subscribers/500/',
headers=headers)
print(response.status_code)