Add a sending domain
Register a new domain with SES and persist its DKIM tokens.
Requires the domains:write scope — Add and remove sending domains, and trigger verification.
API key authentication. Use a sk_* (FULL) or pk_* (SENDING_ONLY) key as the bearer token. Public keys (pk_*) are restricted to the email-send endpoints and the self-serve list subscribe/unsubscribe pair; every other endpoint — event tracking included — answers 403 for them. In scope terms (used by /api/v1/* operations): FULL keys hold every scope; SENDING_ONLY keys hold only emails:send.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Body for POST /api/domains. projectId is optional for API-key auth (derived from key) and required for session auth. region pins the SES region; on the first domain it locks the project, after that it must match the project's region. stream assigns the identity to transactional or marketing traffic at creation; omit it to leave the identity serving both.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/domains" \ -H "Content-Type: application/json" \ -d '{ "domain": "string" }'{
"success": true,
"data": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
"domain": "string",
"verified": true,
"region": "string",
"dkimTokens": [
"string"
],
"dkimStatus": "NOT_CHECKED",
"spfStatus": "NOT_CHECKED",
"dmarcStatus": "NOT_CHECKED",
"lastHealthCheckAt": "2019-08-24T14:15:22Z",
"receivingEnabled": true,
"mailFromDomain": "string",
"mailFromDomainStatus": "Pending",
"stream": "TRANSACTIONAL",
"streamDefault": true,
"defaultFromAddress": "string",
"defaultFromName": "string",
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}
}{
"success": false,
"error": {
"message": "string",
"code": "string",
"details": {
"errors": [
null
]
}
}
}{
"success": false,
"error": {
"message": "string",
"code": "string",
"details": {
"errors": [
null
]
}
}
}{
"success": false,
"error": {
"message": "string",
"code": "string",
"details": {
"errors": [
null
]
}
}
}{
"success": false,
"error": {
"message": "string",
"code": "string",
"details": {
"errors": [
null
]
}
}
}{
"success": false,
"error": {
"message": "string",
"code": "string",
"details": {
"errors": [
null
]
}
}
}{
"success": false,
"error": {
"message": "string",
"code": "string",
"details": {
"errors": [
null
]
}
}
}