# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Twilio SendGrid Domain Authentication API version: 1.0.0 extends: openapi/sendgrid-domain-authentication-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-24' generator: build-phrasing.py label: Generated by API Evangelist operations: 16 - target: $.paths['/v3/whitelabel/dns/email'].post update: x-apievangelist-phrasing: intent: Email domain DNS records to a co-worker effect: write questions: - Can I send the DNS records for domain authentication to a colleague who manages our DNS? - Is there a way to email someone the CNAME records they need to add for our sending domain and branded link? instructions: - text: Email the DNS records for domain {domain_id} and branded link {link_id} to {email}. slots: domain_id: requestBody.domain_id link_id: requestBody.link_id email: requestBody.email - text: Send {email} the DNS setup for domain {domain_id} and link {link_id} with the note {message}. slots: email: requestBody.email domain_id: requestBody.domain_id link_id: requestBody.link_id message: requestBody.message method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains'].get update: x-apievangelist-phrasing: intent: List all authenticated domains effect: read questions: - Which sending domains have I authenticated in SendGrid? - Can I page through my authenticated domains and leave out the ones belonging to subusers? instructions: - text: List all of my authenticated domains. - text: Show authenticated domains matching {domain}, {limit} per page. slots: domain: query.domain limit: query.limit - text: List the authenticated domains for subuser {username} only. slots: username: query.username method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains'].post update: x-apievangelist-phrasing: intent: Authenticate a new sending domain effect: write questions: - What do I need to start authenticating a new domain for sending email? - Can I authenticate a domain on behalf of one of my subusers with a custom DKIM selector? instructions: - text: Authenticate the domain {domain} for sending. slots: domain: requestBody.domain - text: Authenticate {domain} with subdomain {subdomain} and automated security turned on {automatic_security}. slots: domain: requestBody.domain subdomain: requestBody.subdomain automatic_security: requestBody.automatic_security - text: Set up domain authentication for {domain} on behalf of subuser {username}. slots: domain: requestBody.domain username: requestBody.username method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{domain_id}'].get update: x-apievangelist-phrasing: intent: Get one authenticated domain effect: read questions: - Where can I see the DNS records and validity of a single authenticated domain? - What settings does a particular authenticated domain have right now? instructions: - text: Show me authenticated domain {domain_id}. slots: domain_id: path.domain_id - text: Get the DNS records and status for authenticated domain {domain_id}. slots: domain_id: path.domain_id method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{domain_id}'].delete update: x-apievangelist-phrasing: intent: Delete an authenticated domain effect: destructive questions: - Can I remove a domain authentication I no longer send from? - What happens if I delete an authenticated domain from my account? instructions: - text: Delete authenticated domain {domain_id}. slots: domain_id: path.domain_id - text: Remove domain authentication {domain_id} from my account. slots: domain_id: path.domain_id method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{domain_id}'].patch update: x-apievangelist-phrasing: intent: Update an authenticated domain's settings effect: write questions: - Can I make an existing authenticated domain my default sending domain? - Is it possible to switch custom SPF on for a domain I already authenticated? instructions: - text: 'Make authenticated domain {domain_id} my default: {default}.' slots: domain_id: path.domain_id default: requestBody.default - text: Set custom SPF to {custom_spf} on authenticated domain {domain_id}. slots: custom_spf: requestBody.custom_spf domain_id: path.domain_id method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{domain_id}/subuser'].post update: x-apievangelist-phrasing: intent: Assign an authenticated domain to a subuser effect: write questions: - Can a subuser send mail using a domain the parent account authenticated? - What's needed to assign one of my authenticated domains to a single subuser? instructions: - text: Assign authenticated domain {domain_id} to subuser {username}. slots: domain_id: path.domain_id username: requestBody.username - text: Let subuser {username} send from parent domain {domain_id}. slots: username: requestBody.username domain_id: path.domain_id method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{domain_id}/subuser'].delete update: x-apievangelist-phrasing: intent: Unassign one of a subuser's multiple domains effect: destructive questions: - How do I take one authenticated domain away from a subuser that has several assigned? - Can I remove a single domain from a subuser who has up to five authenticated domains? instructions: - text: Remove authenticated domain {domain_id} from multi-domain subuser {username}. slots: domain_id: path.domain_id username: query.username - text: Unassign domain {domain_id} from subuser {username}, keeping their other domains. slots: domain_id: path.domain_id username: query.username method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{domain_id}/subuser:add'].post update: x-apievangelist-phrasing: intent: Add a domain to a subuser's up-to-five domains effect: write questions: - Can a subuser have more than one authenticated domain assigned at once? - What's the limit on authenticated domains I can add to a single subuser? instructions: - text: Add authenticated domain {domain_id} to subuser {username} alongside their existing domains. slots: domain_id: path.domain_id username: requestBody.username - text: Give subuser {username} an additional sending domain {domain_id}. slots: username: requestBody.username domain_id: path.domain_id method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{id}/ips'].post update: x-apievangelist-phrasing: intent: Add an IP address to an authenticated domain effect: write questions: - Can I attach a dedicated IP address to one of my authenticated domains? - Which call adds a sending IP to an existing domain authentication? instructions: - text: Add IP {ip} to authenticated domain {id}. slots: ip: requestBody.ip id: path.id - text: Attach sending IP {ip} to domain authentication {id}. slots: ip: requestBody.ip id: path.id method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{id}/ips/{ip}'].delete update: x-apievangelist-phrasing: intent: Remove an IP from an authenticated domain effect: destructive questions: - Can I detach an IP address from a domain authentication without deleting the domain? - How do I stop an IP from being part of an authenticated domain? instructions: - text: Remove IP {ip} from authenticated domain {id}. slots: ip: path.ip id: path.id - text: Detach IP address {ip} from domain authentication {id}. slots: ip: path.ip id: path.id method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/{id}/validate'].post update: x-apievangelist-phrasing: intent: Validate a domain authentication's DNS effect: write questions: - My DNS records are in place — can I check whether my authenticated domain now validates? - Why would a domain authentication fail validation, and can I see the error? instructions: - text: Validate authenticated domain {id}. slots: id: path.id - text: Check the DNS for domain authentication {id} and tell me why it fails if it does. slots: id: path.id method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/default'].get update: x-apievangelist-phrasing: intent: Get the default authenticated domain effect: read questions: - Which authenticated domain is used by default to send all my mail? - Is there a default domain authentication set for a specific domain name? instructions: - text: Show my default authenticated domain. - text: Get the default domain authentication for {domain}. slots: domain: query.domain method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/subuser'].get update: x-apievangelist-phrasing: intent: Get the authenticated domain assigned to a subuser effect: read questions: - What authenticated domain has been assigned to a particular subuser? - Which parent domain is a given subuser sending mail through? instructions: - text: Show the authenticated domain assigned to subuser {username}. slots: username: query.username - text: Find the domain authentication subuser {username} sends with. slots: username: query.username method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/subuser'].delete update: x-apievangelist-phrasing: intent: Unassign the authenticated domain from a subuser effect: destructive questions: - Can I stop a subuser from sending with the parent's authenticated domain? - What happens when I take the single assigned domain away from a subuser? instructions: - text: Remove the assigned authenticated domain from subuser {username}. slots: username: query.username - text: Stop subuser {username} from using the parent's authenticated domain. slots: username: query.username method: generated generated: '2026-09-24' - target: $.paths['/v3/whitelabel/domains/subuser/all'].get update: x-apievangelist-phrasing: intent: List all authenticated domains assigned to a subuser effect: read questions: - Can I see every authenticated domain, up to five, that a subuser has been given? - Which domains can a multi-domain subuser choose from when sending? instructions: - text: List all authenticated domains assigned to subuser {username}. slots: username: query.username - text: Show every sending domain subuser {username} has, including ones added in bulk. slots: username: query.username method: generated generated: '2026-09-24'