Адресные базы
Базы, подписчики, дополнительные поля, импорт, отписки и жалобы.
Это методы предыдущей версии API. Они работают и отключаться не будут, но новые интеграции лучше писать на REST API v2.
- GET lists.get
- POST lists.add
- POST lists.update
- POST lists.delete
- GET lists.get_members
- GET lists.get_unsubscribed
- GET lists.get_complaints
- GET lists.member_activity
- POST lists.upload
- POST lists.add_member
- POST lists.add_member_batch
- POST lists.update_member
- POST lists.delete_member
- POST lists.unsubscribe_member
- POST lists.move_member
- POST lists.copy_member
- POST lists.add_merge
- POST lists.update_merge
- POST lists.delete_merge
- GET lists.last_status
- GET lists.get_import_history
lists.get #
GET
?method=lists.get
Получаем список баз пользователя
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id | int | id запрашиваемой адресной базы |
Что возвращается
Массив строк адресных баз с различными параметрами. Вложенный массив подразумевается сериализорованным.
| Поле | Описание |
|---|---|
id | id адресной базы |
name | название адресной базы |
state | статус адресной базы, возможные значения: active, blocked (если идет процесс импорта) и archived |
merge_{1..10} | Сериализированные массивы настроек дополнительных полей. Подробнее смотрите методы merge_add, merge_updatetitle — название дополнительного поля;type — тип поля. возможные значения: text, date, choice;req — обязательно поле или нет? возможные значения: on,off;var — название шаблона |
description | описание того, как подписчик может оказаться в этой базе |
company | название вашей компании, владеющей адресной базой |
abuse_name | Имя человека, которому можно жаловаться на спам |
phone | контактный телефон |
address | контактный адрес |
city | город, где находится ваша компания |
url | url вашего сайта, где можно подписаться/отписаться на базу |
count_active | количество активных подписчиков в базе |
count_bounced | количество жестких возвратов в базе |
count_inactive | количество неактивных подписчиков в базе |
count_unconfirmed | количество неподтвержденных адресов в базе |
count_unsubscribed | количество отписавшихся подписчиков в базе |
count_all | общее количество подписчиков в базе |
count | JSON-массив с агрегированной статистикой подписчиков в адресной базе |
stat | JSON-массив с агрегированной статистикой рассылок (открытий, кликов итд) по данной адресной базе |
curl 'https://api.dashamail.com/?method=lists.get&api_key=YOUR_API_KEY'
<?php
$url = 'https://api.dashamail.com/?' . http_build_query([
'method' => 'lists.get',
'api_key' => 'YOUR_API_KEY',
]);
$response = json_decode(file_get_contents($url), true);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.get(
'https://api.dashamail.com/',
params={
'method': 'lists.get',
'api_key': 'YOUR_API_KEY',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const params = new URLSearchParams({
"method": "lists.get",
"api_key": "YOUR_API_KEY"
});
const response = await fetch(`https://api.dashamail.com/?${params}`);
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.add #
POST
?method=lists.add
Добавляем адресную базу
Параметры
| Параметр | Тип | Описание |
|---|---|---|
name обязательный | string | название создаваемой базы |
abuse_email | string | Email, по которому будут приниматься жалобы на спам. |
abuse_name | string | Имя человека, которому можно жаловаться на спам. |
company | string | название вашей компании, владеющей адресной базой |
address | string | контактный адрес |
city | string | город, где находится ваша компания |
zip | string | почтовый индекс |
country | string | страна, где вы находитесь |
url | string | url вашего сайта, где можно подписаться/отписаться на базу |
phone | string | контактный телефон |
Что возвращается
id добавленной базы
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.add",
"api_key": "YOUR_API_KEY",
"name": "Клиенты интернет-магазина"
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.add',
'api_key' => 'YOUR_API_KEY',
'name' => 'Клиенты интернет-магазина',
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.add',
'api_key': 'YOUR_API_KEY',
'name': 'Клиенты интернет-магазина',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.add",
"api_key": "YOUR_API_KEY",
"name": "Клиенты интернет-магазина"
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.update #
POST
?method=lists.update
Обновляем контактную информацию адресной базы
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id редактируемой адресной базы |
name | string | Название базы. |
abuse_email | string | Email, по которому будут приниматься жалобы на спам. |
abuse_name | string | Имя человека, которому можно жаловаться на спам. |
company | string | название вашей компании, владеющей адресной базой |
address | string | контактный адрес |
city | string | город, где находится ваша компания |
zip | string | почтовый индекс |
country | string | страна, где вы находитесь |
url | string | url вашего сайта, где можно подписаться/отписаться на базу |
phone | string | контактный телефон |
Что возвращается
Если msg.err_code равен нулю, операция прошла успешно.
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.update",
"api_key": "YOUR_API_KEY",
"list_id": 128341
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.update',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.update',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.update",
"api_key": "YOUR_API_KEY",
"list_id": 128341
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.delete #
POST
?method=lists.delete
Удаляем адресную базу и всех активных подписчиков в ней.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id удаляемой адресной базы |
Что возвращается
количество удаленных активных подписчиков из удаленной базы.
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.delete",
"api_key": "YOUR_API_KEY",
"list_id": 128341
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.delete',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.delete',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.delete",
"api_key": "YOUR_API_KEY",
"list_id": 128341
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.get_members #
GET
?method=lists.get_members
Получаем подписчиков в адресной базе с возможность фильтра и регулировки выдачи.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id адресной базы |
state | string | статус подписчика, возможные варианты: active,unsubscribed,bounced |
start | int | с какого номера начинать выдачу данных |
limit | int | кол-во подписчиков в выдаваемом массиве |
order | string | порядок сортировки, вида "поле порядок", например, "id desc" |
member_id | int | id необходимого подписчика |
email | string | email необходимого подписчика |
segment_id | int | id сегмента для отображения |
Что возвращается
Массив подписчиков с параметрами.
| Поле | Описание |
|---|---|
id | id подписчика |
list_id | адресная база в которой он состоит |
email | email-адрес подписчика |
state | статус подписчика |
merge_1 | дополнительное поле №1 |
merge_2 | дополнительное поле №2 |
merge_3 | дополнительное поле №3 |
merge_4 | дополнительное поле №4 |
merge_5 | дополнительное поле №5 |
merge_6 | дополнительное поле №6 |
merge_7 | дополнительное поле №7 |
merge_8 | дополнительное поле №8 |
merge_9 | дополнительное поле №9 |
merge_10 | дополнительное поле №10 |
optin_time | время добавления в базу |
unsub_time | время отписки из базы |
lastedit_time | время последнего редактирования |
gender | пол подписчика {m - мужчина, f - женщина, n - неизвестно} |
source | источник подписки |
device | устройство, с которого читаются письма |
rating | рейтинг подписчика |
curl 'https://api.dashamail.com/?method=lists.get_members&api_key=YOUR_API_KEY&list_id=128341'
<?php
$url = 'https://api.dashamail.com/?' . http_build_query([
'method' => 'lists.get_members',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
]);
$response = json_decode(file_get_contents($url), true);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.get(
'https://api.dashamail.com/',
params={
'method': 'lists.get_members',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const params = new URLSearchParams({
"method": "lists.get_members",
"api_key": "YOUR_API_KEY",
"list_id": 128341
});
const response = await fetch(`https://api.dashamail.com/?${params}`);
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.get_unsubscribed #
GET
?method=lists.get_unsubscribed
Получаем список отписавшихся подписчиков как из всех баз, так и в разрезе конкретной адресной базы.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
start | int | с какого номера начинать выдачу данных |
limit | int | кол-во подписчиков в выдаваемом массиве |
order | string | порядок сортировки, вида "поле порядок", например, "id desc" |
list_id | string | ID адресной базы |
Что возвращается
Массив подписчиков с параметрами.
| Поле | Описание |
|---|---|
id | id подписчика |
list_id | адресная база в которой он состоит |
email | email-адрес подписчика |
state | статус подписчика |
merge_1 | дополнительное поле №1 |
merge_2 | дополнительное поле №2 |
merge_3 | дополнительное поле №3 |
merge_4 | дополнительное поле №4 |
merge_5 | дополнительное поле №5 |
merge_6 | дополнительное поле №6 |
merge_7 | дополнительное поле №7 |
merge_8 | дополнительное поле №8 |
merge_9 | дополнительное поле №9 |
merge_10 | дополнительное поле №10 |
optin_time | время добавления в базу |
unsub_time | время отписки из базы |
lastedit_time | время последнего редактирования |
gender | пол подписчика {m - мужчина, f - женщина, n - неизвестно} |
source | источник подписки |
device | устройство, с которого читаются письма |
rating | рейтинг подписчика |
curl 'https://api.dashamail.com/?method=lists.get_unsubscribed&api_key=YOUR_API_KEY'
<?php
$url = 'https://api.dashamail.com/?' . http_build_query([
'method' => 'lists.get_unsubscribed',
'api_key' => 'YOUR_API_KEY',
]);
$response = json_decode(file_get_contents($url), true);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.get(
'https://api.dashamail.com/',
params={
'method': 'lists.get_unsubscribed',
'api_key': 'YOUR_API_KEY',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const params = new URLSearchParams({
"method": "lists.get_unsubscribed",
"api_key": "YOUR_API_KEY"
});
const response = await fetch(`https://api.dashamail.com/?${params}`);
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.get_complaints #
GET
?method=lists.get_complaints
Получаем список подписчиков, нажавших «Это Спам», как из всех баз, так и в разрезе конкретной базы.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
start | int | с какого номера начинать выдачу данных |
limit | int | кол-во подписчиков в выдаваемом массиве |
order | string | порядок сортировки, вида "поле порядок", например, "id desc" |
list_id | int | ID адресной базы |
Что возвращается
Массив подписчиков с параметрами.
| Поле | Описание |
|---|---|
id | id подписчика |
list_id | адресная база в которой он состоит |
email | email-адрес подписчика |
state | статус подписчика |
merge_1 | дополнительное поле №1 |
merge_2 | дополнительное поле №2 |
merge_3 | дополнительное поле №3 |
merge_4 | дополнительное поле №4 |
merge_5 | дополнительное поле №5 |
merge_6 | дополнительное поле №6 |
merge_7 | дополнительное поле №7 |
merge_8 | дополнительное поле №8 |
merge_9 | дополнительное поле №9 |
merge_10 | дополнительное поле №10 |
optin_time | время добавления в базу |
unsub_time | время отписки из базы |
lastedit_time | время последнего редактирования |
gender | пол подписчика {m - мужчина, f - женщина, n - неизвестно} |
source | источник подписки |
device | устройство, с которого читаются письма |
rating | рейтинг подписчика |
curl 'https://api.dashamail.com/?method=lists.get_complaints&api_key=YOUR_API_KEY'
<?php
$url = 'https://api.dashamail.com/?' . http_build_query([
'method' => 'lists.get_complaints',
'api_key' => 'YOUR_API_KEY',
]);
$response = json_decode(file_get_contents($url), true);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.get(
'https://api.dashamail.com/',
params={
'method': 'lists.get_complaints',
'api_key': 'YOUR_API_KEY',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const params = new URLSearchParams({
"method": "lists.get_complaints",
"api_key": "YOUR_API_KEY"
});
const response = await fetch(`https://api.dashamail.com/?${params}`);
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.member_activity #
GET
?method=lists.member_activity
Получаем активность подписчика в различных рассылках
Параметры
| Параметр | Тип | Описание |
|---|---|---|
email обязательный | string | Email подписчика |
filter | string | Фильтр по типу события. Возможные значения: {sent, opened, clicked, bounced, unsubscribed} |
start_time | datetime | фильтр событий по времени, начальное время, формат: YYYY-MM-DD HH:ii:ss |
end_time | datetime | фильтр событий по времени, конечное время, формат: YYYY-MM-DD HH:ii:ss |
campaign_id | int | фильтр по id рассылки |
Что возвращается
Массив событий, сортированный в обратном порядке по времени события
| Поле | Описание |
|---|---|
member_id | id подписчика |
action_time | дата и время события |
campaign_id | id рассылки, в которой произошло событие |
list_id | id адресной базы, используемой при рассылке |
action | тип события {campaign-sent, campaign-opened, campaign-clicked, unsubscribe, bounced, abuse-report} |
action_text | расшифровка события |
campaign_name | название рассылки, в которой произошло событие |
bounce_category | [для возвратов] категория возврата письма {hrd,sft,blk,spm} |
bounce_reason | [для возвратов] полный текст ошибки возврата письма |
curl 'https://api.dashamail.com/?method=lists.member_activity&api_key=YOUR_API_KEY&email=ivan%40example.com'
<?php
$url = 'https://api.dashamail.com/?' . http_build_query([
'method' => 'lists.member_activity',
'api_key' => 'YOUR_API_KEY',
'email' => 'ivan@example.com',
]);
$response = json_decode(file_get_contents($url), true);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.get(
'https://api.dashamail.com/',
params={
'method': 'lists.member_activity',
'api_key': 'YOUR_API_KEY',
'email': 'ivan@example.com',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const params = new URLSearchParams({
"method": "lists.member_activity",
"api_key": "YOUR_API_KEY",
"email": "ivan@example.com"
});
const response = await fetch(`https://api.dashamail.com/?${params}`);
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.upload #
POST
?method=lists.upload
Импорт подписчиков из файла
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id адресной базы |
file обязательный | string | url импортируемого файла |
email обязательный | int | номер столбца импортируемого файла, содержащего email (счет от 0) |
merge_1 | int | номер столбца дополнительного поля 1 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_2 | int | номер столбца дополнительного поля 2 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_3 | int | номер столбца дополнительного поля 3 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_4 | int | номер столбца дополнительного поля 4 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_5 | int | номер столбца дополнительного поля 5 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_6 | int | номер столбца дополнительного поля 6 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_7 | int | номер столбца дополнительного поля 7 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_8 | int | номер столбца дополнительного поля 8 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_9 | int | номер столбца дополнительного поля 9 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
merge_10 | int | номер столбца дополнительного поля 10 (счет от 0; параметр обязателен, если поле является обязательным в базе) |
gender | enum | пол подписчика, возможные значения: m - мужчина, f - женщина, n - неизвестно |
type обязательный | string | расширение импортируемого файла ("xls","csv","xlsx","xml","ods","slk","gnumeric") |
update | string | обновлять существующие записи, если этот параметр задан (например, true) |
sheet_index | int | номер листа в xls-книге (по умолчанию - первый) |
sheet_name | string | название листа в xls-книге (по умолчанию - первый) |
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.upload",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"file": "значение",
"email": "ivan@example.com",
"type": "значение"
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.upload',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
'file' => 'значение',
'email' => 'ivan@example.com',
'type' => 'значение',
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.upload',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
'file': 'значение',
'email': 'ivan@example.com',
'type': 'значение',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.upload",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"file": "значение",
"email": "ivan@example.com",
"type": "значение"
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.add_member #
POST
?method=lists.add_member
Добавляем подписчика в базу
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id адресной базы, в которую добавляется подписчик |
email обязательный | string | email подписчика |
merge_1 | string | дополнительное поле 1 |
merge_2 | string | дополнительное поле 2 |
merge_3 | string | дополнительное поле 3 |
merge_4 | string | дополнительное поле 4 |
merge_5 | string | дополнительное поле 5 |
merge_6 | string | дополнительное поле 6 |
merge_7 | string | дополнительное поле 7 |
merge_8 | string | дополнительное поле 8 |
merge_9 | string | дополнительное поле 9 |
merge_10 | string | дополнительное поле 10 |
gender | enum | пол подписчика, возможные значения: m - мужчина, f - женщина, n - неизвестно |
region | int | регион подписчика согласно кодам субъектов Российской Федерации, например, 77 – Москва |
update | string | обновлять существующие записи, если этот параметр задан |
no_check | string | не проверять валидность адреса, если этот параметр задан |
update_tags | string | если параметр = on, то теги из запроса добавляются к текущим, если параметр = off – целиком заменяются |
Что возвращается
id добавленного подписчика
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.add_member",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"email": "ivan@example.com"
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.add_member',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
'email' => 'ivan@example.com',
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.add_member',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
'email': 'ivan@example.com',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.add_member",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"email": "ivan@example.com"
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.add_member_batch #
POST
?method=lists.add_member_batch
Добавляем несколько подписчиков в базу
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id адресной базы, в которую добавляется подписчики |
batch обязательный | JSON | JSON-массив добавленных подписчиков: [{"email":" test1@dashamail.ru ","merge_1":"Ваня","gender":"m","region":17,"state":"active"},{"email":" test2@inbox.ru ","merge_1":"Петя","state":"inactive"}]. Каждый JSON-объект подписчика может сохранять следующие параметры: адрес электронной почты (email-адрес подписчика), merge_xxx (значения дополнительных полей), состояние (активный – активен, неактивный – неактивен), пол (пол подписчика, возможные значения: m – мужчина, f – женщина, n – неизвестно), регион (номер региона подписчика) |
update | string | обновлять существующие записи, если этот параметр задан |
no_check | string | не проверять валидность адреса, если этот параметр задан |
Что возвращается
id добавленных подписчиков через запятую
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.add_member_batch",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"batch": "[]"
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.add_member_batch',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
'batch' => '[]',
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.add_member_batch',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
'batch': '[]',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.add_member_batch",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"batch": "[]"
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.update_member #
POST
?method=lists.update_member
Редактируем подписчика в базе
Параметры
| Параметр | Тип | Описание |
|---|---|---|
member_id обязательный | int | id подписчика [альтернативно email + list_id] |
email обязательный | string | email подписчика совместно с list_id могут использоваться для выбора подписчика вместо member_id |
list_id обязательный | int | list_id подписчика совместно с email могут использоваться для выбора подписчика вместо member_id |
state | string | активировать подписчика - state=active, деактивировать - state=inactive. параметр актуален только для тех клиентов, которым было выдано соответствующее разрешение в отделе тех.поддержки. |
merge_1 | string | дополнительное поле 1 |
merge_2 | string | дополнительное поле 2 |
merge_3 | string | дополнительное поле 3 |
merge_4 | string | дополнительное поле 4 |
merge_5 | string | дополнительное поле 5 |
merge_6 | string | дополнительное поле 6 |
merge_7 | string | дополнительное поле 7 |
merge_8 | string | дополнительное поле 8 |
merge_9 | string | дополнительное поле 9 |
merge_10 | string | дополнительное поле 10 |
gender | enum | пол подписчика, возможные значения: m - мужчина, f - женщина, n - неизвестно |
region | int | регион подписчика согласно кодам субъектов Российской Федерации, например, 77 – Москва |
source | string | источник подписки.
Список разрешенных значений с расшифровками для данного параметра:
|
update_tags | string | если параметр = on, то теги из запроса добавляются к текущим, в противном случае – целиком заменяются |
Что возвращается
Если msg.err_code равен нулю, операция прошла успешно.
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.update_member",
"api_key": "YOUR_API_KEY",
"member_id": 90412881,
"email": "ivan@example.com",
"list_id": 128341
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.update_member',
'api_key' => 'YOUR_API_KEY',
'member_id' => 90412881,
'email' => 'ivan@example.com',
'list_id' => 128341,
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.update_member',
'api_key': 'YOUR_API_KEY',
'member_id': 90412881,
'email': 'ivan@example.com',
'list_id': 128341,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.update_member",
"api_key": "YOUR_API_KEY",
"member_id": 90412881,
"email": "ivan@example.com",
"list_id": 128341
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.delete_member #
POST
?method=lists.delete_member
Удаляем подписчика из базы.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
member_id обязательный | int | id удаляемого подписчика |
Что возвращается
Если msg.err_code равен нулю, операция прошла успешно.
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.delete_member",
"api_key": "YOUR_API_KEY",
"member_id": 90412881
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.delete_member',
'api_key' => 'YOUR_API_KEY',
'member_id' => 90412881,
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.delete_member',
'api_key': 'YOUR_API_KEY',
'member_id': 90412881,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.delete_member",
"api_key": "YOUR_API_KEY",
"member_id": 90412881
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.unsubscribe_member #
POST
?method=lists.unsubscribe_member
Отписываем подписчика из базы.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
member_id | int | id отписываемого подписчика |
email | string | email отписываемого подписчика |
list_id | string | адресная база из которой надо отписать подписчика. если не задано - отписывается из всевозможных баз. |
Что возвращается
количество отписанных подписчиков (может быть больше 1, если подписчик был отписан из нескольких баз)
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.unsubscribe_member",
"api_key": "YOUR_API_KEY"
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.unsubscribe_member',
'api_key' => 'YOUR_API_KEY',
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.unsubscribe_member',
'api_key': 'YOUR_API_KEY',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.unsubscribe_member",
"api_key": "YOUR_API_KEY"
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.move_member #
POST
?method=lists.move_member
Перемещаем подписчика в другую адресную базу.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
member_id обязательный | int | id отписываемого подписчика |
list_id обязательный | int | id адресной базы в которую перемещаем подписчика |
Что возвращается
Если msg.err_code равен нулю, операция прошла успешно.
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.move_member",
"api_key": "YOUR_API_KEY",
"member_id": 90412881,
"list_id": 128341
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.move_member',
'api_key' => 'YOUR_API_KEY',
'member_id' => 90412881,
'list_id' => 128341,
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.move_member',
'api_key': 'YOUR_API_KEY',
'member_id': 90412881,
'list_id': 128341,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.move_member",
"api_key": "YOUR_API_KEY",
"member_id": 90412881,
"list_id": 128341
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.copy_member #
POST
?method=lists.copy_member
Копируем подписчика в другую адресную базу.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
member_id обязательный | int | id отписываемого подписчика |
list_id обязательный | int | id адресной базы в которую копируем подписчика |
Что возвращается
id подписчика-копии
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.copy_member",
"api_key": "YOUR_API_KEY",
"member_id": 90412881,
"list_id": 128341
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.copy_member',
'api_key' => 'YOUR_API_KEY',
'member_id' => 90412881,
'list_id' => 128341,
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.copy_member',
'api_key': 'YOUR_API_KEY',
'member_id': 90412881,
'list_id': 128341,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.copy_member",
"api_key": "YOUR_API_KEY",
"member_id": 90412881,
"list_id": 128341
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.add_merge #
POST
?method=lists.add_merge
Добавить дополнительное поле в адресную базу.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id адресной базы |
type обязательный | string | тип поля. возможные значения: text, date, choice, number, tags |
choices обязательный | serialized array/JSON | сериализированный массив элементов списка. Также может быть в формате JSON. Обязателен, если type = choice |
title | string | название поля |
req | string | обязательно ли поле. возможные значения: on, off |
var | string | название шаблона. должно быть вида %ШАБЛОН% |
Что возвращается
Если msg.err_code равен нулю, операция прошла успешно.
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.add_merge",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"type": "значение",
"choices": "значение"
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.add_merge',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
'type' => 'значение',
'choices' => 'значение',
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.add_merge',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
'type': 'значение',
'choices': 'значение',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.add_merge",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"type": "значение",
"choices": "значение"
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.update_merge #
POST
?method=lists.update_merge
Обновить настройки дополнительного поля в адресной базе.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id адресной базы |
merge_id обязательный | int | номер дополнительного поля. возможные значения: от 1 до 10. |
choices | serialized array | сериализированный массив элементов списка. Обязателен, если type = choice |
title | string | название поля |
req | string | обязательно ли поле. возможные значения: on, off |
var | string | название шаблона. должно быть вида %ШАБЛОН% |
Что возвращается
Если msg.err_code равен нулю, операция прошла успешно.
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.update_merge",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"merge_id": 1
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.update_merge',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
'merge_id' => 1,
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.update_merge',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
'merge_id': 1,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.update_merge",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"merge_id": 1
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.delete_merge #
POST
?method=lists.delete_merge
Удалить дополнительное поле из адресной базы.
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id обязательный | int | id адресной базы |
merge_id обязательный | int | номер дополнительного поля. возможные значения: от 1 до 10. |
Что возвращается
Если msg.err_code равен нулю, операция прошла успешно.
curl -X POST 'https://api.dashamail.com/' \
-H 'Content-Type: application/json' \
-d '{
"method": "lists.delete_merge",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"merge_id": 1
}'
<?php
$ch = curl_init('https://api.dashamail.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'method' => 'lists.delete_merge',
'api_key' => 'YOUR_API_KEY',
'list_id' => 128341,
'merge_id' => 1,
], JSON_UNESCAPED_UNICODE),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.post(
'https://api.dashamail.com/',
json={
'method': 'lists.delete_merge',
'api_key': 'YOUR_API_KEY',
'list_id': 128341,
'merge_id': 1,
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const response = await fetch('https://api.dashamail.com/', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"method": "lists.delete_merge",
"api_key": "YOUR_API_KEY",
"list_id": 128341,
"merge_id": 1
}),
});
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.last_status #
GET
?method=lists.last_status
Получить последний статус конкретного email в адресных базах
Параметры
| Параметр | Тип | Описание |
|---|---|---|
email обязательный | string | email-адрес подписчика |
list_id | int | id адресной базы |
Что возвращается
Массив подписчиков с параметрами.
| Поле | Описание |
|---|---|
status | unsubscribed/bounced/clicked/opened/delivered |
date | время в формате datetime данного события |
curl 'https://api.dashamail.com/?method=lists.last_status&api_key=YOUR_API_KEY&email=ivan%40example.com'
<?php
$url = 'https://api.dashamail.com/?' . http_build_query([
'method' => 'lists.last_status',
'api_key' => 'YOUR_API_KEY',
'email' => 'ivan@example.com',
]);
$response = json_decode(file_get_contents($url), true);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.get(
'https://api.dashamail.com/',
params={
'method': 'lists.last_status',
'api_key': 'YOUR_API_KEY',
'email': 'ivan@example.com',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const params = new URLSearchParams({
"method": "lists.last_status",
"api_key": "YOUR_API_KEY",
"email": "ivan@example.com"
});
const response = await fetch(`https://api.dashamail.com/?${params}`);
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);
lists.get_import_history #
GET
?method=lists.get_import_history
Получить историю и результаты импорта адресной базы
Параметры
| Параметр | Тип | Описание |
|---|---|---|
list_id | int | id адресной базы |
Что возвращается
Массив результатов импортов с параметрами.
| Поле | Описание |
|---|---|
id | id импорта |
list_id | id адресной базы |
username | имя пользователя, производившего импорт |
message | результат импорта с ссылками на не прошедших фильтры, отписавшихся, в черном списке, список возвратов |
type | {success,errors,in_progress} |
file_name | имя импортируемого файла |
time | время запуска импорта |
curl 'https://api.dashamail.com/?method=lists.get_import_history&api_key=YOUR_API_KEY'
<?php
$url = 'https://api.dashamail.com/?' . http_build_query([
'method' => 'lists.get_import_history',
'api_key' => 'YOUR_API_KEY',
]);
$response = json_decode(file_get_contents($url), true);
if ($response['response']['msg']['err_code'] !== 0) {
throw new RuntimeException($response['response']['msg']['text']);
}
print_r($response['response']['data']);
import requests
response = requests.get(
'https://api.dashamail.com/',
params={
'method': 'lists.get_import_history',
'api_key': 'YOUR_API_KEY',
},
)
payload = response.json()['response']
if payload['msg']['err_code'] != 0:
raise RuntimeError(payload['msg']['text'])
print(payload['data'])
const params = new URLSearchParams({
"method": "lists.get_import_history",
"api_key": "YOUR_API_KEY"
});
const response = await fetch(`https://api.dashamail.com/?${params}`);
const { response: payload } = await response.json();
if (payload.msg.err_code !== 0) throw new Error(payload.msg.text);
console.log(payload.data);