Service Reference
SES — Simple Email Service
SES supports both the v1 Query protocol (form-encoded POST with Action field, XML responses) and the v2 REST-JSON protocol (path-based routing, JSON request/response bodies).
SES — Simple Email Service
AWS docs: https://docs.aws.amazon.com/ses/latest/APIReference/Welcome.html SES v2 docs: https://docs.aws.amazon.com/ses/latest/APIReference-V2/Welcome.html
SES supports both the v1 Query protocol (form-encoded POST with Action field,
XML responses) and the v2 REST-JSON protocol (path-based routing, JSON
request/response bodies).
[!NOTE] Emails are not delivered — all outbound messages are captured and visible in the Mail page of the web console. All identities are automatically verified; there is no real verification flow.
SDK compatibility
| SDK | Client | Status |
|---|---|---|
| Go v2 | aws-sdk-go-v2/service/ses | ✅ Tested |
| Go v2 | aws-sdk-go-v2/service/sesv2 | ✅ Tested |
| Python (boto3) | boto3.client("ses") | ✅ Expected |
| Python (boto3) | boto3.client("sesv2") | ✅ Expected |
| JS/TS v3 | @aws-sdk/client-ses | ✅ Expected |
| JS/TS v3 | @aws-sdk/client-sesv2 | ✅ Expected |
Web console
The SES page (/ses) shows all verified identities with the ability to add
new email/domain identities and delete existing ones. Emails sent via SES
appear in the Mail page.
Summary
| Category | ✅ Supported | ❌ Unsupported |
|---|---|---|
| SES v1 — Sending | 2 | |
| SES v1 — Identities | 9 | 7 |
| SES v1 — Templates | 6 | |
| SES v1 — Other | 2 | 10 |
| SES v2 — Sending | 1 | |
| SES v2 — Identities | 4 | |
| SES v2 — Tags | 3 | |
| SES v2 — Other | 1 |
Endpoints
SES v1 — Sending
| Operation | Status | Notes | AWS Docs |
|---|---|---|---|
SendEmail | ✅ Supported | Query Action=SendEmail; simple content | docs |
SendRawEmail | ✅ Supported | Delivers raw MIME to mail capture | docs |
SES v1 — Identities
| Operation | Status | Notes | AWS Docs |
|---|---|---|---|
VerifyEmailIdentity | ✅ Supported | Auto-verified | docs |
VerifyDomainIdentity | ✅ Supported | Auto-verified; returns dummy token | docs |
ListIdentities | ✅ Supported | Supports IdentityType filter | docs |
ListVerifiedEmailAddresses | ✅ Supported | docs | |
GetIdentityVerificationAttributes | ✅ Supported | Always returns Success status | docs |
DeleteIdentity | ✅ Supported | docs | |
VerifyEmailAddress | ✅ Supported | docs | |
DeleteVerifiedEmailAddress | ✅ Supported | docs | |
SetIdentityFeedbackForwardingEnabled | ✅ Supported | docs | |
GetIdentityDkimAttributes | ❌ Unsupported | stub; returns 501 | docs |
GetIdentityMailFromDomainAttributes | ❌ Unsupported | stub; returns 501 | docs |
GetIdentityNotificationAttributes | ❌ Unsupported | stub; returns 501 | docs |
SetIdentityDkimEnabled | ❌ Unsupported | stub; returns 501 | docs |
SetIdentityMailFromDomain | ❌ Unsupported | stub; returns 501 | docs |
SetIdentityNotificationTopic | ❌ Unsupported | stub; returns 501 | docs |
VerifyDomainDkim | ❌ Unsupported | stub; returns 501 | docs |
SES v1 — Templates
| Operation | Status | Notes | AWS Docs |
|---|---|---|---|
CreateTemplate | ✅ Supported | docs | |
GetTemplate | ✅ Supported | docs | |
UpdateTemplate | ✅ Supported | docs | |
ListTemplates | ✅ Supported | docs | |
DeleteTemplate | ✅ Supported | docs | |
SendTemplatedEmail | ✅ Supported | {{key}} variable substitution | docs |
SES v1 — Other
| Operation | Status | Notes | AWS Docs |
|---|---|---|---|
GetSendQuota | ✅ Supported | Returns unlimited quota | docs |
GetSendStatistics | ✅ Supported | Returns empty data points | docs |
CreateConfigurationSet | ❌ Unsupported | stub; returns 501 | docs |
DeleteConfigurationSet | ❌ Unsupported | stub; returns 501 | docs |
ListConfigurationSets | ❌ Unsupported | stub; returns 501 | docs |
CreateReceiptRule | ❌ Unsupported | stub; returns 501 | docs |
CreateReceiptRuleSet | ❌ Unsupported | stub; returns 501 | docs |
DeleteReceiptRule | ❌ Unsupported | stub; returns 501 | docs |
DeleteReceiptRuleSet | ❌ Unsupported | stub; returns 501 | docs |
DescribeReceiptRule | ❌ Unsupported | stub; returns 501 | docs |
DescribeReceiptRuleSet | ❌ Unsupported | stub; returns 501 | docs |
ListReceiptRuleSets | ❌ Unsupported | stub; returns 501 | docs |
SES v2 — Sending
| Operation | Status | Notes | AWS Docs |
|---|---|---|---|
SendEmail | ✅ Supported | POST /v2/email/outbound-emails; simple content | docs |
SES v2 — Identities
| Operation | Status | Notes | AWS Docs |
|---|---|---|---|
CreateEmailIdentity | ✅ Supported | POST /v2/email/identities; auto-verified; inline Tags applied at creation | docs |
ListEmailIdentities | ✅ Supported | GET /v2/email/identities | docs |
GetEmailIdentity | ✅ Supported | GET /v2/email/identities/{EmailIdentity}; reports the identity’s Tags | docs |
DeleteEmailIdentity | ✅ Supported | DELETE /v2/email/identities/{EmailIdentity} | docs |
SES v2 — Tags
| Operation | Status | Notes | AWS Docs |
|---|---|---|---|
TagResource | ✅ Supported | POST /v2/email/tags; email identity ARNs — configuration sets are not emulated | docs |
UntagResource | ✅ Supported | DELETE /v2/email/tags?ResourceArn=…&TagKeys=… | docs |
ListTagsForResource | ✅ Supported | GET /v2/email/tags?ResourceArn=… | docs |
SES v2 — Other
| Operation | Status | Notes | AWS Docs |
|---|---|---|---|
All other v2 operations | ❌ Unsupported | Returns NotImplemented | docs |