List status — GET /v1/email/ses/status

Reports the org's Amazon SES configuration: whether it holds the credentials a send needs, the account's limits as SES answers them (sandbox, sending enabled, 24-hour quota, rate, sent in the last 24 hours), what the org's ledger counted sent by SES in the last 24 hours, and the DNS records of the sending domain.

GET /v1/email/ses/status

Addresshttps://api.hanzo.ai/v1/email/ses/status
MethodGET
Operationget_email_ses_status
AuthAuthorization: Bearer $HANZO_API_KEY

Reports the org's Amazon SES configuration: whether it holds the credentials a send needs, the account's limits as SES answers them (sandbox, sending enabled, 24-hour quota, rate, sent in the last 24 hours), what the org's ledger counted sent by SES in the last 24 hours, and the DNS records of the sending domain.

GET /v1/email/ses/status

Request

1 field.

FieldInTypeRequiredDescription
domainquerystring—Domain optionally specifies the sending domain to generate Easy DKIM and MAIL FROM records for.

Response

StatusBodyMeaning
200email.SESStatusResultok
defaultproblem-detailsrefused

200 body — 23 fields.

FieldInTypeAlwaysDescription
active_providerbodystring—ActiveProvider is the provider the org's mail leaves by when a request pins none.
configuration_setbodystring—ConfigurationSet is the SES configuration set messages go out under, whose event destination publishes their events (hanzo-crm-events unless the credential names another).
configuredbodyboolean—Configured reports whether the org holds the SES credentials a send needs (access-key-id, secret-access-key, from-email).
dns_recordsbodyemail.SESDNSRecord[]—DNSRecords lists the Easy DKIM, SPF, MX, and DMARC records for the sending domain.
dns_records[].hostbodystring—Host is the DNS record host or subdomain name.
dns_records[].prioritybodyinteger (int64)—Priority is the MX priority when Type is MX.
dns_records[].purposebodystring—Purpose describes the role of the DNS record (e.g. DKIM, MAIL FROM MX, MAIL FROM SPF, DMARC).
dns_records[].typebodystring—Type is the DNS record type (CNAME, MX, TXT).
dns_records[].valuebodystring—Value is the DNS record target or text value.
dns_records[].verifiedbodyboolean—Verified reports whether the DNS record is verified for the sending identity.
domainbodystring—Domain is the sending domain inspected.
from_emailbodystring—FromEmail is the default verified sender address.
from_namebodystring—FromName is the default sender display name.
mail_from_domainbodystring—MailFromDomain is the custom MAIL FROM subdomain (bounce.<domain>).
max_24_hour_sendbodynumber (double)—Max24HourSend is the account's 24-hour sending quota, as SES answers it.
max_send_ratebodynumber (double)—MaxSendRate is the account's most messages a second, as SES answers it.
orgbodystring—Org is the organization identifier.
provider_sent_last_24_hoursbodynumber (double)—ProviderSentLast24Hours is what SES counts sent by the account in the last 24 hours, from anywhere.
quota_errorbodystring—QuotaError says why the account's limits could not be read; the limits are then 0.
regionbodystring—Region is the configured Amazon SES AWS region (defaults to us-east-1).
sandboxbodyboolean—Sandbox is whether SES says the account is still in its sandbox.
sending_enabledbodyboolean—SendingEnabled is whether SES says the account may send.
sent_last_24_hoursbodyinteger (int64)—SentLast24Hours is what the org's ledger counts sent by SES in the last 24 hours: through POST /v1/email, and every message SES's events told of.

Failure carries the platform error shape — see Errors.

Examples

hanzo email ses status
import { Configuration, EmailApi } from 'hanzoai';

const api = new EmailApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.getEmailSesStatus();
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import EmailApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = EmailApi(client).get_email_ses_status()
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.EmailAPI.GetEmailSesStatus(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, email_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = email_api::get_email_ses_status(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.EmailApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new EmailApi(client).getEmailSesStatus();
curl https://api.hanzo.ai/v1/email/ses/status \
  -H "Authorization: Bearer $HANZO_API_KEY"

Tool email, op get_email_ses_status — POST the JSON-RPC envelope to https://api.hanzo.ai/v1/mcp.

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "email",
         "arguments": {
           "op": "get_email_ses_status",
           "input": {}
         }
       }
     }'

Email API · All Hanzo APIs · Interactive reference

Was this page useful?
Broken link or missing step? Drop it in #docs on Discord or open a PR.