Twilio · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Twilio - Messaging A2p API
9 actions
9 updates
phrasing
extends
openapi/twilio-a2p-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Twilio's API. It is a proposal applied on top of the contract, not a document Twilio publishes.
What the actions change
x-apievangelist-phrasing
Targets 9
$.info
$.paths['/v1/a2p/BrandRegistrations/{BrandRegistrationSid}/SmsOtp'].post
$.paths['/v1/a2p/BrandRegistrations/{Sid}'].get
$.paths['/v1/a2p/BrandRegistrations/{Sid}'].post
$.paths['/v1/a2p/BrandRegistrations'].get
$.paths['/v1/a2p/BrandRegistrations'].post
$.paths['/v1/a2p/BrandRegistrations/{BrandSid}/Vettings'].get
$.paths['/v1/a2p/BrandRegistrations/{BrandSid}/Vettings'].post
$.paths['/v1/a2p/BrandRegistrations/{BrandSid}/Vettings/{BrandVettingSid}'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Twilio - Messaging A2p API
version: 1.0.0
extends: openapi/twilio-a2p-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: 8
- target: $.paths['/v1/a2p/BrandRegistrations/{BrandRegistrationSid}/SmsOtp'].post
update:
x-apievangelist-phrasing:
intent: Resend the sole proprietor brand verification OTP
effect: write
questions:
- My sole proprietor brand never got its verification text, can I send the one-time code again?
- How do I trigger a new SMS OTP for a sole proprietor 10DLC brand?
instructions:
- text: Send a new SMS one-time passcode for sole proprietor brand {brand}.
slots:
brand: path.BrandRegistrationSid
- text: Resend the brand verification OTP for {brand}.
slots:
brand: path.BrandRegistrationSid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/a2p/BrandRegistrations/{Sid}'].get
update:
x-apievangelist-phrasing:
intent: Check an A2P brand registration
effect: read
questions:
- What is the approval status of my A2P 10DLC brand registration?
- Was one of my brand registrations rejected, and why?
instructions:
- text: Show brand registration {brand}.
slots:
brand: path.Sid
- text: Check whether brand {brand} has been approved yet.
slots:
brand: path.Sid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/a2p/BrandRegistrations/{Sid}'].post
update:
x-apievangelist-phrasing:
intent: Resubmit a brand registration
effect: write
questions:
- Can I push a failed brand registration back through review after fixing my profile?
- Is there a way to retry an existing A2P brand registration instead of creating a new one?
instructions:
- text: Resubmit brand registration {brand} for review.
slots:
brand: path.Sid
- text: Retry the existing brand registration {brand}.
slots:
brand: path.Sid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/a2p/BrandRegistrations'].get
update:
x-apievangelist-phrasing:
intent: List my A2P brand registrations
effect: read
questions:
- Which brands have I registered for A2P 10DLC messaging?
- What brand registrations are on my account and where does each stand?
instructions:
- text: List all my A2P brand registrations.
- text: Show my brand registrations, {page_size} at a time.
slots:
page_size: query.PageSize
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/a2p/BrandRegistrations'].post
update:
x-apievangelist-phrasing:
intent: Register a brand for A2P 10DLC
effect: write
questions:
- How do I register my business as a brand before sending 10DLC texts in the US?
- Can I register a low-volume sole proprietor brand instead of a standard one?
- Is there a mock brand option for testing registration without a real review?
instructions:
- text: Register a brand using customer profile {customer_profile} and A2P profile {a2p_profile}.
slots:
customer_profile: requestBody.CustomerProfileBundleSid
a2p_profile: requestBody.A2PProfileBundleSid
- text: Register a {brand_type} brand from customer profile {customer_profile} and A2P profile {a2p_profile}.
slots:
brand_type: requestBody.BrandType
customer_profile: requestBody.CustomerProfileBundleSid
a2p_profile: requestBody.A2PProfileBundleSid
- text: Create a mock brand registration with mock set to {mock} for profiles {customer_profile} and {a2p_profile}.
slots:
mock: requestBody.Mock
customer_profile: requestBody.CustomerProfileBundleSid
a2p_profile: requestBody.A2PProfileBundleSid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/a2p/BrandRegistrations/{BrandSid}/Vettings'].get
update:
x-apievangelist-phrasing:
intent: List secondary vettings for a brand
effect: read
questions:
- What third-party vettings have been run on my brand?
- Can I see only the vettings from one vetting provider for a brand?
instructions:
- text: List the vettings for brand {brand}.
slots:
brand: path.BrandSid
- text: Show brand {brand} vettings from provider {provider}.
slots:
brand: path.BrandSid
provider: query.VettingProvider
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/a2p/BrandRegistrations/{BrandSid}/Vettings'].post
update:
x-apievangelist-phrasing:
intent: Attach an external vetting to a brand
effect: write
questions:
- How do I add a secondary vetting score I already obtained to my brand?
- Can I import a vetting by its ID from the vetting provider?
instructions:
- text: Add a {provider} vetting to brand {brand}.
slots:
provider: requestBody.VettingProvider
brand: path.BrandSid
- text: Import vetting {vetting_id} from {provider} onto brand {brand}.
slots:
vetting_id: requestBody.VettingId
provider: requestBody.VettingProvider
brand: path.BrandSid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/a2p/BrandRegistrations/{BrandSid}/Vettings/{BrandVettingSid}'].get
update:
x-apievangelist-phrasing:
intent: View one brand vetting result
effect: read
questions:
- What score did a particular vetting give my brand?
- Where can I see the outcome of one specific vetting record?
instructions:
- text: Show vetting {vetting} for brand {brand}.
slots:
vetting: path.BrandVettingSid
brand: path.BrandSid
- text: Get the result of vetting record {vetting} on {brand}.
slots:
vetting: path.BrandVettingSid
brand: path.BrandSid
method: generated
generated: '2026-09-26'
Work with this as data
Every overlay here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/twilio-a2p-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.