---
title: Subdomains
---

[Skip to content](#%5Ftop) 

[API Reference](https://developers.cloudflare.com/api/typescript)

[Email Sending](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending)

Copy Markdown

Open in **Claude**

Open in **ChatGPT**

Open in **Cursor**

---

**Copy Markdown**

**View as Markdown**

# Subdomains

##### [List sending subdomains](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending/subresources/subdomains/methods/list)

client.emailSending.subdomains.list(SubdomainListParams { zone\_id } params, RequestOptionsoptions?): SinglePage<[SubdomainListResponse](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending#%28resource%29%20email%5Fsending.subdomains%20%3E%20%28model%29%20subdomain%5Flist%5Fresponse%20%3E%20%28schema%29) { enabled, name, tag, 6 more } \>

GET/zones/{zone\_id}/email/sending/subdomains

##### [Get a sending subdomain](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending/subresources/subdomains/methods/get)

client.emailSending.subdomains.get(stringsubdomainID, SubdomainGetParams { zone\_id } params, RequestOptionsoptions?): [SubdomainGetResponse](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending#%28resource%29%20email%5Fsending.subdomains%20%3E%20%28model%29%20subdomain%5Fget%5Fresponse%20%3E%20%28schema%29) { enabled, name, tag, 6 more } 

GET/zones/{zone\_id}/email/sending/subdomains/{subdomain\_id}

##### [Create a sending subdomain](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending/subresources/subdomains/methods/create)

client.emailSending.subdomains.create(SubdomainCreateParams { zone\_id, name } params, RequestOptionsoptions?): [SubdomainCreateResponse](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending#%28resource%29%20email%5Fsending.subdomains%20%3E%20%28model%29%20subdomain%5Fcreate%5Fresponse%20%3E%20%28schema%29) { enabled, name, tag, 6 more } 

POST/zones/{zone\_id}/email/sending/subdomains

##### [Update a sending subdomain](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending/subresources/subdomains/methods/edit)

client.emailSending.subdomains.edit(stringsubdomainID, SubdomainEditParams { zone\_id, drop\_suppressed\_recipients, preview\_enabled } params, RequestOptionsoptions?): [SubdomainEditResponse](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending#%28resource%29%20email%5Fsending.subdomains%20%3E%20%28model%29%20subdomain%5Fedit%5Fresponse%20%3E%20%28schema%29) { enabled, name, tag, 6 more } 

PATCH/zones/{zone\_id}/email/sending/subdomains/{subdomain\_id}

##### [Delete a sending subdomain](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending/subresources/subdomains/methods/delete)

client.emailSending.subdomains.delete(stringsubdomainID, SubdomainDeleteParams { zone\_id } params, RequestOptionsoptions?): [SubdomainDeleteResponse](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending#%28resource%29%20email%5Fsending.subdomains%20%3E%20%28model%29%20subdomain%5Fdelete%5Fresponse%20%3E%20%28schema%29) { errors, messages, success } 

DELETE/zones/{zone\_id}/email/sending/subdomains/{subdomain\_id}

##### ModelsExpand Collapse 

SubdomainListResponse { enabled, name, tag, 6 more } 

enabled: boolean

Whether Email Sending is enabled on this subdomain.

name: string

The exact domain name or a leftmost wildcard such as `*.example.com`.

tag: string

Sending subdomain identifier.

maxLength32

created?: string

The date and time the destination address has been created.

formatdate-time

dkim\_selector?: string

The DKIM selector used for email signing. Wildcard rows publish the selector and sign with `d=<base>`.

drop\_suppressed\_recipients?: boolean

Whether a send request that includes a recipient suppressed on this subdomain drops that recipient and still delivers to the rest, instead of failing the entire request.

modified?: string

The date and time the destination address was last modified.

formatdate-time

preview\_enabled?: boolean

Whether sent messages from this subdomain can be previewed in the activity log.

return\_path\_domain?: string

The return-path domain used for bounce handling. Wildcard rows use `cf-bounce.<base>`.

SubdomainGetResponse { enabled, name, tag, 6 more } 

enabled: boolean

Whether Email Sending is enabled on this subdomain.

name: string

The exact domain name or a leftmost wildcard such as `*.example.com`.

tag: string

Sending subdomain identifier.

maxLength32

created?: string

The date and time the destination address has been created.

formatdate-time

dkim\_selector?: string

The DKIM selector used for email signing. Wildcard rows publish the selector and sign with `d=<base>`.

drop\_suppressed\_recipients?: boolean

Whether a send request that includes a recipient suppressed on this subdomain drops that recipient and still delivers to the rest, instead of failing the entire request.

modified?: string

The date and time the destination address was last modified.

formatdate-time

preview\_enabled?: boolean

Whether sent messages from this subdomain can be previewed in the activity log.

return\_path\_domain?: string

The return-path domain used for bounce handling. Wildcard rows use `cf-bounce.<base>`.

SubdomainCreateResponse { enabled, name, tag, 6 more } 

enabled: boolean

Whether Email Sending is enabled on this subdomain.

name: string

The exact domain name or a leftmost wildcard such as `*.example.com`.

tag: string

Sending subdomain identifier.

maxLength32

created?: string

The date and time the destination address has been created.

formatdate-time

dkim\_selector?: string

The DKIM selector used for email signing. Wildcard rows publish the selector and sign with `d=<base>`.

drop\_suppressed\_recipients?: boolean

Whether a send request that includes a recipient suppressed on this subdomain drops that recipient and still delivers to the rest, instead of failing the entire request.

modified?: string

The date and time the destination address was last modified.

formatdate-time

preview\_enabled?: boolean

Whether sent messages from this subdomain can be previewed in the activity log.

return\_path\_domain?: string

The return-path domain used for bounce handling. Wildcard rows use `cf-bounce.<base>`.

SubdomainEditResponse { enabled, name, tag, 6 more } 

enabled: boolean

Whether Email Sending is enabled on this subdomain.

name: string

The exact domain name or a leftmost wildcard such as `*.example.com`.

tag: string

Sending subdomain identifier.

maxLength32

created?: string

The date and time the destination address has been created.

formatdate-time

dkim\_selector?: string

The DKIM selector used for email signing. Wildcard rows publish the selector and sign with `d=<base>`.

drop\_suppressed\_recipients?: boolean

Whether a send request that includes a recipient suppressed on this subdomain drops that recipient and still delivers to the rest, instead of failing the entire request.

modified?: string

The date and time the destination address was last modified.

formatdate-time

preview\_enabled?: boolean

Whether sent messages from this subdomain can be previewed in the activity log.

return\_path\_domain?: string

The return-path domain used for bounce handling. Wildcard rows use `cf-bounce.<base>`.

SubdomainDeleteResponse { errors, messages, success } 

errors: Array<Error\>

code: number

minimum1000

message: string

documentation\_url?: string

source?: Source { pointer } 

pointer?: string

messages: Array<Message\>

code: number

minimum1000

message: string

documentation\_url?: string

source?: Source { pointer } 

pointer?: string

success: true

Whether the API call was successful.

#### SubdomainsDNS

##### [Get sending subdomain DNS records](https://developers.cloudflare.com/api/typescript/resources/email%5Fsending/subresources/subdomains/subresources/dns/methods/get)

client.emailSending.subdomains.dns.get(stringsubdomainID, DNSGetParams { zone\_id } params, RequestOptionsoptions?): SinglePage<[DNSRecord](https://developers.cloudflare.com/api/typescript/resources/email%5Frouting#%28resource%29%20email%5Frouting.dns%20%3E%20%28model%29%20dns%5Frecord%20%3E%20%28schema%29) { content, name, priority, 2 more } \>

GET/zones/{zone\_id}/email/sending/subdomains/{subdomain\_id}/dns