Menu
Platform
AI
App store purchases
Database
Flags
Jobs and cron
Localization
Monitoring
Notifications
Payments
Queues
Sandboxes
Webhooks
Getting Started
Authentication
KV Store
Deploy & Infrastructure
Reference
Update a mail domain
Updates an email domain.
Updates an email domain.
- Path
PATCH https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/mail_domains/mail-domain - Scope
notify:write - Effect
write— a successful call changes state. - Collection mail_domains
- Query
update_mask,allow_missing,validate_only
#Request
| Field | Type | What it is |
|---|---|---|
email_domain | EmailDomain | The email domain to update; name identifies it. Required. |
update_mask | field_mask | The fields to write; unset writes every populated field. |
allow_missing | bool | Create the email domain when it does not exist (declarative upsert). |
validate_only | bool | Validate and return the result without writing anything. |
#EmailDomain
| Field | Type | What it is |
|---|---|---|
name | string | orgs/{org}/projects/{project}/envs/{env}/mail_domains/{mail_domain}. |
meta | ResourceMeta | Resource metadata. |
spec | EmailDomainSpec | Desired state. Required. |
#ResourceMeta
| Field | Type | What it is |
|---|---|---|
labels | map<string, string> | Caller-writable, indexed labels (AIP-122 label rules). |
annotations | map<string, string> | Caller-writable, unindexed annotations. |
display_name | string | Caller-writable human-readable name. |
#EmailDomainSpec
| Field | Type | What it is |
|---|---|---|
domain | string | The domain, for example mail.example.com. Required. |
return_path_label | string | The return-path (bounce) subdomain label; default bounces. |
sending | EmailDomainSending | Sending; the DKIM key and SPF include. Unset sends, as before. |
receiving | EmailDomainReceiving | Receiving; the platform accepts mail for the domain. |
#EmailDomainSending
| Field | Type | What it is |
|---|---|---|
enabled | bool | Send from the domain. Default true. |
#EmailDomainReceiving
| Field | Type | What it is |
|---|---|---|
enabled | bool | Receive mail for the domain; needs every MX record at the platform. |
mode | EmailDomainReceivingMode | How the domain's mail reaches the platform; ALL when unset. One of all. |
#Response
| Field | Type | What it is |
|---|---|---|
name | string | orgs/{org}/projects/{project}/envs/{env}/mail_domains/{mail_domain}. |
uid | string | edm_<cell><ulid>; never reused. Output only. |
meta | ResourceMeta | Resource metadata. |
spec | EmailDomainSpec | Desired state. Required. |
status | EmailDomainStatus | Observed state. Output only. |
#ResourceMeta
| Field | Type | What it is |
|---|---|---|
generation | int64 | Increases by one on every change to spec. Output only. |
etag | string | Strong ETag (AIP-154): changes on any change to spec, status, or metadata. Send it back as If-Match or etag to make Update and Delete conditional; a mismatch fails with ABORTED / 409 ETAG_MISMATCH. Output only. |
create_time | timestamp | When the Resource was created. Output only. |
update_time | timestamp | When the Resource last changed. Output only. |
delete_time | timestamp | Set while the Resource is being deleted. Output only. |
labels | map<string, string> | Caller-writable, indexed labels (AIP-122 label rules). |
annotations | map<string, string> | Caller-writable, unindexed annotations. |
display_name | string | Caller-writable human-readable name. |
creator | string | The principal that created the Resource. Output only. |
#EmailDomainSpec
| Field | Type | What it is |
|---|---|---|
domain | string | The domain, for example mail.example.com. Required. |
return_path_label | string | The return-path (bounce) subdomain label; default bounces. |
sending | EmailDomainSending | Sending; the DKIM key and SPF include. Unset sends, as before. |
receiving | EmailDomainReceiving | Receiving; the platform accepts mail for the domain. |
#EmailDomainStatus
| Field | Type | What it is |
|---|---|---|
observed_generation | int64 | The generation this status was computed from. Output only. |
conditions | Condition[] | Ready, Reconciling, Stalled. Output only. |
verified | bool | Whether every required record verified; only a verified domain sends. Output only. |
verify_time | timestamp | When the records last verified. Output only. |
dns_records | DnsRecord[] | The records to publish: DKIM, SPF, return path, DMARC. Output only. |
dkim_selector | string | The DKIM selector in use. Output only. |
receiving_state | EmailDomainReceivingState | Whether the platform receives mail for the domain. Output only. One of disabled, pending, verified, degraded. |
receiving_verify_time | timestamp | When the MX records last verified. Output only. |
#EmailDomainSending
| Field | Type | What it is |
|---|---|---|
enabled | bool | Send from the domain. Default true. |
#EmailDomainReceiving
| Field | Type | What it is |
|---|---|---|
enabled | bool | Receive mail for the domain; needs every MX record at the platform. |
mode | EmailDomainReceivingMode | How the domain's mail reaches the platform; ALL when unset. One of all. |
#Condition
| Field | Type | What it is |
|---|---|---|
type | string | The condition type, for example Ready. |
status | ConditionStatus | Whether the condition holds. One of true, false, unknown. |
observed_generation | int64 | The generation this observation was made against. |
reason | string | A machine-readable UpperCamelCase reason. |
message | string | A customer-safe human-readable message. |
severity | Severity | How severe a FALSE condition is. One of info, warning, error. |
transition_time | timestamp | When status last changed. |
#DnsRecord
| Field | Type | What it is |
|---|---|---|
record_type | string | The record type: TXT, CNAME, or MX. Output only. |
host | string | The fully qualified host. Output only. |
value | string | The value to publish. Output only. |
verified | bool | Whether the published value matches. Output only. |
priority | int32 | The MX preference; zero for other record types. Output only. |
#Errors
UNAUTHENTICATED— No valid key or token was presented.PERMISSION_DENIED— The key lacks the method's permission.RESOURCE_NOT_FOUND— The named Resource does not exist or is not visible.UNKNOWN_FIELD— The request has a field the schema does not know.INVALID_FIELD— A field failed validation.ETAG_MISMATCH— The etag sent does not match the Resource's current etag.IDEMPOTENCY_KEY_REUSED— An Idempotency-Key was reused with another body.IDEMPOTENCY_IN_PROGRESS— The first call with this Idempotency-Key is still running.
Every error arrives in the body Errors describes.
#Examples
curl -X PATCH "https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/mail_domains/mail-domain" \
-H "Authorization: Bearer $SYLPHX_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"orgs/acme/projects/shop/envs/production/mail_domains/mail-domain","spec":{"domain":"…"}}'