# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Twilio Credentials API version: 1.0.0 extends: openapi/twilio-credentials-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: 24 - target: $.paths['/v1/Credentials/AWS'].get update: x-apievangelist-phrasing: intent: List the AWS credentials stored on my account effect: read questions: - Which AWS credentials have I stored in my Twilio account? - Can I page through saved AWS access keys up to 1000 per page? instructions: - text: List the AWS credentials on my account from the v1 endpoint. - text: Page through my stored AWS credentials {page_size} at a time. slots: page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/AWS'].post update: x-apievangelist-phrasing: intent: Store a new AWS access key credential effect: write questions: - What format does an AWS access key and secret need when I save it as a credential? - Can I save an AWS key pair for a specific subaccount instead of the main account? instructions: - text: Save AWS credential {credentials} under the name {friendly_name} using the v1 endpoint. slots: credentials: requestBody.Credentials friendly_name: requestBody.FriendlyName - text: Create a v1 AWS credential from {credentials} for subaccount {account_sid}. slots: credentials: requestBody.Credentials account_sid: requestBody.AccountSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/AWS/{Sid}'].get update: x-apievangelist-phrasing: intent: Look up one stored AWS credential effect: read questions: - Can I look up a single AWS credential by its SID? - What does one saved AWS credential record show me? instructions: - text: Show me AWS credential {sid}. slots: sid: path.Sid - text: Fetch the stored details of AWS credential {sid}. slots: sid: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/AWS/{Sid}'].post update: x-apievangelist-phrasing: intent: Rename a stored AWS credential effect: write questions: - Can I rename an AWS credential after I've saved it? - Is the friendly name the only thing I can change on an existing AWS credential? instructions: - text: Rename AWS credential {sid} to {friendly_name}. slots: sid: path.Sid friendly_name: requestBody.FriendlyName - text: Change the label on my saved AWS keys {sid} to {friendly_name}. slots: sid: path.Sid friendly_name: requestBody.FriendlyName method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/AWS/{Sid}'].delete update: x-apievangelist-phrasing: intent: Delete a stored AWS credential effect: destructive questions: - Can I permanently remove an AWS credential I no longer use? - How do I get rid of old AWS access keys saved on my account? instructions: - text: Delete AWS credential {sid}. slots: sid: path.Sid - text: Remove the saved AWS keys {sid} from my account. slots: sid: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/PublicKeys'].get update: x-apievangelist-phrasing: intent: List the public key credentials on my account effect: read questions: - Which public keys have I registered as credentials on my account? - Can I page through my public key credentials in larger batches? instructions: - text: List the public key credentials on my account from the v1 endpoint. - text: Page through my registered public keys {page_size} at a time. slots: page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/PublicKeys'].post update: x-apievangelist-phrasing: intent: Register a new public key credential effect: write questions: - Can I upload a PEM public key to my account as a credential? - Does a public key credential need to be URL encoded when I register it? instructions: - text: Register public key {public_key} as {friendly_name} using the v1 endpoint. slots: public_key: requestBody.PublicKey friendly_name: requestBody.FriendlyName - text: Add a v1 public key credential {public_key} for subaccount {account_sid}. slots: public_key: requestBody.PublicKey account_sid: requestBody.AccountSid method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/PublicKeys/{Sid}'].get update: x-apievangelist-phrasing: intent: Look up one public key credential effect: read questions: - Can I retrieve a single public key credential by its SID? - What details come back for one registered public key? instructions: - text: Show me public key credential {sid}. slots: sid: path.Sid - text: Fetch the registered public key {sid}. slots: sid: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/PublicKeys/{Sid}'].post update: x-apievangelist-phrasing: intent: Rename a public key credential effect: write questions: - Can I rename a public key credential without re-uploading the key? - Is the friendly name the only editable field on a registered public key? instructions: - text: Rename public key credential {sid} to {friendly_name}. slots: sid: path.Sid friendly_name: requestBody.FriendlyName - text: Relabel my registered public key {sid} as {friendly_name}. slots: sid: path.Sid friendly_name: requestBody.FriendlyName method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/PublicKeys/{Sid}'].delete update: x-apievangelist-phrasing: intent: Delete a public key credential effect: destructive questions: - Can I revoke a public key I registered by deleting its credential? - How do I remove a public key credential from my account? instructions: - text: Delete public key credential {sid}. slots: sid: path.Sid - text: Remove the registered public key {sid} from my account. slots: sid: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials'].get update: x-apievangelist-phrasing: intent: List push credentials on the v1 endpoint effect: read questions: - Which push notification credentials are on my account under the v1 API? - Can I list every v1 push credential in one call? instructions: - text: List my push notification credentials from the v1 endpoint. - text: Page through v1 push credentials {page_size} at a time. slots: page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials'].post update: x-apievangelist-phrasing: intent: Add a push credential on the v1 endpoint effect: write questions: - How do I add a new push notification credential through the v1 API? - Does the v1 create call let me send APN pushes to the sandbox? instructions: - text: Add a v1 {type} push notification credential called {friendly_name}. slots: type: requestBody.Type friendly_name: requestBody.FriendlyName - text: Register a v1 {type} credential using API key {api_key}. slots: type: requestBody.Type api_key: requestBody.ApiKey - text: Create a v1 APN credential of type {type} with sandbox set to {sandbox}. slots: type: requestBody.Type sandbox: requestBody.Sandbox method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/{Sid}'].get update: x-apievangelist-phrasing: intent: Look up a push credential on the v1 endpoint effect: read questions: - Can I fetch one push notification credential from the v1 API? - What does a v1 push credential record show? instructions: - text: Fetch v1 push notification credential {sid}. slots: sid: path.Sid - text: Look up push credential {sid} via the v1 endpoint. slots: sid: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/{Sid}'].post update: x-apievangelist-phrasing: intent: Update a push credential on the v1 endpoint effect: write questions: - Can I change the type of an existing push credential through the v1 API? - Can I swap the private key on a v1 push credential? instructions: - text: Change v1 push credential {sid} to type {type}. slots: sid: path.Sid type: requestBody.Type - text: Swap the private key on v1 credential {sid} for {private_key}. slots: sid: path.Sid private_key: requestBody.PrivateKey - text: Update the secret on v1 push credential {sid} to {secret}. slots: sid: path.Sid secret: requestBody.Secret method: generated generated: '2026-09-26' - target: $.paths['/v1/Credentials/{Sid}'].delete update: x-apievangelist-phrasing: intent: Delete a push credential on the v1 endpoint effect: destructive questions: - Can I delete a push notification credential through the v1 API? - How do I remove a push credential I no longer send with, using v1? instructions: - text: Delete v1 push notification credential {sid}. slots: sid: path.Sid - text: Remove the v1 push credential {sid} from my account. slots: sid: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v2/Credentials'].get update: x-apievangelist-phrasing: intent: List push credentials on the v2 endpoint effect: read questions: - Which push credentials show up on the v2 Credentials endpoint? - Can I page through v2 push credentials in bigger batches? instructions: - text: List my push notification credentials from the v2 endpoint. - text: Show {page_size} v2 push credentials per page. slots: page_size: query.PageSize method: generated generated: '2026-09-26' - target: $.paths['/v2/Credentials'].post update: x-apievangelist-phrasing: intent: Add a push credential on the v2 endpoint effect: write questions: - Can I add an APN certificate and private key as a v2 push credential? - Can a new v2 APN credential target the sandbox instead of production? instructions: - text: Add a v2 {type} push credential named {friendly_name}. slots: type: requestBody.Type friendly_name: requestBody.FriendlyName - text: Create a {type} push credential on v2 with certificate {certificate} and private key {private_key}. slots: type: requestBody.Type certificate: requestBody.Certificate private_key: requestBody.PrivateKey method: generated generated: '2026-09-26' - target: $.paths['/v2/Credentials/{Sid}'].get update: x-apievangelist-phrasing: intent: Look up a push credential on the v2 endpoint effect: read questions: - Can I check a single push credential through the v2 endpoint? - Is a given v2 push credential pointed at the APN sandbox? instructions: - text: Fetch v2 push notification credential {sid}. slots: sid: path.Sid - text: Show the v2 settings on push credential {sid}. slots: sid: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/v2/Credentials/{Sid}'].post update: x-apievangelist-phrasing: intent: Update a push credential on the v2 endpoint effect: write questions: - Can I replace the certificate on a v2 push credential when it expires? - Can I switch a v2 APN push credential between sandbox and production? instructions: - text: Replace the certificate on v2 push credential {sid} with {certificate}. slots: sid: path.Sid certificate: requestBody.Certificate - text: Set sandbox to {sandbox} on v2 push credential {sid}. slots: sid: path.Sid sandbox: requestBody.Sandbox - text: Rotate the API key on v2 push credential {sid} to {api_key}. slots: sid: path.Sid api_key: requestBody.ApiKey method: generated generated: '2026-09-26' - target: $.paths['/v2/Credentials/{Sid}'].delete update: x-apievangelist-phrasing: intent: Delete a push credential on the v2 endpoint effect: destructive questions: - Can I remove a push credential through the v2 endpoint? - What's the way to delete an old APN push credential with the v2 API? instructions: - text: Delete v2 push notification credential {sid}. slots: sid: path.Sid - text: Remove push credential {sid} using the v2 endpoint. slots: sid: path.Sid method: generated generated: '2026-09-26' - target: $.paths['/Credentials/AWS'].get update: x-apievangelist-phrasing: intent: List AWS credentials via the legacy endpoint effect: read questions: - Is there an unversioned endpoint that lists AWS credentials? - Can I list AWS credentials from the older path without v1 paging options? instructions: - text: List AWS credentials via the legacy unversioned endpoint. - text: Pull every AWS credential from the older /Credentials/AWS path. method: generated generated: '2026-09-26' - target: $.paths['/Credentials/AWS'].post update: x-apievangelist-phrasing: intent: Create an AWS credential via the legacy endpoint effect: write questions: - Can I still create AWS credentials through the legacy unversioned endpoint? - Does the older AWS credential create call take the same access key and secret? instructions: - text: Create AWS credential {credentials} through the legacy endpoint. slots: credentials: requestBody.Credentials - text: Use the unversioned endpoint to save AWS keys {credentials} as {friendly_name}. slots: credentials: requestBody.Credentials friendly_name: requestBody.FriendlyName method: generated generated: '2026-09-26' - target: $.paths['/Credentials/PublicKeys'].get update: x-apievangelist-phrasing: intent: List public key credentials via the legacy endpoint effect: read questions: - Is there an unversioned endpoint that lists public key credentials? - Can I list my public keys from the older path without paging options? instructions: - text: List public key credentials via the legacy unversioned endpoint. - text: Pull every public key from the older /Credentials/PublicKeys path. method: generated generated: '2026-09-26' - target: $.paths['/Credentials/PublicKeys'].post update: x-apievangelist-phrasing: intent: Register a public key via the legacy endpoint effect: write questions: - Can I register a DER-encoded public key through the legacy unversioned endpoint? - Does the older public key create call still accept a friendly name? instructions: - text: Register public key {public_key} through the legacy endpoint. slots: public_key: requestBody.PublicKey - text: Use the unversioned endpoint to add public key {public_key} as {friendly_name}. slots: public_key: requestBody.PublicKey friendly_name: requestBody.FriendlyName method: generated generated: '2026-09-26'