# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Twilio Trunks API version: 1.0.0 extends: openapi/twilio-trunks-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 26 - target: $.paths['/v2/Trunks/{SipTrunkDomain}'].get update: x-apievangelist-phrasing: intent: See which inbound processing region a SIP trunk uses effect: read questions: - Which inbound processing region is my SIP trunk domain assigned to? - Can I check where voice traffic for a trunk domain URL gets processed? instructions: - text: Show the inbound processing region for SIP trunk domain {trunk_domain}. slots: trunk_domain: path.SipTrunkDomain - text: Look up the voice region currently assigned to trunk domain {trunk_domain}. slots: trunk_domain: path.SipTrunkDomain method: generated generated: '2026-09-26' - target: $.paths['/v2/Trunks/{SipTrunkDomain}'].post update: x-apievangelist-phrasing: intent: Assign an inbound processing region to a SIP trunk effect: write questions: - How do I move a SIP trunk domain's inbound voice processing to a different region? - Is it possible to pin inbound calls on a trunk domain URL to one processing region? instructions: - text: Assign inbound processing region {voice_region} to SIP trunk domain {trunk_domain}. slots: voice_region: requestBody.VoiceRegion trunk_domain: path.SipTrunkDomain - text: Set the voice region of trunk domain {trunk_domain} to {voice_region} and label it {name}. slots: trunk_domain: path.SipTrunkDomain voice_region: requestBody.VoiceRegion name: requestBody.FriendlyName method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/CredentialLists/{Sid}'].get update: x-apievangelist-phrasing: intent: Get one credential list attached to a trunk effect: read questions: - Can I see the details of a specific credential list attached to my SIP trunk? - Is a given credential list actually associated with this trunk? instructions: - text: Get credential list {credential_list} on trunk {trunk}. slots: credential_list: path.Sid trunk: path.TrunkSid - text: Show the association between trunk {trunk} and credential list {credential_list}. slots: trunk: path.TrunkSid credential_list: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/CredentialLists/{Sid}'].delete update: x-apievangelist-phrasing: intent: Detach a credential list from a trunk effect: destructive questions: - How do I stop a credential list from authenticating calls on my SIP trunk? - Can I remove a username/password credential list from a trunk without deleting the list itself? instructions: - text: Remove credential list {credential_list} from trunk {trunk}. slots: credential_list: path.Sid trunk: path.TrunkSid - text: Detach credential list {credential_list} so trunk {trunk} no longer uses it for authentication. slots: credential_list: path.Sid trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/CredentialLists'].get update: x-apievangelist-phrasing: intent: List the credential lists on a trunk effect: read questions: - Which credential lists are protecting my SIP trunk right now? - What username/password lists does a trunk accept for authentication? instructions: - text: List every credential list attached to trunk {trunk}. slots: trunk: path.TrunkSid - text: Show the credential lists on trunk {trunk}, {page_size} per page. slots: trunk: path.TrunkSid page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/CredentialLists'].post update: x-apievangelist-phrasing: intent: Attach a credential list to a trunk effect: write questions: - How do I require SIP credentials for calls coming into my trunk? - Can I reuse an existing credential list to authenticate a new trunk? instructions: - text: Attach credential list {credential_list} to trunk {trunk}. slots: credential_list: requestBody.CredentialListSid trunk: path.TrunkSid - text: Protect trunk {trunk} with the usernames and passwords in credential list {credential_list}. slots: trunk: path.TrunkSid credential_list: requestBody.CredentialListSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/IpAccessControlLists/{Sid}'].get update: x-apievangelist-phrasing: intent: Get one IP access control list on a trunk effect: read questions: - Can I look up a single IP access control list associated with my trunk? - Is a particular IP allowlist attached to this SIP trunk? instructions: - text: Get IP access control list {ip_acl} on trunk {trunk}. slots: ip_acl: path.Sid trunk: path.TrunkSid - text: Show the details of IP allowlist {ip_acl} as associated with trunk {trunk}. slots: ip_acl: path.Sid trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/IpAccessControlLists/{Sid}'].delete update: x-apievangelist-phrasing: intent: Remove an IP access control list from a trunk effect: destructive questions: - How do I stop an IP allowlist from applying to my SIP trunk? - Can I disassociate an IP access control list from one trunk only? instructions: - text: Remove IP access control list {ip_acl} from trunk {trunk}. slots: ip_acl: path.Sid trunk: path.TrunkSid - text: Disassociate IP allowlist {ip_acl} from trunk {trunk}. slots: ip_acl: path.Sid trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/IpAccessControlLists'].get update: x-apievangelist-phrasing: intent: List the IP access control lists on a trunk effect: read questions: - Which IP addresses are allowed to send traffic to my SIP trunk? - What IP access control lists are associated with a trunk? instructions: - text: List all IP access control lists for trunk {trunk}. slots: trunk: path.TrunkSid - text: Show the IP allowlists on trunk {trunk}, {page_size} at a time. slots: trunk: path.TrunkSid page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/IpAccessControlLists'].post update: x-apievangelist-phrasing: intent: Associate an IP access control list with a trunk effect: write questions: - How do I restrict my SIP trunk to traffic from known IP addresses? - Can I apply an existing IP allowlist to a trunk? instructions: - text: Associate IP access control list {ip_acl} with trunk {trunk}. slots: ip_acl: requestBody.IpAccessControlListSid trunk: path.TrunkSid - text: Only accept SIP traffic on trunk {trunk} from the addresses in IP allowlist {ip_acl}. slots: trunk: path.TrunkSid ip_acl: requestBody.IpAccessControlListSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/OriginationUrls/{Sid}'].get update: x-apievangelist-phrasing: intent: Get one origination URL on a trunk effect: read questions: - What SIP address, priority and weight does a given origination URL on my trunk have? - Can I check whether a specific origination URL is enabled? instructions: - text: Get origination URL {origination_url} on trunk {trunk}. slots: origination_url: path.Sid trunk: path.TrunkSid - text: Show the SIP URL, priority and weight for origination entry {origination_url} of trunk {trunk}. slots: origination_url: path.Sid trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/OriginationUrls/{Sid}'].post update: x-apievangelist-phrasing: intent: Change an origination URL on a trunk effect: write questions: - How do I change the priority or weight of an existing origination URL? - Can I temporarily disable one origination URL without deleting it? - Is it possible to point an existing origination entry at a new SIP URL? instructions: - text: Set the priority of origination URL {origination_url} on trunk {trunk} to {priority}. slots: origination_url: path.Sid trunk: path.TrunkSid priority: requestBody.Priority - text: Disable origination URL {origination_url} on trunk {trunk} by setting enabled to {enabled}. slots: origination_url: path.Sid trunk: path.TrunkSid enabled: requestBody.Enabled - text: Point existing origination URL {origination_url} of trunk {trunk} at {sip_url}. slots: origination_url: path.Sid trunk: path.TrunkSid sip_url: requestBody.SipUrl method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/OriginationUrls/{Sid}'].delete update: x-apievangelist-phrasing: intent: Delete an origination URL from a trunk effect: destructive questions: - How do I stop sending calls from my trunk to an old SIP endpoint? - Can I permanently delete one origination URL from a trunk? instructions: - text: Delete origination URL {origination_url} from trunk {trunk}. slots: origination_url: path.Sid trunk: path.TrunkSid - text: Remove the origination entry {origination_url} so trunk {trunk} stops routing calls to it. slots: origination_url: path.Sid trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/OriginationUrls'].get update: x-apievangelist-phrasing: intent: List the origination URLs on a trunk effect: read questions: - Where does my SIP trunk send outbound-to-PBX calls? - Which origination URLs are configured on a trunk and in what priority order? instructions: - text: List the origination URLs on trunk {trunk}. slots: trunk: path.TrunkSid - text: Show every SIP endpoint trunk {trunk} routes calls to, {page_size} per page. slots: trunk: path.TrunkSid page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/OriginationUrls'].post update: x-apievangelist-phrasing: intent: Add an origination URL to a trunk effect: write questions: - How do I tell my trunk where to deliver calls to my SIP infrastructure? - Can I add a backup SIP endpoint with a lower priority to a trunk? instructions: - text: Add origination URL {sip_url} named {name} to trunk {trunk} with priority {priority}, weight {weight}, enabled {enabled}. slots: sip_url: requestBody.SipUrl name: requestBody.FriendlyName trunk: path.TrunkSid priority: requestBody.Priority weight: requestBody.Weight enabled: requestBody.Enabled - text: Create a new origination entry on trunk {trunk} that sends calls to {sip_url}. slots: trunk: path.TrunkSid sip_url: requestBody.SipUrl method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/PhoneNumbers/{Sid}'].get update: x-apievangelist-phrasing: intent: Get one phone number associated with a trunk effect: read questions: - Can I confirm a specific phone number is routed through my SIP trunk? - What are the details of a number attached to a trunk? instructions: - text: Get phone number {phone_number} on trunk {trunk}. slots: phone_number: path.Sid trunk: path.TrunkSid - text: Show how number {phone_number} is associated with trunk {trunk}. slots: phone_number: path.Sid trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/PhoneNumbers/{Sid}'].delete update: x-apievangelist-phrasing: intent: Remove a phone number from a trunk effect: destructive questions: - How do I take a phone number off my SIP trunk? - Can I disassociate a number from a trunk so it stops routing there? instructions: - text: Remove phone number {phone_number} from trunk {trunk}. slots: phone_number: path.Sid trunk: path.TrunkSid - text: Stop routing number {phone_number} through trunk {trunk}. slots: phone_number: path.Sid trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/PhoneNumbers'].get update: x-apievangelist-phrasing: intent: List the phone numbers on a trunk effect: read questions: - Which phone numbers are routed through my SIP trunk? - What numbers are currently attached to a trunk? instructions: - text: List the phone numbers on trunk {trunk}. slots: trunk: path.TrunkSid - text: Show all numbers associated with trunk {trunk}, {page_size} per page. slots: trunk: path.TrunkSid page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/PhoneNumbers'].post update: x-apievangelist-phrasing: intent: Associate a phone number with a trunk effect: write questions: - How do I route calls for one of my phone numbers through a SIP trunk? - Can I move a number I own onto a trunk? instructions: - text: Associate phone number {phone_number_sid} with trunk {trunk}. slots: phone_number_sid: requestBody.PhoneNumberSid trunk: path.TrunkSid - text: Route incoming calls for number {phone_number_sid} through trunk {trunk}. slots: phone_number_sid: requestBody.PhoneNumberSid trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/Recording'].get update: x-apievangelist-phrasing: intent: See a trunk's call recording settings effect: read questions: - Is call recording turned on for my SIP trunk? - What recording mode and trim setting does a trunk use? instructions: - text: Show the recording settings for trunk {trunk}. slots: trunk: path.TrunkSid - text: Check whether calls on trunk {trunk} are being recorded. slots: trunk: path.TrunkSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{TrunkSid}/Recording'].post update: x-apievangelist-phrasing: intent: Change a trunk's call recording settings effect: write questions: - How do I turn on call recording for everything going through a trunk? - Can I have trunk recordings trimmed of silence? instructions: - text: Set the recording mode of trunk {trunk} to {mode}. slots: trunk: path.TrunkSid mode: requestBody.Mode - text: Change the recording trim setting on trunk {trunk} to {trim}. slots: trunk: path.TrunkSid trim: requestBody.Trim method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{Sid}'].get update: x-apievangelist-phrasing: intent: Get a SIP trunk's configuration effect: read questions: - What domain name, disaster recovery URL and security settings does my SIP trunk have? - Is secure trunking or CNAM lookup enabled on a given trunk? instructions: - text: Get SIP trunk {trunk}. slots: trunk: path.Sid - text: Show the full configuration of trunk {trunk}. slots: trunk: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{Sid}'].post update: x-apievangelist-phrasing: intent: Update a SIP trunk's settings effect: write questions: - How do I turn on Secure Trunking (TLS and SRTP) for an existing trunk? - Can I change the disaster recovery URL on a trunk I already set up? - Is it possible to enable caller name (CNAM) lookup on an existing trunk? instructions: - text: Enable secure trunking on trunk {trunk} by setting secure to {secure}. slots: trunk: path.Sid secure: requestBody.Secure - text: Change the disaster recovery URL of existing trunk {trunk} to {recovery_url}. slots: trunk: path.Sid recovery_url: requestBody.DisasterRecoveryUrl - text: Rename trunk {trunk} to {name} and set its domain to {domain}. slots: trunk: path.Sid name: requestBody.FriendlyName domain: requestBody.DomainName method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks/{Sid}'].delete update: x-apievangelist-phrasing: intent: Delete a SIP trunk effect: destructive questions: - How do I permanently get rid of a SIP trunk I no longer use? - Can I delete a whole trunk rather than just its phone numbers? instructions: - text: Delete SIP trunk {trunk}. slots: trunk: path.Sid - text: Tear down trunk {trunk} entirely. slots: trunk: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks'].get update: x-apievangelist-phrasing: intent: List my SIP trunks effect: read questions: - Which SIP trunks exist on my account? - What Elastic SIP Trunks have I created so far? instructions: - text: List all my SIP trunks. - text: Show my trunks, {page_size} per page. slots: page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v1/Trunks'].post update: x-apievangelist-phrasing: intent: Create a new SIP trunk effect: write questions: - How do I set up a new Elastic SIP Trunk? - Can I reserve a termination domain name when I create a trunk? instructions: - text: Create a new SIP trunk called {name}. slots: name: requestBody.FriendlyName - text: Create a trunk named {name} with termination domain {domain} and disaster recovery URL {recovery_url}. slots: name: requestBody.FriendlyName domain: requestBody.DomainName recovery_url: requestBody.DisasterRecoveryUrl method: generated generated: '2026-09-26'