Email Service API (v1.0.0)
Managing email resources, their domains, retrieving mailing statistics, managing stop lists. Created resources will contain information about SMTP server to connect. The maximum number of requests to SMTP is 10,000 per minute. If the limit is exceeded, the method will return error 429. The average execution time for one request is 500 ms
Managing resources: viewing a list of resources, creating and deleting resources, and changing resource names.
List resources
Returns a list of resources in the project.
Authorizations:
query Parameters
limit | integer <integer> Default: 100 Maximum number of items to return in response. Used for pagination. |
offset | integer <integer> Default: 0 Number of items to skip. Used for pagination. |
Responses
Response samples
- 200
- 400
- 500
{- "limit": 0,
- "next_offset": 0,
- "resources": [
- {
- "created_at": "2024-05-26T15:16:53+00:00",
- "dedicated_sender": true,
- "dns_key": "xncFjGLFGkeq",
- "domains": [
- "domain1.ru",
- "domain2.ru"
], - "id": "448355c9-8c3a-4706-8ca4-ed2970fce631",
- "login": "1010",
- "name": "My SES Resource",
- "password": "NtV4FQscV5BQ",
- "project_id": "5c4272d6c6274435ae913cff6eceaf22",
- "status": "active",
- "updated_at": "2024-05-27T15:16:53+00:00"
}
]
}
Create resource
Creates the resource.
Authorizations:
Request Body schema: application/jsonrequired
The scheme for creating a resource.
name required | string Name of the resource. |
Responses
Request samples
- Payload
{- "name": "string"
}
Response samples
- 201
- 400
- 500
{- "created_at": "2024-05-26T15:16:53+00:00",
- "dedicated_sender": true,
- "dns_key": "xncFjGLFGkeq",
- "id": "448355c9-8c3a-4706-8ca4-ed2970fce631",
- "login": "1010",
- "name": "My SES Resource",
- "password": "NtV4FQscV5BQ",
- "project_id": "5c4272d6c6274435ae913cff6eceaf22",
- "status": "active",
- "updated_at": "2024-05-27T15:16:53+00:00"
}
Get resource by identifier
Returns the resource by its identifier.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
Responses
Response samples
- 200
- 400
- 404
- 500
{- "resource": {
- "created_at": "2024-05-26T15:16:53+00:00",
- "dedicated_sender": true,
- "dns_key": "xncFjGLFGkeq",
- "id": "448355c9-8c3a-4706-8ca4-ed2970fce631",
- "login": "1010",
- "name": "My SES Resource",
- "password": "NtV4FQscV5BQ",
- "project_id": "5c4272d6c6274435ae913cff6eceaf22",
- "status": "active",
- "updated_at": "2024-05-27T15:16:53+00:00"
}
}
Change resource name
Changes the name of the created resource by its identifier.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
Request Body schema: application/jsonrequired
The scheme for updating a resource.
name required | string New name of the resource. |
Responses
Request samples
- Payload
{- "name": "string"
}
Response samples
- 200
- 400
- 500
{- "created_at": "2024-05-26T15:16:53+00:00",
- "dedicated_sender": true,
- "dns_key": "xncFjGLFGkeq",
- "id": "448355c9-8c3a-4706-8ca4-ed2970fce631",
- "login": "1010",
- "name": "My SES Resource",
- "password": "NtV4FQscV5BQ",
- "project_id": "5c4272d6c6274435ae913cff6eceaf22",
- "status": "active",
- "updated_at": "2024-05-27T15:16:53+00:00"
}
Generate new resource password
Generates new password for the created resource by its identifier
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
Responses
Response samples
- 200
- 400
- 404
- 500
{- "created_at": "2024-05-26T15:16:53+00:00",
- "dedicated_sender": true,
- "dns_key": "xncFjGLFGkeq",
- "id": "448355c9-8c3a-4706-8ca4-ed2970fce631",
- "login": "1010",
- "name": "My SES Resource",
- "password": "NtV4FQscV5BQ",
- "project_id": "5c4272d6c6274435ae913cff6eceaf22",
- "status": "active",
- "updated_at": "2024-05-27T15:16:53+00:00"
}
Transfer resource to other project
Transfers created resource to other project by resource identifier.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
Request Body schema: application/jsonrequired
The scheme for transfering a resource.
project_id required | string Target project identifier for the transfer. |
Responses
Request samples
- Payload
{- "project_id": "string"
}
Response samples
- 200
- 400
- 404
- 500
{- "created_at": "2024-05-26T15:16:53+00:00",
- "dedicated_sender": true,
- "dns_key": "xncFjGLFGkeq",
- "id": "448355c9-8c3a-4706-8ca4-ed2970fce631",
- "login": "1010",
- "name": "My SES Resource",
- "password": "NtV4FQscV5BQ",
- "project_id": "5c4272d6c6274435ae913cff6eceaf22",
- "status": "active",
- "updated_at": "2024-05-27T15:16:53+00:00"
}
Managing domains: adding and deleting domains from a resource, viewing a list of domains in a resource, and checking domain verification status.
Unlink domain
Unlinks domain from the resource.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
name required | string Name of the domain. |
Responses
Response samples
- 400
- 404
- 500
{- "description": "string",
- "message": "string"
}
List resource domains
Returns a list of domains of the resource.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
limit | integer <integer> Default: 16 Maximum number of items to return in response. Used for pagination. |
offset | integer <integer> Default: 0 Number of items to skip. Used for pagination. |
Responses
Response samples
- 200
- 400
- 500
{- "domains": [
- "string"
], - "limit": 0,
- "next_offset": 0
}
Link domain
Links the domain to the resource.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
Request Body schema: application/jsonrequired
The scheme for adding a domain.
name required | string Domain name to link. |
Responses
Request samples
- Payload
{- "name": "string"
}
Response samples
- 201
- 400
- 500
{- "domain": "string"
}
Check domain verification status
Checks the correctness of SPF, DKIM, and DMARC domain record.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
name required | string <string> Name of the domain. |
Responses
Response samples
- 200
- 400
- 500
{- "verification": {
- "dkim_status": true,
- "dmarc_status": true,
- "dns_status": true,
- "spf_status": true,
- "verification_status": true
}
}
List message complaints by period
Returns a list of complaints on messages by period.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
date_from required | string <date> Example: date_from=2024-05-25 Start date of the period. |
date_to required | string <date> Example: date_to=2024-05-26 End date of the period. |
limit | integer Default: 100 Example: limit=5 Maximum number of items to return in response. Used for pagination. |
cursor_next | integer Default: 0 Example: cursor_next=20 Number of items to skip. Used for pagination. |
Responses
Response samples
- 200
- 400
- 403
- 500
{- "pagination": {
- "cursor_next": 0
}, - "report": [
- {
- "date": "2024-02-20 15:09:49",
- "domain": "domain.com",
- "email": "email1@inbox.ru",
- "issuen": 123456,
- "x_track_id": "299_20230621_135411"
}
], - "status": "ok"
}
Retrieve undelivered messages
Retrieves undelivered messages by period.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
date_from required | string <date> Example: date_from=2024-05-25 Start date of the period. |
date_to required | string <date> Example: date_to=2024-05-26 End date of the period. |
limit | integer Default: 100 Example: limit=5 Maximum number of items to return in response. Used for pagination. |
cursor_next | integer Default: 0 Example: cursor_next=20 Number of items to skip. Used for pagination. |
Responses
Response samples
- 200
- 400
- 403
- 500
{- "pagination": {
- "cursor_next": 0
}, - "report": [
- {
- "code": 550,
- "date": "2024-02-20 15:09:49",
- "email": "email1@inbox.ru",
- "issuen": 123456,
- "message": "Unrouteable address",
- "x_track_id": "299_20230621_135411"
}
], - "status": "ok"
}
Get the delivered message status
Returns status of the delivered message.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
message_id | string <string> Message identifier. |
x_track_id | string <string> Tracking identifier. |
Responses
Response samples
- 200
- 400
- 403
- 500
{- "messages": [
- {
- "created_at": 1697746906,
- "message_id": "1qBv3w-0007Ls-CS11",
- "reason": "H=mx02.mail.icloud.com [17.56.9.29] CV=yes: 550 5.1.1 <example@icloud.com>: user does not exist",
- "status": "failed",
- "x_track_id": "299_20230621_135411"
}
], - "status": "ok"
}
Retrieve resource statistics
Retrieves the statistics of sent messages of the resource.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
date_from required | string <date> Example: date_from=2024-05-25 Start date of the period. |
date_to required | string <date> Example: date_to=2024-05-26 End date of the period. |
Responses
Response samples
- 200
- 400
- 500
{- "limit": 0,
- "next_offset": 0,
- "statistics": {
- "statistics_by_dates": [
- {
- "date": "string",
- "issuen": 0,
- "stat": {
- "bad": 0,
- "click_link": 0,
- "dup": 0,
- "fbl": 0,
- "gen_ok": 0,
- "open_msg": 0,
- "send_fail": 0,
- "send_ok": 0,
- "stop": 0,
- "total": 0,
- "trap": 0
}, - "status": "string"
}
], - "total": {
- "bad": 0,
- "click_link": 0,
- "dup": 0,
- "fbl": 0,
- "gen_ok": 0,
- "open_msg": 0,
- "send_fail": 0,
- "send_ok": 0,
- "stop": 0,
- "total": 0,
- "trap": 0
}
}
}
Remove email from stop list
Remove the email from the stop list.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
mail_from required | string <email> Sender's email address. |
email required | string <email> Email address to be removed from the stop list. |
Responses
Response samples
- 400
- 500
{- "description": "string",
- "message": "string"
}
Search email in stop list
Searchs the email in the stop list.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
email required | string <email> Email address to be searched in the stop list. |
Responses
Response samples
- 200
- 400
- 500
{- "bounces": [
- {
- "bounce": "string",
- "date": "string"
}
], - "domains": [
- "string"
], - "fbl_report": [
- {
- "date": "string",
- "domain": "string"
}
], - "status": "string",
- "user_unsubscribe": [
- {
- "date": "string",
- "domain": "string"
}
]
}
Add email to stop list
Adds the email to the stop list.
Authorizations:
path Parameters
ses_id required | string <uuid> Resource identifier. |
query Parameters
mail_from required | string <email> Sender's email address. |
email required | string <email> Email address to be added to the stop list. |
Responses
Response samples
- 400
- 500
{- "description": "string",
- "message": "string"
}