Postmaster statistics is collected and displayed (including API) for DKIM-domain (this domain is used in 'd' tag in DKIM-Signature). The domain from the "From" field does not matter.
Step by step guide using curl:
1. After you've signed in to your mail.ru account from which you will use API, follow the link for generating refresh and access tokens.
If request succeded, you will get the following JSON in response:
{"access_token":"1222362434157c389d38348daf10ff73099cf23037363631", "expires_in":3600,"refresh_token":"8d94455cb4f473f2a5801749b0f0fbe1099ca23037363831"} |
2. In order to refresh access_token, make POST request of type (change only construction "value_of_your_token", but not "grant_type=refresh_token"):
curl -X POST "https://o2.mail.ru/token" -d "client_id=postmaster_api_client&grant_type= refresh_token&refresh_token=value_of_your_token" |
200 OK HTTP code should be in response with JSON of following type:
{"expires_in":3600,"access_token":" 8d94455cb4f473f2a5801749b0f0fbe1099ca23037363831'"} |
3. Access_token you recieve in response should be added to each API request (in the HTTP-header Bearer).
Bearer: 8d94455cb4f473f2a5801749b0f0fbe1099ca23037363831 |
Here’s an example request to get list of confirmed domains for current account (with access_token ). We used cURL and receved access_token:
curl -k -X GET "https://postmaster.mail.ru/ext-api/reg-list/" -H 'Bearer: 8d94455cb4f473f2a5801749b0f0fbe1099ca23037363831>' |
Success request:
{"ok": true, domains: []} |
Request | Description | Parameters |
Examples of requests with curl and JSON responses |
/ext-api/reg-list/ |
List all the confirmed domains for the account. Will return empty list if no domain is. |
No parameters allowed. |
Below is example with curl: curl -k -X GET "https://postmaster.mail.ru/ext-api/reg-list/ "-H 'Bearer: 6c5bf168b3d7852a0bdd66283e744b8099ca2303736' JSON response: {"ok": true, "domains":[ {"domain":"alphadomain.ru"}, {"domain":"betadomain.ru"}, {"domain":"gammadomain.ru"} ]} |
/ext-api/troubles-list/ |
List all the domains which have any problems (SPF, DKIM, DMARC). |
No parameters allowed. |
Example with curl: curl -k -X GET "https://postmaster.mail.ru/ext-api/troubles-list/" -H 'Bearer: 6c5bf168b3d7852a0bdd66283e744b8099ca2303736' JSON response: { "ok": true, "data":[ {"domain": "alphadomain.ru","errors": [ {"msg": "DMARC check failed.", "code": -1}, {"msg": "DKIM statistics not available", "code": 0}],}, {"domain": "betadomain.ru","errors": [ {"msg": "DMARC (p=None).", "code": 1}],}, {"domain": "gammadomain.ru","errors": [ {"msg": "SPF not found.", "code": -2}, {"msg": "DMARC check failed.", "code": -1}],} ]} |
/ext-api/stat-list/ |
Returns aggregated statistics for domain, timeframe and tag. Whether request was passed succesfully, will return JSON {ok:"true"}. |
|
Examples with curl: 1. Aggregated statistics for all confirmed domains in timeframe from 25.04.2018 to current day: curl -k -X GET "https://postmaster.mail.ru/ext-api/stat-list/ ?date_from=2018-04-25" -H 'Bearer: 6c5bf168b3d7854a0bdd36283e744b20992a2313736' JSON response: { "ok": true, { "domain":"alphadomain.ru", "delivered":2, "messages_sent":0, "deleted_read":1, "spam":0, "read":2, "spam_percent":0.0, "probably_spam_percent":0.0, "complaints":0, "deleted_unread":0, "probably_spam":0}, { "domain":"betadomain.ru", "delivered":0, "messages_sent":0, "deleted_read":0, "spam":0, "read":0, "spam_percent":0.0, "probably_spam_percent":0.0, "complaints":0, "deleted_unread":0, "probably_spam":0}, { "domain":"gammadomain.ru", "delivered":19, "messages_sent":29, "deleted_read":0, "spam":10, "read":22, "spam_percent":0.0, "probably_spam_percent":0.0, "complaints":0, "deleted_unread":4, "probably_spam":0} ]} 2. Aggregated statistics for alphadomain.ru in timeframe from 25.04.2018 to 01.05.2018. Domain, date_from, date_to parameters are used: curl -k -X GET "https://postmaster.mail.ru/ext-api/stat-list/?domain=alphadomain.ru&date_from= 2018-04-25&date_to=2018-05-01" -H 'Bearer: 6c5bf168b3d7854a0bdd36283e744b20992a2313736' JSON response: { "ok": true, { "domain":"alphadomain.ru", "delivered":46, "messages_sent":46, "deleted_read":221, "spam":0, "read":212, "spam_percent":0.0, "probably_spam_percent":0.0, "complaints":1, "deleted_unread":960, "probably_spam":0} ]} 3. Example of querying statistics for domain aphadomain.ru with "hotnews" tag with timeframe. Domain, date_from, date_to, msgtype parameters are used: curl -k -X GET "https://postmaster.mail.ru/ext-api/stat-list/?domain=alphadomain.ru&date_from= 2018-04-25&date_to=2018-05-01&msgtype=hotnews" -H 'Bearer: 6c5bf168b3d7854a0bdd36283e744b20992a2313736' JSON response: { "ok": true, { "domain":"alphadomain.ru", "delivered":26, "messages_sent":26, "deleted_read":21, "spam":0, "read":20, "spam_percent":0.0, "probably_spam_percent":0.0, "complaints":0, "deleted_unread":12, "probably_spam":0} ]} |
/ext-api/stat-list-detailed/ |
Returns detailed statistics (by day) for domain, timeframe and tag. Whether request was passed succesfully, will return JSON {ok:"true"}. |
|
Examples with curl: 1. Example of request to get detailed statistics for alphadomain.ru in timeframe from 23.04.2018 to 25.04.2018. Domain, date_from, date_to parameters are used: curl -k -X GET "https://postmaster.mail.ru/ext-api/stat-list-detailed/ ?domain=alphadomain.ru&date_from=2018-04-23&date_to=2018-04-25" -H 'Bearer: 6c5bf168b3d7854a0bdd36283e744b20992a2313736' JSON response: { "ok": true, "data": [ {"domain": "alphadomain.ru","data": [ {"delivered": 4980696, "messages_sent": 4980699, "deleted_read": 75309, "spam": 0, "read": 327158,"spam_percent": 0, "date": "2018-04-25", "reputation": 0.0457271469759617, "complaints": 1877, "deleted_unread": 148685, "probably_spam": 3, "trend": -8.50375076175999, "probably_spam_percent": 0.00006023250953330045} {"delivered": 5205823, "messages_sent": 5205828, "deleted_read": 79964, "spam": 0, "read": 331509, "spam_percent": 0, "date": "2018-04-24", "reputation": 0.0459325440733408, "complaints": 1868, "deleted_unread": 169365, "probably_spam": 5, "trend": -7.67667312958405, "probably_spam_percent": 0.00009604620052756257} {"delivered": 5043425, "messages_sent": 5043434, "deleted_read": 91322, "spam": 0, "read": 294812, "spam_percent": 0, "date": "2018-04-23", "reputation": 0.0452646935881204, "complaints": 2294, "deleted_unread": 173716, "probably_spam": 9, "trend": -4.854289596974, "probably_spam_percent": 0.00017844984191326782} ]} 2. Detailed statistics for alphadomain.ru with "hotnews" tag with timeframe. Domain, date_from, date_to, msgtype parameters are used: curl -k -X GET "https://postmaster.mail.ru/ext-api/stat-list-detailed/?domain= alphadomain.ru&date_from=2018-04-23&date_to=2018-04-25&msgtype=hotnews" -H 'Bearer: 6c5bf168b3d7854a0bdd36283e744b20992a2313736' JSON response: { "ok": true, { "domain": "alphadomain.ru","data": [ { "delivered": 8143, "messages_sent": 8143, "deleted_read": 707, "spam": 0, "read": 1152, "spam_percent": 0, "date": "2018-04-25", "reputation": 0, "complaints": 14, "deleted_unread": 3094, "probably_spam": 0, "trend": 0, "probably_spam_percent": 0} { "delivered": 10165, "messages_sent": 10165, "deleted_read": 800, "spam": 0, "read": 1286, "spam_percent": 0, "date": "2018-04-24", "reputation": 0, "complaints": 4, "deleted_unread": 3863, "probably_spam": 0, "trend": 0, "probably_spam_percent": 0} {"delivered": 9703, "messages_sent": 9703, "deleted_read": 802, "spam": 0, "read": 1303, "spam_percent": 0, "date": "2018-04-23", "reputation": 0, "complaints": 6, "deleted_unread": 3826, "probably_spam": 0, "trend": 0, "probably_spam_percent": 0} ]} |