# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Cloudflare Accounts API version: 1.0.0 extends: openapi/cloudflare-accounts-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: 740 - target: $.paths['/accounts'].get update: x-apievangelist-phrasing: intent: List the accounts I can access effect: read questions: - Which Cloudflare accounts do I own or have verified access to? - Can I look up one of my accounts by its name? instructions: - text: List every account I have access to. - text: Find my accounts named {name}. slots: name: query.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}'].get update: x-apievangelist-phrasing: intent: Get an account's details effect: read questions: - What information is stored about a specific account I belong to? - Where can I see the settings and creation date of one account? instructions: - text: Show the details of account {account_id}. slots: account_id: path.account_id - text: Pull up the settings recorded for account {account_id}. slots: account_id: path.account_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}'].put update: x-apievangelist-phrasing: intent: Rename or reconfigure an account effect: write questions: - How do I rename an existing account? - Can I change an account's settings after it is created? instructions: - text: Rename account {account_id} to {name}. slots: account_id: path.account_id name: requestBody.name - text: Update the settings of account {account_id} to {settings}. slots: account_id: path.account_id settings: requestBody.settings method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps'].get update: x-apievangelist-phrasing: intent: List an account's address maps effect: read questions: - Which address maps does my account own? - Can I see all the IP address maps configured for my BYOIP setup? instructions: - text: List the address maps in account {account_id}. slots: account_id: path.account_id - text: Show me every address map we own. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps'].post update: x-apievangelist-phrasing: intent: Create an address map effect: write questions: - How do I create a new address map for my IPs? - Can a new address map start out disabled? instructions: - text: Create an address map in account {account_id} described as {description}. slots: account_id: path.account_id description: requestBody.description - text: Set up a new address map with enabled set to {enabled}. slots: enabled: requestBody.enabled method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}'].get update: x-apievangelist-phrasing: intent: Get one address map effect: read questions: - What IPs, zones and settings are on a particular address map? - Is a given address map currently enabled? instructions: - text: Show address map {address_map_id} in account {account_id}. slots: address_map_id: path.address_map_id account_id: path.account_id - text: Get the details of address map {address_map_id}. slots: address_map_id: path.address_map_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}'].delete update: x-apievangelist-phrasing: intent: Delete an address map effect: destructive questions: - How do I delete an address map I no longer need? - Does an address map have to be disabled before it can be deleted? instructions: - text: Delete address map {address_map_id} from account {account_id}. slots: address_map_id: path.address_map_id account_id: path.account_id - text: Remove the disabled address map {address_map_id}. slots: address_map_id: path.address_map_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}'].patch update: x-apievangelist-phrasing: intent: Update an address map effect: write questions: - Can I change the default SNI on an existing address map? - How do I disable an address map without deleting it? instructions: - text: Set the default SNI of address map {address_map_id} in account {account_id} to {default_sni}. slots: address_map_id: path.address_map_id account_id: path.account_id default_sni: requestBody.default_sni - text: Change address map {address_map_id} enabled status to {enabled}. slots: address_map_id: path.address_map_id enabled: requestBody.enabled method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}/accounts/{account_id}'].put update: x-apievangelist-phrasing: intent: Add an account to an address map effect: write questions: - How do I make an account a member of an address map? - Can an address map apply to a whole account instead of individual zones? instructions: - text: Add account {account_id} as a member of address map {address_map_id}. slots: account_id: path.account_id address_map_id: path.address_map_id - text: Attach the account membership to address map {address_map_id}. slots: address_map_id: path.address_map_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}/accounts/{account_id}'].delete update: x-apievangelist-phrasing: intent: Remove an account from an address map effect: destructive questions: - How do I take an account out of an address map's membership? - What happens when I drop the account membership from an address map? instructions: - text: Remove account {account_id} from address map {address_map_id}. slots: account_id: path.account_id address_map_id: path.address_map_id - text: Drop the account membership on address map {address_map_id}. slots: address_map_id: path.address_map_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address}'].put update: x-apievangelist-phrasing: intent: Add an IP to an address map effect: write questions: - How do I add one of my prefix IPs to an address map? - Does the IP I add to an address map need to come from a prefix my account owns? instructions: - text: Add IP {ip_address} to address map {address_map_id} in account {account_id}. slots: ip_address: path.ip_address address_map_id: path.address_map_id account_id: path.account_id - text: Put {ip_address} on address map {address_map_id}. slots: ip_address: path.ip_address address_map_id: path.address_map_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address}'].delete update: x-apievangelist-phrasing: intent: Remove an IP from an address map effect: destructive questions: - How do I take a single IP off an address map? - Can I pull one address out of a map without deleting the map? instructions: - text: Remove IP {ip_address} from address map {address_map_id} in account {account_id}. slots: ip_address: path.ip_address address_map_id: path.address_map_id account_id: path.account_id - text: Take {ip_address} off address map {address_map_id}. slots: ip_address: path.ip_address address_map_id: path.address_map_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id}'].put update: x-apievangelist-phrasing: intent: Add a zone to an address map effect: write questions: - How do I make a zone a member of an address map? - Can I scope an address map to specific zones? instructions: - text: Add zone {zone_id} to address map {address_map_id} in account {account_id}. slots: zone_id: path.zone_id address_map_id: path.address_map_id account_id: path.account_id - text: Make zone {zone_id} a member of address map {address_map_id}. slots: zone_id: path.zone_id address_map_id: path.address_map_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id}'].delete update: x-apievangelist-phrasing: intent: Remove a zone from an address map effect: destructive questions: - How do I remove a zone from an address map? - Can a zone stop using an address map without the map being deleted? instructions: - text: Remove zone {zone_id} from address map {address_map_id} in account {account_id}. slots: zone_id: path.zone_id address_map_id: path.address_map_id account_id: path.account_id - text: Drop zone {zone_id}'s membership in address map {address_map_id}. slots: zone_id: path.zone_id address_map_id: path.address_map_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/loa_documents'].post update: x-apievangelist-phrasing: intent: Upload a Letter of Authorization effect: write questions: - How do I submit an LOA document for my IP prefix? - What file format does the Letter of Authorization upload expect? instructions: - text: Upload LOA PDF {loa_document} to account {account_id}. slots: loa_document: requestBody.loa_document account_id: path.account_id - text: Submit {loa_document} as our Letter of Authorization. slots: loa_document: requestBody.loa_document method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/loa_documents/{loa_document_id}/download'].get update: x-apievangelist-phrasing: intent: Download a Letter of Authorization effect: read questions: - Can I download an LOA document I already uploaded? - Where do I get a copy of the Letter of Authorization on file for my account? instructions: - text: Download LOA document {loa_document_id} from account {account_id}. slots: loa_document_id: path.loa_document_id account_id: path.account_id - text: Fetch the PDF of LOA {loa_document_id}. slots: loa_document_id: path.loa_document_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes'].get update: x-apievangelist-phrasing: intent: List my IP prefixes effect: read questions: - Which IP prefixes has my account brought to Cloudflare? - Can I see every BYOIP prefix we own in one list? instructions: - text: List all IP prefixes in account {account_id}. slots: account_id: path.account_id - text: Show me our onboarded BYOIP prefixes. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes'].post update: x-apievangelist-phrasing: intent: Onboard a new IP prefix effect: write questions: - How do I bring my own IP range to the account? - What do I need, such as an ASN and LOA, to add a new prefix? instructions: - text: Add prefix {cidr} with ASN {asn} and LOA {loa_document_id} to account {account_id}. slots: cidr: requestBody.cidr asn: requestBody.asn loa_document_id: requestBody.loa_document_id account_id: path.account_id - text: Onboard CIDR {cidr} announced from ASN {asn}. slots: cidr: requestBody.cidr asn: requestBody.asn method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}'].get update: x-apievangelist-phrasing: intent: Get one IP prefix effect: read questions: - What is the approval status and ASN of a particular prefix? - Can I look up a single prefix by its ID? instructions: - text: Show prefix {prefix_id} in account {account_id}. slots: prefix_id: path.prefix_id account_id: path.account_id - text: Get the details of IP prefix {prefix_id}. slots: prefix_id: path.prefix_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}'].delete update: x-apievangelist-phrasing: intent: Delete an unapproved prefix effect: destructive questions: - Can I delete a prefix that has not been approved yet? - How do I withdraw a prefix submission I made by mistake? instructions: - text: Delete unapproved prefix {prefix_id} from account {account_id}. slots: prefix_id: path.prefix_id account_id: path.account_id - text: Remove pending prefix {prefix_id}. slots: prefix_id: path.prefix_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}'].patch update: x-apievangelist-phrasing: intent: Change a prefix's description effect: write questions: - Can I relabel an IP prefix with a better description? - Is the description the only thing I can edit on a prefix? instructions: - text: Set the description of prefix {prefix_id} in account {account_id} to {description}. slots: prefix_id: path.prefix_id account_id: path.account_id description: requestBody.description - text: Relabel prefix {prefix_id} as {description}. slots: prefix_id: path.prefix_id description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes'].get update: x-apievangelist-phrasing: intent: List BGP prefixes within an IP prefix effect: read questions: - Which subnets of my IP prefix are set up as BGP prefixes? - How can I see what parts of a prefix can be advertised to the Internet? instructions: - text: List the BGP prefixes under prefix {prefix_id} in account {account_id}. slots: prefix_id: path.prefix_id account_id: path.account_id - text: Show the advertisable subnets inside prefix {prefix_id}. slots: prefix_id: path.prefix_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}'].get update: x-apievangelist-phrasing: intent: Get one BGP prefix effect: read questions: - Is a specific BGP prefix currently advertised or withdrawn? - Can I look up a single BGP subnet by its ID? instructions: - text: Get BGP prefix {bgp_prefix_id} of prefix {prefix_id} in account {account_id}. slots: bgp_prefix_id: path.bgp_prefix_id prefix_id: path.prefix_id account_id: path.account_id - text: Show the on-demand state of BGP prefix {bgp_prefix_id}. slots: bgp_prefix_id: path.bgp_prefix_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}'].patch update: x-apievangelist-phrasing: intent: Advertise or withdraw a BGP subnet effect: write questions: - How do I advertise just one subnet of my prefix on demand? - Can I withdraw a single BGP prefix while leaving the rest advertised? instructions: - text: Set on-demand advertisement of BGP prefix {bgp_prefix_id} under prefix {prefix_id} in account {account_id} to {on_demand}. slots: bgp_prefix_id: path.bgp_prefix_id prefix_id: path.prefix_id account_id: path.account_id on_demand: requestBody.on_demand - text: Withdraw the BGP subnet {bgp_prefix_id}. slots: bgp_prefix_id: path.bgp_prefix_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status'].get update: x-apievangelist-phrasing: intent: Check a prefix's advertisement status effect: read questions: - Is my whole IP prefix being advertised over BGP right now? - When did a prefix's advertisement state last change? instructions: - text: Check whether prefix {prefix_id} in account {account_id} is advertised. slots: prefix_id: path.prefix_id account_id: path.account_id - text: Get the dynamic advertisement status of prefix {prefix_id}. slots: prefix_id: path.prefix_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status'].patch update: x-apievangelist-phrasing: intent: Advertise or withdraw a whole prefix effect: write questions: - How do I start advertising my entire prefix during an attack? - Can I withdraw the BGP route for a whole prefix? instructions: - text: Set advertised to {advertised} for prefix {prefix_id} in account {account_id}. slots: advertised: requestBody.advertised prefix_id: path.prefix_id account_id: path.account_id - text: Withdraw the BGP route for the entire prefix {prefix_id} by setting advertised to {advertised}. slots: prefix_id: path.prefix_id advertised: requestBody.advertised method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings'].get update: x-apievangelist-phrasing: intent: List a prefix's service bindings effect: read questions: - Which Cloudflare services is my IP prefix bound to? - Where does traffic to my prefix get routed on the network? instructions: - text: List service bindings on prefix {prefix_id} in account {account_id}. slots: prefix_id: path.prefix_id account_id: path.account_id - text: Show which services prefix {prefix_id} routes to. slots: prefix_id: path.prefix_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings'].post update: x-apievangelist-phrasing: intent: Bind a prefix range to a service effect: write questions: - How do I route traffic for part of my prefix to a Cloudflare service? - Can I bind a smaller CIDR inside my prefix to Magic Transit or CDN? instructions: - text: Bind {cidr} in prefix {prefix_id} of account {account_id} to service {service_id}. slots: cidr: requestBody.cidr prefix_id: path.prefix_id account_id: path.account_id service_id: requestBody.service_id - text: Create a service binding routing {cidr} to service {service_id}. slots: cidr: requestBody.cidr service_id: requestBody.service_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}'].get update: x-apievangelist-phrasing: intent: Get one service binding effect: read questions: - What CIDR and service does a particular binding cover? - Is a service binding still being provisioned? instructions: - text: Show service binding {binding_id} on prefix {prefix_id} in account {account_id}. slots: binding_id: path.binding_id prefix_id: path.prefix_id account_id: path.account_id - text: Fetch binding {binding_id}. slots: binding_id: path.binding_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}'].delete update: x-apievangelist-phrasing: intent: Delete a service binding effect: destructive questions: - How do I stop routing a CIDR to a Cloudflare service? - Can I remove a single binding from my prefix? instructions: - text: Delete service binding {binding_id} on prefix {prefix_id} in account {account_id}. slots: binding_id: path.binding_id prefix_id: path.prefix_id account_id: path.account_id - text: Unbind {binding_id} from its service. slots: binding_id: path.binding_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations'].get update: x-apievangelist-phrasing: intent: List a prefix's delegations effect: read questions: - Which other accounts have I delegated parts of my prefix to? - Can I see all delegations for one IP prefix? instructions: - text: List delegations of prefix {prefix_id} in account {account_id}. slots: prefix_id: path.prefix_id account_id: path.account_id - text: Show who prefix {prefix_id} is delegated to. slots: prefix_id: path.prefix_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations'].post update: x-apievangelist-phrasing: intent: Delegate part of a prefix to another account effect: write questions: - How do I let another account use a CIDR from my prefix? - Can I delegate a subnet of my BYOIP range to a different account? instructions: - text: Delegate {cidr} from prefix {prefix_id} in account {account_id} to account {delegated_account_id}. slots: cidr: requestBody.cidr prefix_id: path.prefix_id account_id: path.account_id delegated_account_id: requestBody.delegated_account_id - text: Share subnet {cidr} with account {delegated_account_id}. slots: cidr: requestBody.cidr delegated_account_id: requestBody.delegated_account_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations/{delegation_id}'].delete update: x-apievangelist-phrasing: intent: Revoke a prefix delegation effect: destructive questions: - How do I take back a CIDR I delegated to another account? - Can I delete one delegation without affecting the prefix? instructions: - text: Delete delegation {delegation_id} on prefix {prefix_id} in account {account_id}. slots: delegation_id: path.delegation_id prefix_id: path.prefix_id account_id: path.account_id - text: Revoke prefix delegation {delegation_id}. slots: delegation_id: path.delegation_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/addressing/services'].get update: x-apievangelist-phrasing: intent: List services a BYOIP prefix can bind to effect: read questions: - What Cloudflare services can my onboarded prefix be bound to? - Where do I find the service IDs needed to create a binding? instructions: - text: List the bindable services available to account {account_id}. slots: account_id: path.account_id - text: Show the service IDs I can use for prefix bindings. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/baai/bge-base-en-v1.5'].post update: x-apievangelist-phrasing: intent: Embed text with @cf bge-base-en-v1.5 effect: write questions: - Can I generate English text embeddings with the @cf/baai/bge-base-en-v1.5 model? - Which mid-sized BGE embedding model runs under the @cf namespace? instructions: - text: Embed {text} using @cf/baai/bge-base-en-v1.5 in account {account_id}. slots: text: requestBody.text account_id: path.account_id - text: Get base-size @cf BGE vectors for {text}. slots: text: requestBody.text method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/baai/bge-large-en-v1.5'].post update: x-apievangelist-phrasing: intent: Embed text with bge-large-en-v1.5 effect: write questions: - Is there a large BGE model for higher quality English embeddings? - How would I vectorize documents with @cf/baai/bge-large-en-v1.5? instructions: - text: Create large BGE embeddings for {text} in account {account_id}. slots: text: requestBody.text account_id: path.account_id - text: Run bge-large-en-v1.5 on {text}. slots: text: requestBody.text method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/baai/bge-small-en-v1.5'].post update: x-apievangelist-phrasing: intent: Embed text with bge-small-en-v1.5 effect: write questions: - What's the smallest, fastest BGE embedding model I can call? - Can I get compact 384-style small embeddings from @cf/baai/bge-small-en-v1.5? instructions: - text: Embed {text} with the small BGE model in account {account_id}. slots: text: requestBody.text account_id: path.account_id - text: Run bge-small-en-v1.5 over {text} for lightweight vectors. slots: text: requestBody.text method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/bytedance/stable-diffusion-xl-lightning'].post update: x-apievangelist-phrasing: intent: Generate an image with SDXL Lightning effect: write questions: - Can I generate images quickly from a prompt with stable-diffusion-xl-lightning? - Does the SDXL Lightning endpoint let me set the number of steps? instructions: - text: Generate an SDXL Lightning image of {prompt} in account {account_id}. slots: prompt: requestBody.prompt account_id: path.account_id - text: Make a fast bytedance lightning image of {prompt} in {num_steps} steps. slots: prompt: requestBody.prompt num_steps: requestBody.num_steps method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/deepseek-ai/deepseek-math-7b-base'].post update: x-apievangelist-phrasing: intent: Run the deepseek-math-7b-base model effect: write questions: - Can I call the base (non-instruct) deepseek-math 7B model? - Which endpoint runs deepseek-math-7b-base for raw math completion? instructions: - text: Run deepseek-math-7b-base in account {account_id}. slots: account_id: path.account_id - text: Complete this math text with the base deepseek-math model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/deepseek-ai/deepseek-math-7b-instruct'].post update: x-apievangelist-phrasing: intent: Run deepseek-math-7b-instruct effect: write questions: - Can an instruct-tuned model solve math word problems for me? - Where do I call @cf/deepseek-ai/deepseek-math-7b-instruct? instructions: - text: Ask deepseek-math-7b-instruct to solve a problem in account {account_id}. slots: account_id: path.account_id - text: Use the instruct deepseek math model to work through this equation. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/defog/sqlcoder-7b-2'].post update: x-apievangelist-phrasing: intent: Generate SQL with sqlcoder-7b-2 effect: write questions: - Is there a model that turns natural language questions into SQL? - Can I run defog sqlcoder-7b-2 on Workers AI? instructions: - text: Run sqlcoder-7b-2 in account {account_id} to write a SQL query. slots: account_id: path.account_id - text: Translate my question into SQL with the defog sqlcoder model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/facebook/bart-large-cnn'].post update: x-apievangelist-phrasing: intent: Summarize text with bart-large-cnn effect: write questions: - Can I summarize a long article with a model call? - Is there a way to cap the length of a bart-large-cnn summary? instructions: - text: Summarize {input_text} with bart-large-cnn in account {account_id}. slots: input_text: requestBody.input_text account_id: path.account_id - text: Condense {input_text} into at most {max_length} tokens. slots: input_text: requestBody.input_text max_length: requestBody.max_length method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/facebook/detr-resnet-50'].post update: x-apievangelist-phrasing: intent: Detect objects with detr-resnet-50 effect: write questions: - Can I detect and locate objects in a photo with an AI model? - Which model returns bounding boxes for objects in an image? instructions: - text: Run detr-resnet-50 object detection in account {account_id}. slots: account_id: path.account_id - text: Find the objects and their boxes in this image with DETR. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/huggingface/distilbert-sst-2-int8'].post update: x-apievangelist-phrasing: intent: Classify sentiment with distilbert-sst-2 effect: write questions: - Can I tell whether a sentence is positive or negative? - Which model scores sentiment on short text? instructions: - text: Score the sentiment of {text} with distilbert-sst-2-int8 in account {account_id}. slots: text: requestBody.text account_id: path.account_id - text: Classify {text} as positive or negative. slots: text: requestBody.text method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/jpmorganchase/roberta-spam'].post update: x-apievangelist-phrasing: intent: Detect spam with roberta-spam effect: write questions: - Can I check whether a message looks like spam? - Is there a spam classifier model I can call on text? instructions: - text: Check {text} for spam with roberta-spam in account {account_id}. slots: text: requestBody.text account_id: path.account_id - text: Tell me if {text} is spam. slots: text: requestBody.text method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/lykon/dreamshaper-8-lcm'].post update: x-apievangelist-phrasing: intent: Generate an image with dreamshaper-8-lcm effect: write questions: - Can I create stylized artwork with the dreamshaper-8-lcm model? - Does the dreamshaper model accept a guidance value for my prompt? instructions: - text: Draw {prompt} with dreamshaper-8-lcm in account {account_id}. slots: prompt: requestBody.prompt account_id: path.account_id - text: Render a lykon dreamshaper picture of {prompt} with guidance {guidance}. slots: prompt: requestBody.prompt guidance: requestBody.guidance method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/meta/llama-2-7b-chat-fp16'].post update: x-apievangelist-phrasing: intent: Chat with llama-2-7b-chat-fp16 effect: write questions: - Can I run the full-precision fp16 version of Llama 2 7B chat? - Where is the unquantized llama-2-7b-chat endpoint? instructions: - text: Send a chat prompt to llama-2-7b-chat-fp16 in account {account_id}. slots: account_id: path.account_id - text: Answer this with the fp16 Llama 2 chat model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/meta/llama-2-7b-chat-int8'].post update: x-apievangelist-phrasing: intent: Chat with llama-2-7b-chat-int8 effect: write questions: - Is there a cheaper int8 quantized Llama 2 7B chat model? - Which endpoint runs @cf/meta/llama-2-7b-chat-int8? instructions: - text: Prompt the int8 quantized llama-2 chat model in account {account_id}. slots: account_id: path.account_id - text: Reply to my message using llama-2-7b-chat-int8. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/meta/m2m100-1.2b'].post update: x-apievangelist-phrasing: intent: Translate text with m2m100-1.2b effect: write questions: - Can I translate text between languages with an AI model? - Do I have to give the source language when translating with m2m100? instructions: - text: Translate {text} into {target_lang} in account {account_id}. slots: text: requestBody.text target_lang: requestBody.target_lang account_id: path.account_id - text: Convert {text} from {source_lang} to {target_lang} with m2m100. slots: text: requestBody.text source_lang: requestBody.source_lang target_lang: requestBody.target_lang method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/microsoft/phi-2'].post update: x-apievangelist-phrasing: intent: Run the phi-2 small language model effect: write questions: - Can I use a small 2.7B-class language model like phi-2? - Which endpoint runs @cf/microsoft/phi-2? instructions: - text: Run phi-2 on my prompt in account {account_id}. slots: account_id: path.account_id - text: Generate a completion with the microsoft phi-2 model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/microsoft/resnet-50'].post update: x-apievangelist-phrasing: intent: Classify an image with resnet-50 effect: write questions: - Can I label what's in a picture with an image classifier? - Which model gives top image classification labels for a photo? instructions: - text: Classify this image with resnet-50 in account {account_id}. slots: account_id: path.account_id - text: Tell me what the photo shows using microsoft resnet-50. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/mistral/mistral-7b-instruct-v0.1'].post update: x-apievangelist-phrasing: intent: Run mistral-7b-instruct-v0.1 (@cf) effect: write questions: - Can I call the @cf build of mistral-7b-instruct-v0.1? - Which endpoint serves the unquantized Mistral 7B instruct model? instructions: - text: Prompt @cf mistral-7b-instruct-v0.1 in account {account_id}. slots: account_id: path.account_id - text: Answer this instruction with the @cf Mistral 7B instruct model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/openai/whisper'].post update: x-apievangelist-phrasing: intent: Transcribe audio with whisper effect: write questions: - Can I turn an audio recording into text? - Which speech recognition model can transcribe my audio file? instructions: - text: Transcribe this audio with whisper in account {account_id}. slots: account_id: path.account_id - text: Convert the speech in this recording to text. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/openchat/openchat-3.5-0106'].post update: x-apievangelist-phrasing: intent: Chat with openchat-3.5-0106 effect: write questions: - Can I run the openchat-3.5-0106 chat model under @cf? - Which endpoint serves the January 0106 release of OpenChat 3.5? instructions: - text: Send my message to openchat-3.5-0106 in account {account_id}. slots: account_id: path.account_id - text: Reply with the @cf openchat 0106 model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-0.5b-chat'].post update: x-apievangelist-phrasing: intent: Chat with qwen1.5-0.5b-chat effect: write questions: - What's the tiniest Qwen 1.5 chat model I can call? - Can I run qwen1.5-0.5b-chat for very cheap responses? instructions: - text: Prompt qwen1.5-0.5b-chat in account {account_id}. slots: account_id: path.account_id - text: Get a quick answer from the half-billion parameter Qwen chat model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-1.8b-chat'].post update: x-apievangelist-phrasing: intent: Chat with qwen1.5-1.8b-chat effect: write questions: - Is there a 1.8B-parameter Qwen 1.5 chat model? - Where do I call @cf/qwen/qwen1.5-1.8b-chat? instructions: - text: Run qwen1.5-1.8b-chat on my prompt in account {account_id}. slots: account_id: path.account_id - text: Chat using the 1.8b Qwen model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-7b-chat-awq'].post update: x-apievangelist-phrasing: intent: Chat with qwen1.5-7b-chat-awq effect: write questions: - Can I use the AWQ-quantized 7B Qwen 1.5 chat model? - Which endpoint runs qwen1.5-7b-chat-awq? instructions: - text: Send a prompt to qwen1.5-7b-chat-awq in account {account_id}. slots: account_id: path.account_id - text: Answer with the 7b AWQ Qwen chat model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-14b-chat-awq'].post update: x-apievangelist-phrasing: intent: Chat with qwen1.5-14b-chat-awq effect: write questions: - What's the largest Qwen 1.5 chat model available, the 14B AWQ one? - Can I run qwen1.5-14b-chat-awq for stronger answers? instructions: - text: Prompt qwen1.5-14b-chat-awq in account {account_id}. slots: account_id: path.account_id - text: Use the 14 billion parameter Qwen model to respond. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/runwayml/stable-diffusion-v1-5-img2img'].post update: x-apievangelist-phrasing: intent: Transform an image with SD 1.5 img2img effect: write questions: - Can I restyle an existing picture from a text prompt? - How strongly does img2img change my input image, and can I set that? instructions: - text: Transform {image} toward {prompt} with SD 1.5 img2img in account {account_id}. slots: image: requestBody.image prompt: requestBody.prompt account_id: path.account_id - text: Restyle {image} as {prompt} at strength {strength}. slots: image: requestBody.image prompt: requestBody.prompt strength: requestBody.strength method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/runwayml/stable-diffusion-v1-5-inpainting'].post update: x-apievangelist-phrasing: intent: Inpaint part of an image with SD 1.5 effect: write questions: - Can I repaint just a masked region of a photo? - Which model fills in a masked area of an image from a prompt? instructions: - text: Inpaint {image} under mask {mask} with {prompt} in account {account_id}. slots: image: requestBody.image mask: requestBody.mask prompt: requestBody.prompt account_id: path.account_id - text: Fill the masked area of {image} with {prompt}. slots: image: requestBody.image prompt: requestBody.prompt method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/stabilityai/stable-diffusion-xl-base-1.0'].post update: x-apievangelist-phrasing: intent: Generate an image with SDXL base 1.0 effect: write questions: - Can I create high-resolution images with stable-diffusion-xl-base-1.0? - Which text-to-image model is the SDXL base release? instructions: - text: Generate {prompt} with SDXL base 1.0 in account {account_id}. slots: prompt: requestBody.prompt account_id: path.account_id - text: Create a stabilityai XL base image of {prompt} with guidance {guidance}. slots: prompt: requestBody.prompt guidance: requestBody.guidance method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/thebloke/discolm-german-7b-v1-awq'].post update: x-apievangelist-phrasing: intent: Chat in German with discolm-german-7b effect: write questions: - Is there a model tuned for German-language chat? - Can I call discolm-german-7b-v1-awq? instructions: - text: Answer in German with discolm-german-7b in account {account_id}. slots: account_id: path.account_id - text: Send this German prompt to the DiscoLM model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/thebloke/yarn-mistral-7b-64k-awq'].post update: x-apievangelist-phrasing: intent: Run yarn-mistral-7b-64k for long context effect: write questions: - Which model handles a 64k-token context window? - Can I send very long documents to yarn-mistral-7b-64k-awq? instructions: - text: Run yarn-mistral-7b-64k-awq on this long prompt in account {account_id}. slots: account_id: path.account_id - text: Process my long document with the 64k context YaRN Mistral model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/tiiuae/falcon-7b-instruct'].post update: x-apievangelist-phrasing: intent: Run falcon-7b-instruct effect: write questions: - Can I call the Falcon 7B instruct model? - Which endpoint runs @cf/tiiuae/falcon-7b-instruct? instructions: - text: Prompt falcon-7b-instruct in account {account_id}. slots: account_id: path.account_id - text: Have the tiiuae Falcon model follow this instruction. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@cf/tinyllama/tinyllama-1.1b-chat-v1.0'].post update: x-apievangelist-phrasing: intent: Chat with tinyllama-1.1b-chat effect: write questions: - Is there a tiny 1.1B Llama-style chat model for fast replies? - Can I run tinyllama-1.1b-chat-v1.0? instructions: - text: Send my message to tinyllama-1.1b-chat-v1.0 in account {account_id}. slots: account_id: path.account_id - text: Get a lightweight reply from TinyLlama. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/baai/bge-base-en-v1.5'].post update: x-apievangelist-phrasing: intent: Embed text with @hf bge-base-en-v1.5 effect: write questions: - Is there an @hf-hosted variant of bge-base-en-v1.5 for embeddings? - Can I embed text through the @hf/baai namespace instead of @cf? instructions: - text: Embed {text} using @hf/baai/bge-base-en-v1.5 in account {account_id}. slots: text: requestBody.text account_id: path.account_id - text: Vectorize {text} with the hf-hosted BGE base model. slots: text: requestBody.text method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/sentence-transformers/all-minilm-l6-v2'].post update: x-apievangelist-phrasing: intent: Score sentence similarity with all-MiniLM-L6-v2 effect: write questions: - Can I compare how similar a sentence is to a list of other sentences? - Which model ranks candidate sentences against a source sentence? instructions: - text: Compare {source} against {sentences} with all-minilm-l6-v2 in account {account_id}. slots: source: requestBody.source sentences: requestBody.sentences account_id: path.account_id - text: Rank {sentences} by similarity to {source}. slots: sentences: requestBody.sentences source: requestBody.source method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/codellama-7b-instruct-awq'].post update: x-apievangelist-phrasing: intent: Generate code with codellama-7b-instruct effect: write questions: - Can a model write or explain code from an instruction? - Where do I call codellama-7b-instruct-awq? instructions: - text: Ask codellama-7b-instruct-awq to write a function in account {account_id}. slots: account_id: path.account_id - text: Explain this snippet with Code Llama instruct. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/deepseek-coder-6.7b-base-awq'].post update: x-apievangelist-phrasing: intent: Complete code with deepseek-coder-6.7b-base effect: write questions: - Is there a base code model for raw code completion rather than chat? - Can I run deepseek-coder-6.7b-base-awq? instructions: - text: Continue this code with deepseek-coder-6.7b-base in account {account_id}. slots: account_id: path.account_id - text: Autocomplete my source file using the base deepseek coder model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/deepseek-coder-6.7b-instruct-awq'].post update: x-apievangelist-phrasing: intent: Chat about code with deepseek-coder instruct effect: write questions: - Which instruct-tuned deepseek coder model can answer programming questions? - Can I run deepseek-coder-6.7b-instruct-awq? instructions: - text: Ask deepseek-coder-6.7b-instruct to fix a bug in account {account_id}. slots: account_id: path.account_id - text: Get the instruct deepseek coder to refactor this code. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/llama-2-13b-chat-awq'].post update: x-apievangelist-phrasing: intent: Chat with llama-2-13b-chat-awq effect: write questions: - Can I use the larger 13B Llama 2 chat model? - Which endpoint runs llama-2-13b-chat-awq? instructions: - text: Prompt llama-2-13b-chat-awq in account {account_id}. slots: account_id: path.account_id - text: Answer with the 13b Llama 2 chat model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/llamaguard-7b-awq'].post update: x-apievangelist-phrasing: intent: Moderate content with llamaguard-7b effect: write questions: - Can I check whether a prompt or response is unsafe? - Which model classifies conversations for safety policy violations? instructions: - text: Run llamaguard-7b-awq safety checks in account {account_id}. slots: account_id: path.account_id - text: Screen this conversation for unsafe content with Llama Guard. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/mistral-7b-instruct-v0.1-awq'].post update: x-apievangelist-phrasing: intent: Run mistral-7b-instruct-v0.1-awq (@hf) effect: write questions: - Is there an AWQ-quantized @hf version of mistral-7b-instruct-v0.1? - Can I call the thebloke quantized Mistral instruct model? instructions: - text: Prompt @hf mistral-7b-instruct-v0.1-awq in account {account_id}. slots: account_id: path.account_id - text: Use the AWQ thebloke Mistral instruct build to respond. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/neural-chat-7b-v3-1-awq'].post update: x-apievangelist-phrasing: intent: Chat with neural-chat-7b-v3-1 effect: write questions: - Can I run the neural-chat-7b-v3-1-awq model? - Which endpoint serves Neural Chat 7B v3.1? instructions: - text: Send a prompt to neural-chat-7b-v3-1-awq in account {account_id}. slots: account_id: path.account_id - text: Reply using the Neural Chat v3.1 model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/openchat_3.5-awq'].post update: x-apievangelist-phrasing: intent: Chat with openchat_3.5-awq (@hf) effect: write questions: - Is there an @hf AWQ build of OpenChat 3.5? - Can I call @hf/thebloke/openchat_3.5-awq? instructions: - text: Prompt openchat_3.5-awq in account {account_id}. slots: account_id: path.account_id - text: Answer with the thebloke AWQ OpenChat model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/openhermes-2.5-mistral-7b-awq'].post update: x-apievangelist-phrasing: intent: Chat with openhermes-2.5-mistral-7b effect: write questions: - Can I run OpenHermes 2.5 on Mistral 7B? - Which endpoint serves openhermes-2.5-mistral-7b-awq? instructions: - text: Send my prompt to openhermes-2.5-mistral-7b-awq in account {account_id}. slots: account_id: path.account_id - text: Respond using the OpenHermes 2.5 model. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/orca-2-13b-awq'].post update: x-apievangelist-phrasing: intent: Run the orca-2-13b reasoning model effect: write questions: - Can I call the Orca 2 13B model? - Where is orca-2-13b-awq available? instructions: - text: Prompt orca-2-13b-awq in account {account_id}. slots: account_id: path.account_id - text: Reason through this question with Orca 2. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/starling-lm-7b-alpha-awq'].post update: x-apievangelist-phrasing: intent: Chat with starling-lm-7b-alpha effect: write questions: - Can I run the Starling LM 7B alpha model? - Which endpoint serves starling-lm-7b-alpha-awq? instructions: - text: Send a prompt to starling-lm-7b-alpha-awq in account {account_id}. slots: account_id: path.account_id - text: Get a reply from Starling alpha. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/@hf/thebloke/zephyr-7b-beta-awq'].post update: x-apievangelist-phrasing: intent: Chat with zephyr-7b-beta effect: write questions: - Can I use the Zephyr 7B beta assistant model? - Where do I call zephyr-7b-beta-awq? instructions: - text: Prompt zephyr-7b-beta-awq in account {account_id}. slots: account_id: path.account_id - text: Answer my question with Zephyr beta. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/ai/run/{model_name}'].post update: x-apievangelist-phrasing: intent: Run any Workers AI model by name effect: write questions: - Can I run an AI model by passing its name as a parameter? - Which endpoint lets me call a model that isn't listed as its own route? instructions: - text: Run model {model_name} in account {account_id}. slots: model_name: path.model_name account_id: path.account_id - text: Execute the Workers AI model {model_name} on my input. slots: model_name: path.model_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/available_alerts'].get update: x-apievangelist-phrasing: intent: List the alert types I can subscribe to effect: read questions: - What kinds of alerts is my account eligible to receive? - Which alert type names can I use when building a notification policy? instructions: - text: List available alert types for account {account_id}. slots: account_id: path.account_id - text: Show every alert my account can be notified about. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/eligible'].get update: x-apievangelist-phrasing: intent: Check which alert delivery channels I can use effect: read questions: - Can my account deliver alerts by email, webhook or PagerDuty? - Which notification delivery mechanisms am I eligible for? instructions: - text: Show the delivery mechanisms account {account_id} is eligible for. slots: account_id: path.account_id - text: Check whether we can send alerts through webhooks or PagerDuty. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/pagerduty'].get update: x-apievangelist-phrasing: intent: List connected PagerDuty services effect: read questions: - Which PagerDuty services are hooked up to my alerts? - Is PagerDuty already configured as an alert destination? instructions: - text: List PagerDuty services configured on account {account_id}. slots: account_id: path.account_id - text: Show our connected PagerDuty destinations. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/pagerduty'].delete update: x-apievangelist-phrasing: intent: Disconnect all PagerDuty services effect: destructive questions: - How do I remove the PagerDuty integration from my account? - Does disconnecting PagerDuty remove every connected service at once? instructions: - text: Delete all PagerDuty services connected to account {account_id}. slots: account_id: path.account_id - text: Disconnect PagerDuty from our alerting entirely. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/pagerduty/connect'].post update: x-apievangelist-phrasing: intent: Start a PagerDuty integration effect: write questions: - What's the first step to link PagerDuty to my alerts? - Can I generate a token to begin the PagerDuty connection flow? instructions: - text: Create a PagerDuty integration token for account {account_id}. slots: account_id: path.account_id - text: Begin connecting PagerDuty by issuing a new integration token. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/pagerduty/connect/{token_id}'].get update: x-apievangelist-phrasing: intent: Finish linking PagerDuty with a token effect: write questions: - How do I complete the PagerDuty link once I have an integration token? - What do I do with the PagerDuty token after creating it? instructions: - text: Link PagerDuty to account {account_id} using token {token_id}. slots: account_id: path.account_id token_id: path.token_id - text: Complete the PagerDuty connection with integration token {token_id}. slots: token_id: path.token_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/webhooks'].get update: x-apievangelist-phrasing: intent: List alert webhook destinations effect: read questions: - Which webhook URLs receive my account's alerts? - Can I see all configured notification webhooks? instructions: - text: List alert webhooks on account {account_id}. slots: account_id: path.account_id - text: Show every webhook destination we send notifications to. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/webhooks'].post update: x-apievangelist-phrasing: intent: Add an alert webhook destination effect: write questions: - How do I send alerts to my own webhook URL? - Can I attach a secret to a new notification webhook? instructions: - text: Create an alert webhook named {name} pointing to {url} on account {account_id}. slots: name: requestBody.name url: requestBody.url account_id: path.account_id - text: Add webhook destination {url} with secret {secret}. slots: url: requestBody.url secret: requestBody.secret method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}'].get update: x-apievangelist-phrasing: intent: Get one alert webhook effect: read questions: - What URL and name does a particular alert webhook use? - When was a webhook destination last successful? instructions: - text: Show alert webhook {webhook_id} on account {account_id}. slots: webhook_id: path.webhook_id account_id: path.account_id - text: Get the details of webhook destination {webhook_id}. slots: webhook_id: path.webhook_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}'].put update: x-apievangelist-phrasing: intent: Update an alert webhook effect: write questions: - Can I change the URL an existing alert webhook posts to? - How do I rotate the secret on a notification webhook? instructions: - text: Point webhook {webhook_id} on account {account_id} at {url} and call it {name}. slots: webhook_id: path.webhook_id account_id: path.account_id url: requestBody.url name: requestBody.name - text: Change the secret on webhook {webhook_id} to {secret}. slots: webhook_id: path.webhook_id secret: requestBody.secret method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}'].delete update: x-apievangelist-phrasing: intent: Delete an alert webhook effect: destructive questions: - How do I stop sending alerts to a webhook? - Can I remove one notification webhook destination? instructions: - text: Delete alert webhook {webhook_id} from account {account_id}. slots: webhook_id: path.webhook_id account_id: path.account_id - text: Remove webhook destination {webhook_id}. slots: webhook_id: path.webhook_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/history'].get update: x-apievangelist-phrasing: intent: Review sent notification history effect: read questions: - Which alerts were sent to my account recently? - How far back does notification history go on my plan? instructions: - text: List notifications sent to account {account_id} since {since}. slots: account_id: path.account_id since: query.since - text: Show alert history before {before}. slots: before: query.before method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/policies'].get update: x-apievangelist-phrasing: intent: List notification policies effect: read questions: - What alert policies are set up on my account? - Can I see all notification rules in one list? instructions: - text: List notification policies on account {account_id}. slots: account_id: path.account_id - text: Show all our alerting policies. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/policies'].post update: x-apievangelist-phrasing: intent: Create a notification policy effect: write questions: - How do I get alerted when a specific event happens? - Can a new alert policy send to several mechanisms and filter what triggers it? instructions: - text: Create a policy {name} on account {account_id} for alert type {alert_type} delivered via {mechanisms}. slots: name: requestBody.name account_id: path.account_id alert_type: requestBody.alert_type mechanisms: requestBody.mechanisms - text: Set up an enabled {alert_type} alert with filters {filters}. slots: alert_type: requestBody.alert_type filters: requestBody.filters method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/policies/{policy_id}'].get update: x-apievangelist-phrasing: intent: Get one notification policy effect: read questions: - What triggers and destinations does a particular alert policy have? - Is a given notification policy enabled? instructions: - text: Show notification policy {policy_id} on account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Get the configuration of alert policy {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/policies/{policy_id}'].put update: x-apievangelist-phrasing: intent: Update a notification policy effect: write questions: - Can I change where an existing alert policy sends notifications? - How do I pause an alert policy without deleting it? instructions: - text: Set enabled to {enabled} on notification policy {policy_id} in account {account_id}. slots: enabled: requestBody.enabled policy_id: path.policy_id account_id: path.account_id - text: Change the delivery mechanisms of alert policy {policy_id} to {mechanisms}. slots: policy_id: path.policy_id mechanisms: requestBody.mechanisms method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/alerting/v3/policies/{policy_id}'].delete update: x-apievangelist-phrasing: intent: Delete a notification policy effect: destructive questions: - How do I permanently remove an alert policy? - Will deleting a policy stop its notifications? instructions: - text: Delete notification policy {policy_id} from account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Remove alert policy {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/audit_logs'].get update: x-apievangelist-phrasing: intent: Search an account's audit logs effect: read questions: - Who changed what in my account, and when? - Can I filter audit logs by the user's email or a zone name? - Is it possible to hide user-level entries and only see account actions? instructions: - text: Show audit logs for account {account_id} since {since}. slots: account_id: path.account_id since: query.since - text: Find audit entries made by {actor_email}. slots: actor_email: query.actor.email - text: List changes to zone {zone_name} before {before}. slots: zone_name: query.zone.name before: query.before method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/brand-protection/submit'].post update: x-apievangelist-phrasing: intent: Submit a suspicious URL for phishing scan effect: write questions: - Can I report a URL I think is phishing my brand? - How do I get a suspicious link scanned? instructions: - text: Submit {url} for a phishing scan on account {account_id}. slots: url: requestBody.url account_id: path.account_id - text: Scan the suspicious link {url}. slots: url: requestBody.url method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/brand-protection/url-info'].get update: x-apievangelist-phrasing: intent: Get phishing scan results for a URL effect: read questions: - Did the brand protection scan flag my submitted URL as phishing? - Can I look up scan results by URL or by scan ID? instructions: - text: Get phishing scan results for {url} on account {account_id}. slots: url: query.url account_id: path.account_id - text: Show the outcome of URL scan {url_id_param}. slots: url_id_param: query.url_id_param method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/calls/apps'].get update: x-apievangelist-phrasing: intent: List Calls apps effect: read questions: - Which realtime Calls apps exist in my account? - Can I see all my WebRTC Calls app environments? instructions: - text: List Calls apps in account {account_id}. slots: account_id: path.account_id - text: Show every Calls app we have. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/calls/apps'].post update: x-apievangelist-phrasing: intent: Create a Calls app effect: write questions: - How do I create a new environment for realtime audio and video sessions? - Can I name a Calls app when I create it? instructions: - text: Create a Calls app named {name} in account {account_id}. slots: name: requestBody.name account_id: path.account_id - text: Set up a new Calls app for my video sessions. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/calls/apps/{app_id}'].get update: x-apievangelist-phrasing: intent: Get a Calls app effect: read questions: - What are the details of one Calls app? - When was a particular Calls app created or modified? instructions: - text: Show Calls app {app_id} in account {account_id}. slots: app_id: path.app_id account_id: path.account_id - text: Fetch the details of Calls app {app_id}. slots: app_id: path.app_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/calls/apps/{app_id}'].put update: x-apievangelist-phrasing: intent: Rename a Calls app effect: write questions: - Can I rename an existing Calls app? - How do I edit the details of a Calls app? instructions: - text: Rename Calls app {app_id} in account {account_id} to {name}. slots: app_id: path.app_id account_id: path.account_id name: requestBody.name - text: Edit Calls app {app_id} so it is called {name}. slots: app_id: path.app_id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/calls/apps/{app_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Calls app effect: destructive questions: - How do I delete a Calls app I no longer use? - Can I remove a realtime app from my account? instructions: - text: Delete Calls app {app_id} from account {account_id}. slots: app_id: path.app_id account_id: path.account_id - text: Remove Calls app {app_id}. slots: app_id: path.app_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel'].get update: x-apievangelist-phrasing: intent: List and filter tunnels effect: read questions: - Which Cloudflare Tunnels exist in my account? - Can I filter tunnels to only those active at a certain time or not deleted? - Is it possible to find tunnels whose names start with a prefix? instructions: - text: List tunnels in account {account_id}. slots: account_id: path.account_id - text: Find tunnels named {name} that are not deleted, is_deleted {is_deleted}. slots: name: query.name is_deleted: query.is_deleted - text: Show tunnels whose names start with {include_prefix}. slots: include_prefix: query.include_prefix method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel'].post update: x-apievangelist-phrasing: intent: Create a tunnel effect: write questions: - How do I create a new Cloudflare Tunnel? - Can a tunnel's configuration be managed remotely from the dashboard instead of locally? instructions: - text: Create a tunnel named {name} in account {account_id}. slots: name: requestBody.name account_id: path.account_id - text: Make a tunnel {name} with config source {config_src}. slots: name: requestBody.name config_src: requestBody.config_src method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}'].get update: x-apievangelist-phrasing: intent: Get a tunnel effect: read questions: - What's the status and connection info of a specific tunnel? - Can I look up a single tunnel by its ID? instructions: - text: Show tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Get the details of tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}'].delete update: x-apievangelist-phrasing: intent: Delete a tunnel effect: destructive questions: - How do I delete a tunnel I no longer use? - Can I remove a tunnel from my account entirely? instructions: - text: Delete tunnel {tunnel_id} from account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Remove tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}'].patch update: x-apievangelist-phrasing: intent: Rename a tunnel or change its secret effect: write questions: - Can I rename an existing tunnel? - How do I change the secret on a tunnel? instructions: - text: Rename tunnel {tunnel_id} in account {account_id} to {name}. slots: tunnel_id: path.tunnel_id account_id: path.account_id name: requestBody.name - text: Set the tunnel secret of {tunnel_id} to {tunnel_secret}. slots: tunnel_id: path.tunnel_id tunnel_secret: requestBody.tunnel_secret method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations'].get update: x-apievangelist-phrasing: intent: Get a remotely managed tunnel's config effect: read questions: - What ingress rules are configured on my remotely-managed tunnel? - Where can I read the current config of a dashboard-managed tunnel? instructions: - text: Show the configuration of tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Get the ingress config for tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations'].put update: x-apievangelist-phrasing: intent: Set a remotely managed tunnel's config effect: write questions: - How do I update the ingress rules of a remotely-managed tunnel? - Can I push a new configuration to a tunnel without touching cloudflared locally? instructions: - text: Replace the configuration of tunnel {tunnel_id} in account {account_id} with {config}. slots: tunnel_id: path.tunnel_id account_id: path.account_id config: requestBody.config - text: Push config {config} to tunnel {tunnel_id}. slots: config: requestBody.config tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections'].get update: x-apievangelist-phrasing: intent: List a tunnel's connections effect: read questions: - Which connectors are currently connected to my tunnel? - Can I see the edge connections a tunnel has open? instructions: - text: List connections for tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Show the active connectors on tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections'].delete update: x-apievangelist-phrasing: intent: Clean up stale tunnel connections effect: destructive questions: - How do I remove stale connectors from a tunnel? - Can I clear one specific connector instead of all of them? instructions: - text: Clean up all connections on tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Remove connector {client_id} from tunnel {tunnel_id}. slots: client_id: query.client_id tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}/connectors/{connector_id}'].get update: x-apievangelist-phrasing: intent: Get one tunnel connector effect: read questions: - What version and connections does a specific tunnel connector have? - Can I inspect a single cloudflared connector by its ID? instructions: - text: Show connector {connector_id} on tunnel {tunnel_id} in account {account_id}. slots: connector_id: path.connector_id tunnel_id: path.tunnel_id account_id: path.account_id - text: Get the connection details of connector {connector_id}. slots: connector_id: path.connector_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}/management'].post update: x-apievangelist-phrasing: intent: Get a tunnel management token effect: write questions: - How do I get a token to stream a tunnel's logs? - What token do I need to access a tunnel's management resources? instructions: - text: Get a management token for tunnel {tunnel_id} in account {account_id} covering {resources}. slots: tunnel_id: path.tunnel_id account_id: path.account_id resources: requestBody.resources - text: Issue a streaming-logs management token for tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/cfd_tunnel/{tunnel_id}/token'].get update: x-apievangelist-phrasing: intent: Get the cloudflared run token for a tunnel effect: read questions: - Which token do I give cloudflared to run a specific tunnel? - Where do I get the install token for a tunnel connector? instructions: - text: Get the cloudflared token for tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Fetch the run token that associates cloudflared with tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/challenges/widgets'].get update: x-apievangelist-phrasing: intent: List Turnstile widgets effect: read questions: - Which Turnstile CAPTCHA widgets does my account have? - Can I sort my Turnstile widgets by a field? instructions: - text: List Turnstile widgets in account {account_id}. slots: account_id: path.account_id - text: Show Turnstile widgets ordered by {order}. slots: order: query.order method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/challenges/widgets'].post update: x-apievangelist-phrasing: intent: Create a Turnstile widget effect: write questions: - How do I add a Turnstile challenge to my website? - Can a new Turnstile widget cover several domains and run in invisible mode? instructions: - text: Create a Turnstile widget {name} for {domains} in {mode} mode on account {account_id}. slots: name: requestBody.name domains: requestBody.domains mode: requestBody.mode account_id: path.account_id - text: Add a new Turnstile widget with clearance level {clearance_level}. slots: clearance_level: requestBody.clearance_level method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/challenges/widgets/{sitekey}'].get update: x-apievangelist-phrasing: intent: Get a Turnstile widget effect: read questions: - What domains and mode is a Turnstile widget configured with? - Can I look up a widget by its sitekey? instructions: - text: Show Turnstile widget {sitekey} in account {account_id}. slots: sitekey: path.sitekey account_id: path.account_id - text: Get the configuration for sitekey {sitekey}. slots: sitekey: path.sitekey method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/challenges/widgets/{sitekey}'].put update: x-apievangelist-phrasing: intent: Update a Turnstile widget effect: write questions: - Can I add another domain to an existing Turnstile widget? - How do I switch a widget between managed and invisible mode? instructions: - text: Update widget {sitekey} in account {account_id} to domains {domains}, mode {mode}, name {name}. slots: sitekey: path.sitekey account_id: path.account_id domains: requestBody.domains mode: requestBody.mode name: requestBody.name - text: Turn bot fight mode {bot_fight_mode} on Turnstile widget {sitekey}. slots: bot_fight_mode: requestBody.bot_fight_mode sitekey: path.sitekey method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/challenges/widgets/{sitekey}'].delete update: x-apievangelist-phrasing: intent: Delete a Turnstile widget effect: destructive questions: - How do I remove a Turnstile widget I no longer use? - Can I destroy a widget by its sitekey? instructions: - text: Delete Turnstile widget {sitekey} from account {account_id}. slots: sitekey: path.sitekey account_id: path.account_id - text: Destroy the widget with sitekey {sitekey}. slots: sitekey: path.sitekey method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/challenges/widgets/{sitekey}/rotate_secret'].post update: x-apievangelist-phrasing: intent: Rotate a Turnstile widget secret effect: destructive questions: - How do I rotate the secret key of a Turnstile widget? - Does the old Turnstile secret keep working for a while after rotation? instructions: - text: Rotate the secret for widget {sitekey} in account {account_id}. slots: sitekey: path.sitekey account_id: path.account_id - text: Generate a new secret for {sitekey} with invalidate_immediately {invalidate_immediately}. slots: sitekey: path.sitekey invalidate_immediately: requestBody.invalidate_immediately method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/custom_ns'].get update: x-apievangelist-phrasing: intent: List account custom nameservers effect: read questions: - Which custom nameservers are defined on my account? - Can I see my vanity nameserver names and their sets? instructions: - text: List custom nameservers for account {account_id}. slots: account_id: path.account_id - text: Show our account-level vanity nameservers. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/custom_ns'].post update: x-apievangelist-phrasing: intent: Add an account custom nameserver effect: write questions: - How do I add a branded nameserver to my account? - Can I group custom nameservers into numbered sets? instructions: - text: Add custom nameserver {ns_name} to account {account_id}. slots: ns_name: requestBody.ns_name account_id: path.account_id - text: Create nameserver {ns_name} in set {ns_set}. slots: ns_name: requestBody.ns_name ns_set: requestBody.ns_set method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/custom_ns/{custom_ns_id}'].delete update: x-apievangelist-phrasing: intent: Delete an account custom nameserver effect: destructive questions: - How do I remove a custom nameserver from my account? - Can I delete one vanity nameserver without affecting the others? instructions: - text: Delete custom nameserver {custom_ns_id} from account {account_id}. slots: custom_ns_id: path.custom_ns_id account_id: path.account_id - text: Remove vanity nameserver {custom_ns_id}. slots: custom_ns_id: path.custom_ns_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/custom_ns/availability'].get update: x-apievangelist-phrasing: intent: List zones eligible for custom nameservers effect: read questions: - Which of my zones can host account custom nameservers? - What zones are eligible to be used for vanity nameservers? instructions: - text: List zones eligible for custom nameservers in account {account_id}. slots: account_id: path.account_id - text: Show which zones can serve our custom NS names. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/custom_ns/verify'].post update: x-apievangelist-phrasing: intent: Verify custom nameserver glue records effect: write questions: - How do I confirm the glue records for my custom nameservers are correct? - Can I trigger a verification of vanity nameserver glue records? instructions: - text: Verify custom nameserver glue records for account {account_id}. slots: account_id: path.account_id - text: Recheck the glue records behind our custom nameservers. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/d1/database'].get update: x-apievangelist-phrasing: intent: List D1 databases effect: read questions: - Which D1 SQL databases exist in my account? - Can I search D1 databases by name? instructions: - text: List D1 databases in account {account_id}. slots: account_id: path.account_id - text: Find D1 databases named {name}. slots: name: query.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/d1/database'].post update: x-apievangelist-phrasing: intent: Create a D1 database effect: write questions: - How do I create a new serverless SQLite database? - What do I need to provide to make a D1 database? instructions: - text: Create a D1 database named {name} in account {account_id}. slots: name: requestBody.name account_id: path.account_id - text: Spin up a new D1 database called {name}. slots: name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices'].get update: x-apievangelist-phrasing: intent: List enrolled devices effect: read questions: - Which devices are enrolled in my Zero Trust organization? - Can I see every WARP-enrolled laptop and phone? instructions: - text: List enrolled devices in account {account_id}. slots: account_id: path.account_id - text: Show all devices registered with WARP. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/{device_id}'].get update: x-apievangelist-phrasing: intent: Get one enrolled device effect: read questions: - What OS, user and last-seen time does a specific device have? - Can I look up a single enrolled device by ID? instructions: - text: Show device {device_id} in account {account_id}. slots: device_id: path.device_id account_id: path.account_id - text: Get the details of enrolled device {device_id}. slots: device_id: path.device_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/{device_id}/override_codes'].get update: x-apievangelist-phrasing: intent: Get an admin override code for a device effect: read questions: - How can an admin let a user temporarily turn off WARP on their device? - Do I need the Admin Override setting enabled to get an override code? instructions: - text: Get an admin override code for device {device_id} in account {account_id}. slots: device_id: path.device_id account_id: path.account_id - text: Generate a one-time override code for {device_id}. slots: device_id: path.device_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/dex_tests'].get update: x-apievangelist-phrasing: intent: List configured DEX tests effect: read questions: - Which Digital Experience Monitoring tests are configured for my devices? - Can I see all the DEX test definitions on my account? instructions: - text: List device DEX test definitions in account {account_id}. slots: account_id: path.account_id - text: Show every DEX test we've configured. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/dex_tests'].post update: x-apievangelist-phrasing: intent: Create a DEX test effect: write questions: - How do I set up a synthetic test that devices run against an app? - Can I choose how often a DEX test runs? instructions: - text: Create DEX test {name} in account {account_id} targeting {data} every {interval}, enabled {enabled}. slots: name: requestBody.name account_id: path.account_id data: requestBody.data interval: requestBody.interval enabled: requestBody.enabled - text: Add a new DEX test described as {description}. slots: description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/dex_tests/{dex_test_id}'].get update: x-apievangelist-phrasing: intent: Get one DEX test definition effect: read questions: - What target and interval does a particular DEX test use? - Is a specific DEX test enabled? instructions: - text: Show DEX test {dex_test_id} in account {account_id}. slots: dex_test_id: path.dex_test_id account_id: path.account_id - text: Get the definition of DEX test {dex_test_id}. slots: dex_test_id: path.dex_test_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/dex_tests/{dex_test_id}'].put update: x-apievangelist-phrasing: intent: Update a DEX test effect: write questions: - Can I change the interval or target of an existing DEX test? - How do I disable a DEX test without deleting it? instructions: - text: Update DEX test {dex_test_id} in account {account_id} with name {name}, target {data}, interval {interval}, enabled {enabled}. slots: dex_test_id: path.dex_test_id account_id: path.account_id name: requestBody.name data: requestBody.data interval: requestBody.interval enabled: requestBody.enabled - text: Change the run interval of DEX test {dex_test_id} to {interval}. slots: dex_test_id: path.dex_test_id interval: requestBody.interval method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/dex_tests/{dex_test_id}'].delete update: x-apievangelist-phrasing: intent: Delete a DEX test effect: destructive questions: - How do I remove a DEX test from my devices? - Does deleting a DEX test return the tests that remain? instructions: - text: Delete DEX test {dex_test_id} from account {account_id}. slots: dex_test_id: path.dex_test_id account_id: path.account_id - text: Remove DEX test {dex_test_id}. slots: dex_test_id: path.dex_test_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/networks'].get update: x-apievangelist-phrasing: intent: List device managed networks effect: read questions: - Which office networks are defined as managed networks for WARP? - Can I see the managed networks my devices detect? instructions: - text: List managed networks in account {account_id}. slots: account_id: path.account_id - text: Show our device managed networks. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/networks'].post update: x-apievangelist-phrasing: intent: Create a device managed network effect: write questions: - How do I tell WARP clients they're on a trusted office network? - What config does a new TLS managed network need? instructions: - text: Create managed network {name} of type {type} with config {config} in account {account_id}. slots: name: requestBody.name type: requestBody.type config: requestBody.config account_id: path.account_id - text: Add a managed network called {name} using TLS endpoint config {config}. slots: name: requestBody.name config: requestBody.config method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/networks/{network_id}'].get update: x-apievangelist-phrasing: intent: Get one device managed network effect: read questions: - What TLS endpoint does a specific managed network check? - Can I look up a managed network by ID? instructions: - text: Show managed network {network_id} in account {account_id}. slots: network_id: path.network_id account_id: path.account_id - text: Get the details of managed network {network_id}. slots: network_id: path.network_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/networks/{network_id}'].put update: x-apievangelist-phrasing: intent: Update a device managed network effect: write questions: - Can I change the TLS endpoint of an existing managed network? - How do I rename a managed network? instructions: - text: Update managed network {network_id} in account {account_id} with config {config}. slots: network_id: path.network_id account_id: path.account_id config: requestBody.config - text: Rename managed network {network_id} to {name}. slots: network_id: path.network_id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/networks/{network_id}'].delete update: x-apievangelist-phrasing: intent: Delete a device managed network effect: destructive questions: - How do I remove a managed network definition? - Will deleting a managed network return the remaining ones? instructions: - text: Delete managed network {network_id} from account {account_id}. slots: network_id: path.network_id account_id: path.account_id - text: Remove managed network {network_id}. slots: network_id: path.network_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policies'].get update: x-apievangelist-phrasing: intent: List device settings profiles effect: read questions: - Which WARP device settings profiles exist on my account? - Can I see all custom device profiles and their precedence? instructions: - text: List device settings profiles in account {account_id}. slots: account_id: path.account_id - text: Show every custom WARP settings profile. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy'].get update: x-apievangelist-phrasing: intent: Get the default device settings profile effect: read questions: - What settings does the default WARP profile apply? - Where can I see the account-wide default device profile? instructions: - text: Show the default device settings profile for account {account_id}. slots: account_id: path.account_id - text: Get our default WARP client profile. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy'].post update: x-apievangelist-phrasing: intent: Create a device settings profile effect: write questions: - How do I apply different WARP settings to a group of devices? - Can a new profile match devices by an expression and take a precedence? instructions: - text: Create profile {name} in account {account_id} matching {match} at precedence {precedence}. slots: name: requestBody.name account_id: path.account_id match: requestBody.match precedence: requestBody.precedence - text: Add a device profile {name} with auto connect set to {auto_connect}. slots: name: requestBody.name auto_connect: requestBody.auto_connect method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy'].patch update: x-apievangelist-phrasing: intent: Update the default device settings profile effect: write questions: - Can I change the account-wide default WARP settings? - How do I stop users from switching modes in the default profile? instructions: - text: Set allow_mode_switch to {allow_mode_switch} in the default profile of account {account_id}. slots: allow_mode_switch: requestBody.allow_mode_switch account_id: path.account_id - text: Change the default profile support URL to {support_url}. slots: support_url: requestBody.support_url method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}'].get update: x-apievangelist-phrasing: intent: Get a device settings profile effect: read questions: - What settings and match rule does a particular custom profile have? - Can I look up a device settings profile by its ID? instructions: - text: Show device settings profile {policy_id} in account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Get custom WARP profile {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}'].delete update: x-apievangelist-phrasing: intent: Delete a device settings profile effect: destructive questions: - How do I remove a custom device settings profile? - Does deleting a profile return the ones that remain? instructions: - text: Delete device settings profile {policy_id} from account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Remove custom WARP profile {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}'].patch update: x-apievangelist-phrasing: intent: Update a custom device settings profile effect: write questions: - Can I change which devices a custom profile matches? - How do I reorder a custom profile's precedence? instructions: - text: Change the match of profile {policy_id} in account {account_id} to {match}. slots: policy_id: path.policy_id account_id: path.account_id match: requestBody.match - text: Set precedence {precedence} on custom profile {policy_id}. slots: precedence: requestBody.precedence policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}/exclude'].get update: x-apievangelist-phrasing: intent: Get a profile's split tunnel exclude list effect: read questions: - Which routes are excluded from WARP for one specific device profile? - Can I see the split tunnel exclusions of a custom profile? instructions: - text: Show the split tunnel exclude list of profile {policy_id} in account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Get excluded routes for custom profile {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}/exclude'].put update: x-apievangelist-phrasing: intent: Set a profile's split tunnel exclude list effect: write questions: - How do I exclude certain routes from WARP for just one device profile? - Can I replace the split tunnel exclusions on a custom profile? instructions: - text: Replace the split tunnel exclude list on profile {policy_id} in account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Set new excluded routes for custom profile {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}/fallback_domains'].get update: x-apievangelist-phrasing: intent: Get a profile's local domain fallback list effect: read questions: - Which domains bypass Gateway DNS for a specific device profile? - Can I see the local resolver fallback domains of a custom profile? instructions: - text: Show the local domain fallback list of profile {policy_id} in account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Get fallback domains for custom profile {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}/fallback_domains'].put update: x-apievangelist-phrasing: intent: Set a profile's local domain fallback list effect: write questions: - How do I make internal domains use a local DNS resolver for one profile? - Can I replace the fallback domains on a custom device profile? instructions: - text: Replace the local domain fallback list on profile {policy_id} in account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Set new fallback domains for custom profile {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}/include'].get update: x-apievangelist-phrasing: intent: Get a profile's split tunnel include list effect: read questions: - Which routes are sent through WARP for one specific device profile? - Can I see the split tunnel include routes of a custom profile? instructions: - text: Show the split tunnel include list of profile {policy_id} in account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Get included routes for custom profile {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/{policy_id}/include'].put update: x-apievangelist-phrasing: intent: Set a profile's split tunnel include list effect: write questions: - How do I send only certain routes through WARP for one device profile? - Can I replace the include routes on a custom profile? instructions: - text: Replace the split tunnel include list on profile {policy_id} in account {account_id}. slots: policy_id: path.policy_id account_id: path.account_id - text: Set new included routes for custom profile {policy_id}. slots: policy_id: path.policy_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/exclude'].get update: x-apievangelist-phrasing: intent: Get the default split tunnel exclude list effect: read questions: - Which routes does the default WARP profile exclude from the tunnel? - What is excluded from WARP account-wide? instructions: - text: Show the default split tunnel exclude list for account {account_id}. slots: account_id: path.account_id - text: Get the routes our default profile keeps out of WARP. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/exclude'].put update: x-apievangelist-phrasing: intent: Set the default split tunnel exclude list effect: write questions: - How do I exclude routes from WARP for everyone on the default profile? - Can I overwrite the account-wide split tunnel exclusions? instructions: - text: Replace the default split tunnel exclude list for account {account_id}. slots: account_id: path.account_id - text: Update the default profile's excluded routes. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/fallback_domains'].get update: x-apievangelist-phrasing: intent: Get the default local domain fallback list effect: read questions: - Which domains bypass Gateway DNS on the default device profile? - What local resolver fallbacks are set account-wide? instructions: - text: Show the default local domain fallback list for account {account_id}. slots: account_id: path.account_id - text: Get our default fallback domains. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/fallback_domains'].put update: x-apievangelist-phrasing: intent: Set the default local domain fallback list effect: write questions: - How do I make internal domains resolve locally for everyone on the default profile? - Can I overwrite the account-wide fallback domain list? instructions: - text: Replace the default local domain fallback list for account {account_id}. slots: account_id: path.account_id - text: Update the default profile's fallback domains. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/include'].get update: x-apievangelist-phrasing: intent: Get the default split tunnel include list effect: read questions: - Which routes does the default WARP profile send through the tunnel? - What is included in WARP account-wide? instructions: - text: Show the default split tunnel include list for account {account_id}. slots: account_id: path.account_id - text: Get the routes our default profile sends through WARP. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/policy/include'].put update: x-apievangelist-phrasing: intent: Set the default split tunnel include list effect: write questions: - How do I route only specific destinations through WARP for everyone? - Can I overwrite the account-wide split tunnel includes? instructions: - text: Replace the default split tunnel include list for account {account_id}. slots: account_id: path.account_id - text: Update the default profile's included routes. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture'].get update: x-apievangelist-phrasing: intent: List device posture rules effect: read questions: - Which device posture checks are defined for my Zero Trust account? - Can I see every posture rule, like disk encryption or OS version checks? instructions: - text: List device posture rules in account {account_id}. slots: account_id: path.account_id - text: Show all our posture checks. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture'].post update: x-apievangelist-phrasing: intent: Create a device posture rule effect: write questions: - How do I require devices to pass a security check before accessing apps? - Can a posture rule run on a schedule and expire results? instructions: - text: Create posture rule {name} of type {type} in account {account_id}. slots: name: requestBody.name type: requestBody.type account_id: path.account_id - text: Add a {type} posture check named {name} with input {input}. slots: type: requestBody.type name: requestBody.name input: requestBody.input method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture/{rule_id}'].get update: x-apievangelist-phrasing: intent: Get one device posture rule effect: read questions: - What does a specific posture rule check for? - Can I look up a posture rule's schedule and match? instructions: - text: Show posture rule {rule_id} in account {account_id}. slots: rule_id: path.rule_id account_id: path.account_id - text: Get the details of posture rule {rule_id}. slots: rule_id: path.rule_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture/{rule_id}'].put update: x-apievangelist-phrasing: intent: Update a device posture rule effect: write questions: - Can I change the input or schedule of a posture rule? - How do I edit an existing posture check? instructions: - text: Update posture rule {rule_id} in account {account_id} to name {name}, type {type}. slots: rule_id: path.rule_id account_id: path.account_id name: requestBody.name type: requestBody.type - text: Change the schedule of posture rule {rule_id} to {schedule}. slots: rule_id: path.rule_id schedule: requestBody.schedule method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture/{rule_id}'].delete update: x-apievangelist-phrasing: intent: Delete a device posture rule effect: destructive questions: - How do I remove a posture check I no longer enforce? - Can I delete a single device posture rule? instructions: - text: Delete posture rule {rule_id} from account {account_id}. slots: rule_id: path.rule_id account_id: path.account_id - text: Remove device posture rule {rule_id}. slots: rule_id: path.rule_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture/integration'].get update: x-apievangelist-phrasing: intent: List device posture integrations effect: read questions: - Which third-party endpoint security integrations feed device posture? - Can I see all posture integrations on my account? instructions: - text: List device posture integrations in account {account_id}. slots: account_id: path.account_id - text: Show our connected posture providers. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture/integration'].post update: x-apievangelist-phrasing: intent: Create a device posture integration effect: write questions: - How do I connect an endpoint security tool as a posture source? - What config and polling interval does a posture integration need? instructions: - text: Create posture integration {name} of type {type} with config {config} polling every {interval} in account {account_id}. slots: name: requestBody.name type: requestBody.type config: requestBody.config interval: requestBody.interval account_id: path.account_id - text: Connect a {type} posture provider called {name}. slots: type: requestBody.type name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture/integration/{integration_id}'].get update: x-apievangelist-phrasing: intent: Get one device posture integration effect: read questions: - How is a specific posture integration configured? - What polling interval does a given integration use? instructions: - text: Show posture integration {integration_id} in account {account_id}. slots: integration_id: path.integration_id account_id: path.account_id - text: Get the details of integration {integration_id}. slots: integration_id: path.integration_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture/integration/{integration_id}'].delete update: x-apievangelist-phrasing: intent: Delete a device posture integration effect: destructive questions: - How do I disconnect a posture integration? - Can I remove one third-party posture source? instructions: - text: Delete posture integration {integration_id} from account {account_id}. slots: integration_id: path.integration_id account_id: path.account_id - text: Remove integration {integration_id}. slots: integration_id: path.integration_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/posture/integration/{integration_id}'].patch update: x-apievangelist-phrasing: intent: Update a device posture integration effect: write questions: - Can I change the credentials or interval of a posture integration? - How do I rename an existing posture integration? instructions: - text: Update posture integration {integration_id} in account {account_id} with config {config}. slots: integration_id: path.integration_id account_id: path.account_id config: requestBody.config - text: Set the polling interval of integration {integration_id} to {interval}. slots: integration_id: path.integration_id interval: requestBody.interval method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/revoke'].post update: x-apievangelist-phrasing: intent: Revoke devices effect: destructive questions: - How do I cut off a lost or stolen device's access? - Can I revoke several enrolled devices at once? instructions: - text: Revoke the listed devices in account {account_id}. slots: account_id: path.account_id - text: Block these enrolled devices from connecting. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/settings'].get update: x-apievangelist-phrasing: intent: Get Zero Trust account device settings effect: read questions: - Is the Gateway proxy enabled for my Zero Trust devices? - What account-level device settings, like root certificate installation, are on? instructions: - text: Show Zero Trust device settings for account {account_id}. slots: account_id: path.account_id - text: Check whether Gateway UDP proxy is enabled for our devices. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/settings'].put update: x-apievangelist-phrasing: intent: Update Zero Trust account device settings effect: write questions: - How do I turn on the Gateway proxy for all devices? - Can I enable automatic root certificate installation account-wide? instructions: - text: Set gateway_proxy_enabled to {gateway_proxy_enabled} for account {account_id}. slots: gateway_proxy_enabled: requestBody.gateway_proxy_enabled account_id: path.account_id - text: Turn root certificate installation {root_certificate_installation_enabled} for our devices. slots: root_certificate_installation_enabled: requestBody.root_certificate_installation_enabled method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/devices/unrevoke'].post update: x-apievangelist-phrasing: intent: Restore revoked devices effect: write questions: - How do I give a revoked device access again? - Can I unrevoke several devices in one call? instructions: - text: Unrevoke the listed devices in account {account_id}. slots: account_id: path.account_id - text: Restore access for these previously revoked devices. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/colos'].get update: x-apievangelist-phrasing: intent: List colos my devices connected to effect: read questions: - Which Cloudflare data centers did my devices connect through over a period? - Can I sort colos by usage for a given time window? instructions: - text: List colos used by devices in account {account_id} between {timeStart} and {timeEnd}. slots: account_id: path.account_id timeStart: query.timeStart timeEnd: query.timeEnd - text: Show the most used data centers from {timeStart} to {timeEnd} sorted by {sortBy}. slots: timeStart: query.timeStart timeEnd: query.timeEnd sortBy: query.sortBy method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/fleet-status/devices'].get update: x-apievangelist-phrasing: intent: List WARP fleet status per device effect: read questions: - Which WARP devices were disconnected during a time window? - Can I filter fleet device status by platform, version or colo? instructions: - text: List fleet device status in account {account_id} from {time_start} to {time_end}, page {page} of {per_page}. slots: account_id: path.account_id time_start: query.time_start time_end: query.time_end page: query.page per_page: query.per_page - text: Show devices on platform {platform} with status {status} between {time_start} and {time_end}. slots: platform: query.platform status: query.status time_start: query.time_start time_end: query.time_end method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/fleet-status/live'].get update: x-apievangelist-phrasing: intent: Get live WARP fleet status effect: read questions: - How many WARP devices are connected right now, broken down by dimension? - Can I see live fleet status for the last few minutes? instructions: - text: Show live fleet status for account {account_id} over the last {since_minutes} minutes. slots: account_id: path.account_id since_minutes: query.since_minutes - text: Break down devices active in the past {since_minutes} minutes. slots: since_minutes: query.since_minutes method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/fleet-status/over-time'].get update: x-apievangelist-phrasing: intent: Get WARP fleet status over time effect: read questions: - How has my WARP fleet's connection status trended over the past week? - Can I chart fleet status for one colo over up to 7 days? instructions: - text: Show fleet status over time in account {account_id} from {time_start} to {time_end}. slots: account_id: path.account_id time_start: query.time_start time_end: query.time_end - text: Trend fleet status for colo {colo} between {time_start} and {time_end}. slots: colo: query.colo time_start: query.time_start time_end: query.time_end method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/http-tests/{test_id}'].get update: x-apievangelist-phrasing: intent: Get HTTP test metrics effect: read questions: - How did an HTTP DEX test perform over the last day? - Can I get aggregate HTTP test metrics for one device at a chosen interval? instructions: - text: Get metrics for HTTP test {test_id} in account {account_id} from {timeStart} to {timeEnd} at {interval} intervals. slots: test_id: path.test_id account_id: path.account_id timeStart: query.timeStart timeEnd: query.timeEnd interval: query.interval - text: Show HTTP test {test_id} results for device {deviceId}. slots: test_id: path.test_id deviceId: query.deviceId method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/http-tests/{test_id}/percentiles'].get update: x-apievangelist-phrasing: intent: Get HTTP test percentiles effect: read questions: - What are the p50 and p95 response times for an HTTP DEX test? - Can I get HTTP test percentiles for a single colo? instructions: - text: Get percentiles for HTTP test {test_id} in account {account_id} between {timeStart} and {timeEnd}. slots: test_id: path.test_id account_id: path.account_id timeStart: query.timeStart timeEnd: query.timeEnd - text: Show HTTP test {test_id} latency percentiles at colo {colo}. slots: test_id: path.test_id colo: query.colo method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/tests'].get update: x-apievangelist-phrasing: intent: List DEX tests with analytics effect: read questions: - Which DEX tests have run and how are they performing? - Can I filter DEX test analytics by test name or device? instructions: - text: List DEX test analytics for account {account_id}. slots: account_id: path.account_id - text: Show analytics for tests named {testName} at colo {colo}. slots: testName: query.testName colo: query.colo method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/tests/unique-devices'].get update: x-apievangelist-phrasing: intent: Count devices that ran DEX tests effect: read questions: - How many unique devices ran synthetic monitoring tests in the past 7 days? - Can I count devices targeted by a specific DEX test? instructions: - text: Count unique devices that ran DEX tests in account {account_id}. slots: account_id: path.account_id - text: Count devices targeted by test {testName}. slots: testName: query.testName method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/traceroute-test-results/{test_result_id}/network-path'].get update: x-apievangelist-phrasing: intent: Get a traceroute run's network path effect: read questions: - What hops did a specific traceroute test run go through? - Can I see per-hop performance for one traceroute result? instructions: - text: Show the network path for traceroute result {test_result_id} in account {account_id}. slots: test_result_id: path.test_result_id account_id: path.account_id - text: Break down the hops of traceroute run {test_result_id}. slots: test_result_id: path.test_result_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/traceroute-tests/{test_id}'].get update: x-apievangelist-phrasing: intent: Get aggregate metrics for a DEX traceroute test effect: read questions: - How did my DEX traceroute test perform over the last day? - Can I see aggregate traceroute metrics for just one Cloudflare colo instead of all devices? - What time window can I request for traceroute test details, between 1 hour and 7 days? instructions: - text: Show details and aggregate metrics for traceroute test {test_id} in account {account} from {timeStart} to {timeEnd} at {interval} intervals. slots: test_id: path.test_id account: path.account_id timeStart: query.timeStart timeEnd: query.timeEnd interval: query.interval - text: Get traceroute test {test_id} aggregate performance for colo {colo} between {timeStart} and {timeEnd}, bucketed by {interval}. slots: test_id: path.test_id colo: query.colo timeStart: query.timeStart timeEnd: query.timeEnd interval: query.interval method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/traceroute-tests/{test_id}/network-path'].get update: x-apievangelist-phrasing: intent: Break down a traceroute test's network path by hop effect: read questions: - Which hop in the network path is adding latency to my traceroute test runs? - Can I get a hop-by-hop breakdown of a traceroute test for one specific device? instructions: - text: Break down the network path hop by hop for traceroute test {test_id} on device {deviceId} in account {account} from {timeStart} to {timeEnd} per {interval}. slots: test_id: path.test_id deviceId: query.deviceId account: path.account_id timeStart: query.timeStart timeEnd: query.timeEnd interval: query.interval - text: Show per-hop metrics for device {deviceId}'s runs of traceroute test {test_id} between {timeStart} and {timeEnd}, {interval} slots. slots: deviceId: query.deviceId test_id: path.test_id timeStart: query.timeStart timeEnd: query.timeEnd interval: query.interval method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dex/traceroute-tests/{test_id}/percentiles'].get update: x-apievangelist-phrasing: intent: Get percentile stats for a traceroute test effect: read questions: - What are the p50, p90 and p95 values for my traceroute test? - Can I get traceroute test percentiles filtered to a single Cloudflare colo? instructions: - text: Get percentiles for traceroute test {test_id} in account {account} between {timeStart} and {timeEnd}. slots: test_id: path.test_id account: path.account_id timeStart: query.timeStart timeEnd: query.timeEnd - text: Show traceroute percentiles for test {test_id} on device {deviceId} from {timeStart} to {timeEnd}. slots: test_id: path.test_id deviceId: query.deviceId timeStart: query.timeStart timeEnd: query.timeEnd method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/diagnostics/traceroute'].post update: x-apievangelist-phrasing: intent: Run traceroutes from Cloudflare colos effect: read questions: - How do I run an on-demand traceroute from Cloudflare's data centers to my server? - Can I pick which Cloudflare colos a diagnostic traceroute starts from? instructions: - text: Run a traceroute to {targets} from Cloudflare colos for account {account}. slots: targets: requestBody.targets account: path.account_id - text: Traceroute {targets} starting from colos {colos}. slots: targets: requestBody.targets colos: requestBody.colos method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/datasets'].get update: x-apievangelist-phrasing: intent: List DLP datasets and their versions effect: read questions: - Which DLP datasets have I uploaded, and what versions does each have? - Can I see every data loss prevention dataset in my account at once? instructions: - text: List all DLP datasets with their available versions in account {account}. slots: account: path.account_id - text: Show me every DLP dataset I have uploaded. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/datasets'].post update: x-apievangelist-phrasing: intent: Create a DLP dataset effect: write questions: - How do I create a new dataset of sensitive values for DLP to match against? - Can a DLP dataset be marked secret when I create it? instructions: - text: Create a DLP dataset named {name} in account {account}. slots: name: requestBody.name account: path.account_id - text: Create a new DLP dataset {name} described as {description}. slots: name: requestBody.name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/datasets/{dataset_id}'].get update: x-apievangelist-phrasing: intent: Get one DLP dataset and its versions effect: read questions: - What versions exist for a specific DLP dataset? - Where can I look up the details of one DLP dataset by its ID? instructions: - text: Fetch DLP dataset {dataset_id} in account {account} with its available versions. slots: dataset_id: path.dataset_id account: path.account_id - text: Show the details of DLP dataset {dataset_id}. slots: dataset_id: path.dataset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/datasets/{dataset_id}'].put update: x-apievangelist-phrasing: intent: Rename or redescribe a DLP dataset effect: write questions: - Can I rename a DLP dataset after it has been created? - How do I change the description on an existing DLP dataset? instructions: - text: Rename DLP dataset {dataset_id} in account {account} to {name}. slots: dataset_id: path.dataset_id account: path.account_id name: requestBody.name - text: Change the description of DLP dataset {dataset_id} to {description}. slots: dataset_id: path.dataset_id description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/datasets/{dataset_id}'].delete update: x-apievangelist-phrasing: intent: Delete a DLP dataset and all its versions effect: destructive questions: - Does deleting a DLP dataset also remove every version of it? - How do I get rid of a DLP dataset I no longer use? instructions: - text: Delete DLP dataset {dataset_id} in account {account}. slots: dataset_id: path.dataset_id account: path.account_id - text: Remove DLP dataset {dataset_id} including all of its versions. slots: dataset_id: path.dataset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/datasets/{dataset_id}/upload'].post update: x-apievangelist-phrasing: intent: Prepare a new version upload for a DLP dataset effect: write questions: - What is the first step before uploading a new version of a DLP dataset? - How do I get a version number to upload refreshed data into a DLP dataset? instructions: - text: Prepare a new version upload for DLP dataset {dataset_id} in account {account}. slots: dataset_id: path.dataset_id account: path.account_id - text: Start a new version of DLP dataset {dataset_id} so I can upload data to it. slots: dataset_id: path.dataset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/datasets/{dataset_id}/upload/{version}'].post update: x-apievangelist-phrasing: intent: Upload data for a DLP dataset version effect: write questions: - How do I upload the contents of a prepared DLP dataset version? - Once a dataset version is prepared, where do I send the actual data? instructions: - text: Upload the data for version {version} of DLP dataset {dataset_id} in account {account}. slots: version: path.version dataset_id: path.dataset_id account: path.account_id - text: Push the new file into DLP dataset {dataset_id} as version {version}. slots: dataset_id: path.dataset_id version: path.version method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/patterns/validate'].post update: x-apievangelist-phrasing: intent: Check a regex is valid for a DLP profile effect: read questions: - Will my regular expression be accepted as a custom DLP pattern? - Why would a DLP regex be rejected even if it is syntactically valid? instructions: - text: Validate the regex {regex} as a DLP pattern for account {account}. slots: regex: requestBody.regex account: path.account_id - text: Check whether {regex} is an acceptable DLP detection pattern. slots: regex: requestBody.regex method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/payload_log'].get update: x-apievangelist-phrasing: intent: Get DLP payload log settings effect: read questions: - What public key is set for encrypting my DLP payload logs? - Is DLP payload logging configured on my account? instructions: - text: Show the DLP payload log settings for account {account}. slots: account: path.account_id - text: Get my current DLP payload logging configuration. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/payload_log'].put update: x-apievangelist-phrasing: intent: Set the DLP payload log encryption key effect: write questions: - How do I set the public key used to encrypt DLP payload logs? - Can I rotate the key for DLP payload logs? instructions: - text: Set the DLP payload log public key for account {account} to {public_key}. slots: account: path.account_id public_key: requestBody.public_key - text: Update DLP payload logging to encrypt with {public_key}. slots: public_key: requestBody.public_key method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/profiles'].get update: x-apievangelist-phrasing: intent: List all DLP profiles effect: read questions: - Which DLP profiles, predefined and custom, exist in my account? - Can I see all my data loss prevention profiles in one list? instructions: - text: List every DLP profile in account {account}. slots: account: path.account_id - text: Show all my DLP profiles, both predefined and custom. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/profiles/{profile_id}'].get update: x-apievangelist-phrasing: intent: Get a DLP profile of either type by ID effect: read questions: - How do I look up a DLP profile when I don't know if it's predefined or custom? - Can one lookup fetch any DLP profile type by its ID? instructions: - text: Fetch DLP profile {profile_id} in account {account}, whether predefined or custom. slots: profile_id: path.profile_id account: path.account_id - text: Look up DLP profile {profile_id} without knowing its type. slots: profile_id: path.profile_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/profiles/custom'].post update: x-apievangelist-phrasing: intent: Create custom DLP profiles effect: write questions: - How do I create my own DLP profiles with custom detection entries? - Can I create several custom DLP profiles in one request? instructions: - text: Create the custom DLP profiles {profiles} in account {account}. slots: profiles: requestBody.profiles account: path.account_id - text: 'Add a batch of custom DLP profiles: {profiles}.' slots: profiles: requestBody.profiles method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/profiles/custom/{profile_id}'].get update: x-apievangelist-phrasing: intent: Get a custom DLP profile effect: read questions: - What entries are in one of my custom DLP profiles? - Where do I fetch a custom DLP profile I built myself? instructions: - text: Fetch custom DLP profile {profile_id} in account {account}. slots: profile_id: path.profile_id account: path.account_id - text: Show the entries of my custom DLP profile {profile_id}. slots: profile_id: path.profile_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/profiles/custom/{profile_id}'].put update: x-apievangelist-phrasing: intent: Update a custom DLP profile effect: write questions: - How do I change the entries or allowed match count on a custom DLP profile? - Can I turn on context awareness for one of my custom DLP profiles? instructions: - text: Update custom DLP profile {profile_id} in account {account} with entries {entries}. slots: profile_id: path.profile_id account: path.account_id entries: requestBody.entries - text: Set the allowed match count on custom DLP profile {profile_id} to {allowed_match_count}. slots: profile_id: path.profile_id allowed_match_count: requestBody.allowed_match_count - text: Rename custom DLP profile {profile_id} to {name}. slots: profile_id: path.profile_id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/profiles/custom/{profile_id}'].delete update: x-apievangelist-phrasing: intent: Delete a custom DLP profile effect: destructive questions: - How do I remove a custom DLP profile I no longer need? - Can I delete a custom DLP profile from my account? instructions: - text: Delete custom DLP profile {profile_id} in account {account}. slots: profile_id: path.profile_id account: path.account_id - text: Remove my custom DLP profile {profile_id}. slots: profile_id: path.profile_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/profiles/predefined/{profile_id}'].get update: x-apievangelist-phrasing: intent: Get a predefined DLP profile effect: read questions: - Which entries does a built-in predefined DLP profile contain? - Where do I see the settings of a predefined DLP profile like credit card numbers? instructions: - text: Fetch predefined DLP profile {profile_id} in account {account}. slots: profile_id: path.profile_id account: path.account_id - text: Show the built-in entries of predefined DLP profile {profile_id}. slots: profile_id: path.profile_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dlp/profiles/predefined/{profile_id}'].put update: x-apievangelist-phrasing: intent: Enable or disable entries in a predefined DLP profile effect: write questions: - Can I switch off individual entries in a predefined DLP profile? - What can I actually change on a built-in DLP profile? instructions: - text: Enable or disable entries {entries} in predefined DLP profile {profile_id} for account {account}. slots: entries: requestBody.entries profile_id: path.profile_id account: path.account_id - text: Set the allowed match count on predefined DLP profile {profile_id} to {allowed_match_count}. slots: profile_id: path.profile_id allowed_match_count: requestBody.allowed_match_count method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dns_firewall'].get update: x-apievangelist-phrasing: intent: List DNS Firewall clusters effect: read questions: - Which DNS Firewall clusters are configured on my account? - Can I page through my DNS Firewall clusters? instructions: - text: List the DNS Firewall clusters in account {account}. slots: account: path.account_id - text: Show page {page} of my DNS Firewall clusters, {per_page} per page. slots: page: query.page per_page: query.per_page method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dns_firewall'].post update: x-apievangelist-phrasing: intent: Create a DNS Firewall cluster effect: write questions: - How do I set up a DNS Firewall cluster in front of my upstream nameservers? - Can I set cache TTL limits and rate limits when creating a DNS Firewall cluster? instructions: - text: Create a DNS Firewall cluster named {name} in account {account} forwarding to upstream IPs {upstream_ips}. slots: name: requestBody.name account: path.account_id upstream_ips: requestBody.upstream_ips - text: Set up DNS Firewall cluster {name} for upstreams {upstream_ips} with a rate limit of {ratelimit}. slots: name: requestBody.name upstream_ips: requestBody.upstream_ips ratelimit: requestBody.ratelimit method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dns_firewall/{dns_firewall_id}'].get update: x-apievangelist-phrasing: intent: Get a DNS Firewall cluster effect: read questions: - What upstream IPs and cache settings does one DNS Firewall cluster use? - Where can I see the configuration of a single DNS Firewall cluster? instructions: - text: Show DNS Firewall cluster {dns_firewall_id} in account {account}. slots: dns_firewall_id: path.dns_firewall_id account: path.account_id - text: Get the configuration of DNS Firewall cluster {dns_firewall_id}. slots: dns_firewall_id: path.dns_firewall_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dns_firewall/{dns_firewall_id}'].delete update: x-apievangelist-phrasing: intent: Delete a DNS Firewall cluster effect: destructive questions: - How do I tear down a DNS Firewall cluster? - Can I delete a DNS Firewall cluster I no longer route traffic through? instructions: - text: Delete DNS Firewall cluster {dns_firewall_id} in account {account}. slots: dns_firewall_id: path.dns_firewall_id account: path.account_id - text: Remove the DNS Firewall cluster {dns_firewall_id}. slots: dns_firewall_id: path.dns_firewall_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/dns_firewall/{dns_firewall_id}'].patch update: x-apievangelist-phrasing: intent: Modify a DNS Firewall cluster's configuration effect: write questions: - How do I change the upstream IPs of an existing DNS Firewall cluster? - Can I adjust the minimum and maximum cache TTL on a DNS Firewall cluster? instructions: - text: Change DNS Firewall cluster {dns_firewall_id} in account {account} to use upstream IPs {upstream_ips}. slots: dns_firewall_id: path.dns_firewall_id account: path.account_id upstream_ips: requestBody.upstream_ips - text: Set DNS Firewall cluster {dns_firewall_id} maximum cache TTL to {maximum_cache_ttl}. slots: dns_firewall_id: path.dns_firewall_id maximum_cache_ttl: requestBody.maximum_cache_ttl method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway'].get update: x-apievangelist-phrasing: intent: Get Zero Trust account information effect: read questions: - Is Zero Trust enabled on my Cloudflare account, and what is its gateway tag? - Where can I see basic information about my Zero Trust account? instructions: - text: Get the Zero Trust account information for account {account}. slots: account: path.account_id - text: Show my Zero Trust account details. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway'].post update: x-apievangelist-phrasing: intent: Create a Zero Trust account effect: write questions: - How do I turn on Zero Trust for an existing account? - Can I create a Zero Trust account programmatically? instructions: - text: Create a Zero Trust account for account {account}. slots: account: path.account_id - text: Enable Zero Trust on my existing account. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/app_types'].get update: x-apievangelist-phrasing: intent: List Gateway application and app type mappings effect: read questions: - Which applications can Gateway rules match, and what type is each one? - Where do I find the application IDs to use in Zero Trust Gateway policies? instructions: - text: List all Gateway application and application type mappings for account {account}. slots: account: path.account_id - text: Show the applications Gateway recognizes and their app types. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/audit_ssh_settings'].get update: x-apievangelist-phrasing: intent: Get Zero Trust Audit SSH settings effect: read questions: - What public key is configured for Zero Trust SSH command logging? - How is Audit SSH currently set up on my account? instructions: - text: Show the Zero Trust Audit SSH settings for account {account}. slots: account: path.account_id - text: Get my Audit SSH configuration. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/audit_ssh_settings'].put update: x-apievangelist-phrasing: intent: Update Zero Trust Audit SSH settings effect: write questions: - How do I set the public key used to encrypt SSH command logs? - Can I rotate the seed for Zero Trust Audit SSH? instructions: - text: Set the Audit SSH public key for account {account} to {public_key}. slots: account: path.account_id public_key: requestBody.public_key - text: Update Audit SSH to use key {public_key} with seed {seed_id}. slots: public_key: requestBody.public_key seed_id: requestBody.seed_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/categories'].get update: x-apievangelist-phrasing: intent: List Gateway content and security categories effect: read questions: - What content categories can I block with Gateway, like gambling or malware? - Where do I get the category IDs to use in DNS and HTTP filtering rules? instructions: - text: List all Gateway categories available to account {account}. slots: account: path.account_id - text: Show every content and security category I can filter on. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/configuration'].get update: x-apievangelist-phrasing: intent: Get Zero Trust account configuration effect: read questions: - What are my current Zero Trust Gateway settings, like TLS decryption or block page? - Can I see the full Zero Trust account configuration? instructions: - text: Fetch the Zero Trust account configuration for account {account}. slots: account: path.account_id - text: Show my current Zero Trust Gateway settings. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/configuration'].put update: x-apievangelist-phrasing: intent: Replace the Zero Trust account configuration effect: write questions: - How do I overwrite my entire Zero Trust configuration at once? - Can I replace all Gateway account settings in one request? instructions: - text: Replace the Zero Trust account configuration for account {account} with {settings}. slots: account: path.account_id settings: requestBody.settings - text: Overwrite all of my Zero Trust settings with {settings}. slots: settings: requestBody.settings method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/configuration'].patch update: x-apievangelist-phrasing: intent: Change one Zero Trust configuration setting effect: write questions: - Can I change a single Zero Trust setting without resending the whole configuration? - How do I tweak just the block page setting in my Zero Trust configuration? instructions: - text: 'Patch only these Zero Trust settings for account {account}: {settings}.' slots: account: path.account_id settings: requestBody.settings - text: 'Change a single Zero Trust setting, leaving the rest untouched: {settings}.' slots: settings: requestBody.settings method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/lists'].get update: x-apievangelist-phrasing: intent: List Zero Trust lists effect: read questions: - Which Zero Trust lists of domains, IPs or emails have I created? - Can I see all my Gateway lists in one place? instructions: - text: List all Zero Trust lists in account {account}. slots: account: path.account_id - text: Show every Zero Trust list I have. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/lists'].post update: x-apievangelist-phrasing: intent: Create a Zero Trust list effect: write questions: - How do I create a list of domains to reference in Gateway policies? - What types of Zero Trust lists can I create, like IP, email or serial number? instructions: - text: Create a Zero Trust list named {name} of type {type} in account {account}. slots: name: requestBody.name type: requestBody.type account: path.account_id - text: Create Zero Trust list {name} of type {type} containing {items}. slots: name: requestBody.name type: requestBody.type items: requestBody.items method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/lists/{list_id}'].get update: x-apievangelist-phrasing: intent: Get a Zero Trust list effect: read questions: - What type and description does a particular Zero Trust list have? - How do I look up one Zero Trust list by ID? instructions: - text: Fetch Zero Trust list {list_id} in account {account}. slots: list_id: path.list_id account: path.account_id - text: Show the details of Zero Trust list {list_id}. slots: list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/lists/{list_id}'].put update: x-apievangelist-phrasing: intent: Rename or redescribe a Zero Trust list effect: write questions: - Can I rename a Zero Trust list without touching its items? - How do I change the description on a Zero Trust list? instructions: - text: Rename Zero Trust list {list_id} in account {account} to {name}. slots: list_id: path.list_id account: path.account_id name: requestBody.name - text: Set Zero Trust list {list_id}'s name to {name} and description to {description}. slots: list_id: path.list_id name: requestBody.name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/lists/{list_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Zero Trust list effect: destructive questions: - How do I delete a Zero Trust list I no longer reference? - Can I remove an entire Gateway list? instructions: - text: Delete Zero Trust list {list_id} in account {account}. slots: list_id: path.list_id account: path.account_id - text: Remove the whole Zero Trust list {list_id}. slots: list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/lists/{list_id}'].patch update: x-apievangelist-phrasing: intent: Add or remove items in a Zero Trust list effect: write questions: - How do I append a new domain to an existing Zero Trust list? - Can I remove a single entry from a Zero Trust list without rewriting it? instructions: - text: Append {append} to Zero Trust list {list_id} in account {account}. slots: append: requestBody.append list_id: path.list_id account: path.account_id - text: Remove {remove} from Zero Trust list {list_id}. slots: remove: requestBody.remove list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/lists/{list_id}/items'].get update: x-apievangelist-phrasing: intent: List the items in a Zero Trust list effect: read questions: - Which entries are currently in my Zero Trust list? - Can I see every value stored in one Gateway list? instructions: - text: List all items in Zero Trust list {list_id} for account {account}. slots: list_id: path.list_id account: path.account_id - text: Show the entries inside Zero Trust list {list_id}. slots: list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/locations'].get update: x-apievangelist-phrasing: intent: List Zero Trust Gateway locations effect: read questions: - Which offices or networks are set up as Gateway locations? - Can I see all my DNS filtering locations? instructions: - text: List Zero Trust Gateway locations in account {account}. slots: account: path.account_id - text: Show all of my Gateway locations. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/locations'].post update: x-apievangelist-phrasing: intent: Create a Zero Trust Gateway location effect: write questions: - How do I add an office network as a Gateway location for DNS filtering? - Can I enable EDNS client subnet support when creating a Gateway location? instructions: - text: Create a Gateway location named {name} in account {account}. slots: name: requestBody.name account: path.account_id - text: Add Gateway location {name} covering networks {networks}. slots: name: requestBody.name networks: requestBody.networks method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/locations/{location_id}'].get update: x-apievangelist-phrasing: intent: Get a Zero Trust Gateway location effect: read questions: - What networks and DoH settings does a single Gateway location have? - How do I look up one Gateway location by ID? instructions: - text: Fetch Gateway location {location_id} in account {account}. slots: location_id: path.location_id account: path.account_id - text: Show the details for Gateway location {location_id}. slots: location_id: path.location_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/locations/{location_id}'].put update: x-apievangelist-phrasing: intent: Update a Zero Trust Gateway location effect: write questions: - How do I change the networks assigned to an existing Gateway location? - Can I make a different Gateway location the default? instructions: - text: Update Gateway location {location_id} in account {account} with name {name}. slots: location_id: path.location_id account: path.account_id name: requestBody.name - text: Change the networks on Gateway location {location_id} named {name} to {networks}. slots: location_id: path.location_id name: requestBody.name networks: requestBody.networks method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/locations/{location_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Zero Trust Gateway location effect: destructive questions: - How do I remove a Gateway location for an office that closed? - Can I delete a DNS filtering location? instructions: - text: Delete Gateway location {location_id} in account {account}. slots: location_id: path.location_id account: path.account_id - text: Remove Gateway location {location_id}. slots: location_id: path.location_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/logging'].get update: x-apievangelist-phrasing: intent: Get Zero Trust logging settings effect: read questions: - Is PII being redacted from my Gateway logs? - Which Gateway rule types currently have logging enabled? instructions: - text: Show the Zero Trust logging settings for account {account}. slots: account: path.account_id - text: Get my Gateway logging configuration. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/logging'].put update: x-apievangelist-phrasing: intent: Update Zero Trust logging settings effect: write questions: - How do I turn on PII redaction in Gateway logs? - Can I choose which rule types get logged in Zero Trust? instructions: - text: Set PII redaction for Zero Trust logs in account {account} to {redact_pii}. slots: account: path.account_id redact_pii: requestBody.redact_pii - text: Update Gateway logging per rule type to {settings_by_rule_type}. slots: settings_by_rule_type: requestBody.settings_by_rule_type method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/proxy_endpoints'].get update: x-apievangelist-phrasing: intent: List Gateway proxy endpoints effect: read questions: - Which Gateway proxy endpoints have I set up? - Can I see all my Zero Trust proxy endpoints and their subdomains? instructions: - text: List the Gateway proxy endpoints in account {account}. slots: account: path.account_id - text: Show all my Zero Trust proxy endpoints. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/proxy_endpoints'].post update: x-apievangelist-phrasing: intent: Create a Gateway proxy endpoint effect: write questions: - How do I create a proxy endpoint so browsers can send traffic to Gateway? - Which source IPs does a new Gateway proxy endpoint need? instructions: - text: Create a Gateway proxy endpoint named {name} for source IPs {ips} in account {account}. slots: name: requestBody.name ips: requestBody.ips account: path.account_id - text: Add proxy endpoint {name} allowing {ips}. slots: name: requestBody.name ips: requestBody.ips method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}'].get update: x-apievangelist-phrasing: intent: Get a Gateway proxy endpoint effect: read questions: - What subdomain and IPs does one specific proxy endpoint use? - How do I look up a single Gateway proxy endpoint by ID? instructions: - text: Fetch Gateway proxy endpoint {proxy_endpoint_id} in account {account}. slots: proxy_endpoint_id: path.proxy_endpoint_id account: path.account_id - text: Show the details of proxy endpoint {proxy_endpoint_id}. slots: proxy_endpoint_id: path.proxy_endpoint_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Gateway proxy endpoint effect: destructive questions: - How do I remove a Gateway proxy endpoint? - Can I delete a proxy endpoint that is no longer used? instructions: - text: Delete Gateway proxy endpoint {proxy_endpoint_id} in account {account}. slots: proxy_endpoint_id: path.proxy_endpoint_id account: path.account_id - text: Remove proxy endpoint {proxy_endpoint_id}. slots: proxy_endpoint_id: path.proxy_endpoint_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}'].patch update: x-apievangelist-phrasing: intent: Update a Gateway proxy endpoint effect: write questions: - How do I change which IPs are allowed through an existing proxy endpoint? - Can I rename a Gateway proxy endpoint? instructions: - text: Set the allowed IPs on proxy endpoint {proxy_endpoint_id} in account {account} to {ips}. slots: proxy_endpoint_id: path.proxy_endpoint_id account: path.account_id ips: requestBody.ips - text: Rename proxy endpoint {proxy_endpoint_id} to {name}. slots: proxy_endpoint_id: path.proxy_endpoint_id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/rules'].get update: x-apievangelist-phrasing: intent: List Zero Trust Gateway rules effect: read questions: - Which Gateway policies are active on my account and in what order? - Can I see all my DNS, HTTP and network filtering rules? instructions: - text: List the Zero Trust Gateway rules in account {account}. slots: account: path.account_id - text: Show all of my Gateway filtering policies. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/rules'].post update: x-apievangelist-phrasing: intent: Create a Zero Trust Gateway rule effect: write questions: - How do I create a Gateway policy that blocks a category of sites? - Can a new Gateway rule apply only during a schedule, like work hours? instructions: - text: Create a Gateway rule named {name} with action {action} in account {account}. slots: name: requestBody.name action: requestBody.action account: path.account_id - text: Add Gateway rule {name} that will {action} traffic matching {traffic}. slots: name: requestBody.name action: requestBody.action traffic: requestBody.traffic method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/rules/{rule_id}'].get update: x-apievangelist-phrasing: intent: Get a Zero Trust Gateway rule effect: read questions: - What traffic expression and action does a specific Gateway rule use? - How do I inspect one Gateway policy by ID? instructions: - text: Fetch Gateway rule {rule_id} in account {account}. slots: rule_id: path.rule_id account: path.account_id - text: Show the settings of Gateway rule {rule_id}. slots: rule_id: path.rule_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/rules/{rule_id}'].put update: x-apievangelist-phrasing: intent: Update a Zero Trust Gateway rule effect: write questions: - How do I change the action of an existing Gateway policy from allow to block? - Can I change the precedence of a Gateway rule I already created? instructions: - text: 'Update Gateway rule {rule_id} in account {account}: name {name}, action {action}.' slots: rule_id: path.rule_id account: path.account_id name: requestBody.name action: requestBody.action - text: Change Gateway rule {rule_id} ({name}, {action}) to precedence {precedence}. slots: rule_id: path.rule_id name: requestBody.name action: requestBody.action precedence: requestBody.precedence method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/gateway/rules/{rule_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Zero Trust Gateway rule effect: destructive questions: - How do I delete a Gateway policy? - Can I remove a Zero Trust filtering rule entirely rather than just disabling it? instructions: - text: Delete Gateway rule {rule_id} in account {account}. slots: rule_id: path.rule_id account: path.account_id - text: Remove Gateway policy {rule_id}. slots: rule_id: path.rule_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/hyperdrive/configs'].get update: x-apievangelist-phrasing: intent: List Hyperdrive configurations effect: read questions: - Which Hyperdrive database accelerators have I configured? - Can I see all my Hyperdrive configs in one account? instructions: - text: List the Hyperdrive configurations in account {account}. slots: account: path.account_id - text: Show all my Hyperdrives. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/hyperdrive/configs'].post update: x-apievangelist-phrasing: intent: Create a Hyperdrive configuration effect: write questions: - How do I put Hyperdrive in front of my Postgres database? - Can I set caching options when I first create a Hyperdrive? instructions: - text: Create a Hyperdrive in account {account} pointing at database origin {origin}. slots: account: path.account_id origin: requestBody.origin - text: Create Hyperdrive {name} for origin {origin} with caching {caching}. slots: name: requestBody.name origin: requestBody.origin caching: requestBody.caching method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}'].get update: x-apievangelist-phrasing: intent: Get a Hyperdrive configuration effect: read questions: - Which database origin and caching settings does one of my Hyperdrives use? - How do I look up a single Hyperdrive config by ID? instructions: - text: Fetch Hyperdrive {hyperdrive_id} in account {account}. slots: hyperdrive_id: path.hyperdrive_id account: path.account_id - text: Show the configuration of Hyperdrive {hyperdrive_id}. slots: hyperdrive_id: path.hyperdrive_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}'].put update: x-apievangelist-phrasing: intent: Replace a Hyperdrive configuration effect: write questions: - How do I fully replace the origin settings on an existing Hyperdrive? - Does updating a Hyperdrive require resending the database origin? instructions: - text: Replace Hyperdrive {hyperdrive_id} in account {account} with origin {origin}. slots: hyperdrive_id: path.hyperdrive_id account: path.account_id origin: requestBody.origin - text: Overwrite Hyperdrive {hyperdrive_id} with name {name}, origin {origin} and caching {caching}. slots: hyperdrive_id: path.hyperdrive_id name: requestBody.name origin: requestBody.origin caching: requestBody.caching method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Hyperdrive effect: destructive questions: - How do I delete a Hyperdrive I no longer need? - Can I remove a Hyperdrive configuration from my account? instructions: - text: Delete Hyperdrive {hyperdrive_id} in account {account}. slots: hyperdrive_id: path.hyperdrive_id account: path.account_id - text: Remove Hyperdrive {hyperdrive_id}. slots: hyperdrive_id: path.hyperdrive_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}'].patch update: x-apievangelist-phrasing: intent: Partially update a Hyperdrive effect: write questions: - Can I change only the caching settings of a Hyperdrive without resending the origin? - Are Hyperdrive origin changes applied all-or-nothing when I patch? instructions: - text: Patch just the caching on Hyperdrive {hyperdrive_id} in account {account} to {caching}. slots: hyperdrive_id: path.hyperdrive_id account: path.account_id caching: requestBody.caching - text: Rename Hyperdrive {hyperdrive_id} to {name}, leaving other settings as they are. slots: hyperdrive_id: path.hyperdrive_id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1'].get update: x-apievangelist-phrasing: intent: List images, up to 100 per page effect: read questions: - How do I page through my Cloudflare Images library 100 at a time? - Can I list stored images using page numbers? instructions: - text: List images in account {account} using the page-numbered listing. slots: account: path.account_id - text: Show page {page} of my images, {per_page} per page. slots: page: query.page per_page: query.per_page method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1'].post update: x-apievangelist-phrasing: intent: Upload an image effect: write questions: - How do I upload a picture to Cloudflare Images from a file or a URL? - What is the maximum file size for an image upload? - Can I require signed URLs for an image at upload time? instructions: - text: Upload an image to account {account} with metadata {metadata}. slots: account: path.account_id metadata: requestBody.metadata - text: Upload a new image and set require signed URLs to {requireSignedURLs}. slots: requireSignedURLs: requestBody.requireSignedURLs method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/{image_id}'].get update: x-apievangelist-phrasing: intent: Get an image's details effect: read questions: - What metadata and variants does a stored image have? - How can I check whether a direct-upload image is still a draft? instructions: - text: Fetch details for image {image_id} in account {account}. slots: image_id: path.image_id account: path.account_id - text: Show the metadata and variants for image {image_id}. slots: image_id: path.image_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/{image_id}'].delete update: x-apievangelist-phrasing: intent: Delete an image effect: destructive questions: - Does deleting an image also purge its cached copies? - How do I permanently remove a picture from Cloudflare Images? instructions: - text: Delete image {image_id} from account {account}. slots: image_id: path.image_id account: path.account_id - text: Remove image {image_id} and all its copies. slots: image_id: path.image_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/{image_id}'].patch update: x-apievangelist-phrasing: intent: Change an image's access control or metadata effect: write questions: - How do I make an existing image require a signed token to view? - Can I change the metadata on an image I already uploaded? instructions: - text: Set require signed URLs on image {image_id} in account {account} to {requireSignedURLs}. slots: image_id: path.image_id account: path.account_id requireSignedURLs: requestBody.requireSignedURLs - text: Replace the metadata on image {image_id} with {metadata}. slots: image_id: path.image_id metadata: requestBody.metadata method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/{image_id}/blob'].get update: x-apievangelist-phrasing: intent: Download the original base image effect: read questions: - How do I download the original file I uploaded to Cloudflare Images? - Can I get the raw image blob rather than a resized variant? instructions: - text: Download the base image blob for {image_id} in account {account}. slots: image_id: path.image_id account: path.account_id - text: Fetch the originally uploaded file of image {image_id}. slots: image_id: path.image_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/keys'].get update: x-apievangelist-phrasing: intent: List Images signing keys effect: read questions: - Which signing keys can I use to generate signed image URLs? - Where can I find my Cloudflare Images signing keys? instructions: - text: List the Images signing keys for account {account}. slots: account: path.account_id - text: Show my image URL signing keys. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/keys/{signing_key_name}'].put update: x-apievangelist-phrasing: intent: Create an Images signing key effect: write questions: - How do I create a new named key for signing image URLs? - Can I add another signing key to rotate private image access? instructions: - text: Create an Images signing key named {signing_key_name} in account {account}. slots: signing_key_name: path.signing_key_name account: path.account_id - text: Add a new URL signing key called {signing_key_name}. slots: signing_key_name: path.signing_key_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/keys/{signing_key_name}'].delete update: x-apievangelist-phrasing: intent: Delete an Images signing key effect: destructive questions: - What happens if I delete my last image signing key? - How do I revoke a signing key for private images? instructions: - text: Delete Images signing key {signing_key_name} in account {account}. slots: signing_key_name: path.signing_key_name account: path.account_id - text: Revoke the URL signing key {signing_key_name}. slots: signing_key_name: path.signing_key_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/stats'].get update: x-apievangelist-phrasing: intent: Get Images storage usage statistics effect: read questions: - How many images am I storing against my Cloudflare Images allowance? - Where can I check my image storage usage? instructions: - text: Show Cloudflare Images usage statistics for account {account}. slots: account: path.account_id - text: Get my current image count and storage limit. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/variants'].get update: x-apievangelist-phrasing: intent: List image variants effect: read questions: - Which image variants, like thumbnail or hero, have I defined? - Can I see all the resize variants for my images? instructions: - text: List the image variants in account {account}. slots: account: path.account_id - text: Show every image variant I have defined. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/variants'].post update: x-apievangelist-phrasing: intent: Create an image variant effect: write questions: - How do I define a thumbnail size that all my images can be served at? - Can a new variant be served without signed URLs even for private images? instructions: - text: Create image variant {id} in account {account} with resize options {options}. slots: id: requestBody.id account: path.account_id options: requestBody.options - text: Add variant {id} using options {options} and never require signed URLs set to {neverRequireSignedURLs}. slots: id: requestBody.id options: requestBody.options neverRequireSignedURLs: requestBody.neverRequireSignedURLs method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/variants/{variant_id}'].get update: x-apievangelist-phrasing: intent: Get an image variant effect: read questions: - What width, height and fit does a particular image variant use? - How do I look up one variant's settings? instructions: - text: Fetch image variant {variant_id} in account {account}. slots: variant_id: path.variant_id account: path.account_id - text: Show the resize settings of variant {variant_id}. slots: variant_id: path.variant_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/variants/{variant_id}'].delete update: x-apievangelist-phrasing: intent: Delete an image variant effect: destructive questions: - Does deleting a variant purge the cache for images that used it? - How do I remove an image variant I don't use anymore? instructions: - text: Delete image variant {variant_id} in account {account}. slots: variant_id: path.variant_id account: path.account_id - text: Remove the variant {variant_id}. slots: variant_id: path.variant_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v1/variants/{variant_id}'].patch update: x-apievangelist-phrasing: intent: Change an image variant's resize options effect: write questions: - How do I change the dimensions of an existing image variant? - Will editing a variant purge cached images that use it? instructions: - text: Change variant {variant_id} in account {account} to resize options {options}. slots: variant_id: path.variant_id account: path.account_id options: requestBody.options - text: Update variant {variant_id} with options {options} and set never require signed URLs to {neverRequireSignedURLs}. slots: variant_id: path.variant_id options: requestBody.options neverRequireSignedURLs: requestBody.neverRequireSignedURLs method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v2'].get update: x-apievangelist-phrasing: intent: List up to 10,000 images with a continuation token effect: read questions: - How do I list a very large image library, up to 10,000 images per request? - Can I sort my images and continue from a continuation token? instructions: - text: List images in account {account} with the V2 listing, up to {per_page} at a time. slots: account: path.account_id per_page: query.per_page - text: Continue listing my images from continuation token {continuation_token}. slots: continuation_token: query.continuation_token - text: List my images in {sort_order} order using the V2 listing. slots: sort_order: query.sort_order method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/images/v2/direct_upload'].post update: x-apievangelist-phrasing: intent: Create a one-time direct upload URL for an image effect: write questions: - How can my users upload images from the browser without my API key? - How long is a direct upload URL valid before it expires? instructions: - text: Create a direct upload URL for account {account} that expires at {expiry}. slots: account: path.account_id expiry: requestBody.expiry - text: Create a direct upload URL for an image with custom ID {id}. slots: id: requestBody.id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/asn/{asn}'].get update: x-apievangelist-phrasing: intent: Get an overview of an ASN effect: read questions: - Who operates a given autonomous system number and what country is it in? - Can I look up threat intelligence about an ASN? instructions: - text: Get the overview for ASN {asn} using account {account}. slots: asn: path.asn account: path.account_id - text: Tell me who runs autonomous system {asn}. slots: asn: path.asn method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/asn/{asn}/subnets'].get update: x-apievangelist-phrasing: intent: List the subnets announced by an ASN effect: read questions: - Which IP ranges belong to a particular autonomous system? - How do I get every subnet an ASN announces? instructions: - text: List the subnets of ASN {asn} for account {account}. slots: asn: path.asn account: path.account_id - text: Show the IP prefixes announced by autonomous system {asn}. slots: asn: path.asn method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/attack-surface-report/{issue_id}/dismiss'].put update: x-apievangelist-phrasing: intent: Dismiss a Security Center insight effect: write questions: - How do I archive a Security Center insight I've already dealt with? - Can I un-dismiss a Security Center issue later? instructions: - text: Archive Security Center insight {issue_id} in account {account}. slots: issue_id: path.issue_id account: path.account_id - text: Set dismissed to {dismiss} on Security Center issue {issue_id}. slots: dismiss: requestBody.dismiss issue_id: path.issue_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/attack-surface-report/issue-types'].get update: x-apievangelist-phrasing: intent: List Security Center issue types effect: read questions: - What kinds of issues can Security Center report? - Which issue type values can I filter Security Center insights by? instructions: - text: List the Security Center issue types for account {account}. slots: account: path.account_id - text: Show every issue type Security Center can raise. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/attack-surface-report/issues'].get update: x-apievangelist-phrasing: intent: List Security Center issues effect: read questions: - What security issues has Security Center found across my account? - Can I filter Security Center issues by severity or product and hide dismissed ones? instructions: - text: List Security Center issues for account {account}. slots: account: path.account_id - text: Show Security Center issues with severity {severity} that are not dismissed ({dismissed}). slots: severity: query.severity dismissed: query.dismissed - text: List Security Center issues affecting {subject}, page {page}. slots: subject: query.subject page: query.page method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/attack-surface-report/issues/class'].get update: x-apievangelist-phrasing: intent: Count Security Center issues by class effect: read questions: - How many Security Center issues fall into each issue class? - Can I get issue totals grouped by class for a single product? instructions: - text: Count Security Center issues by class for account {account}. slots: account: path.account_id - text: Give me Security Center issue totals per class for product {product}. slots: product: query.product method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/attack-surface-report/issues/severity'].get update: x-apievangelist-phrasing: intent: Count Security Center issues by severity effect: read questions: - How many critical, moderate and low Security Center issues do I have? - Can I break my open Security Center findings down by severity level? instructions: - text: Count Security Center issues by severity for account {account}. slots: account: path.account_id - text: Tally Security Center issues per severity level for issue class {issue_class}. slots: issue_class: query.issue_class method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/attack-surface-report/issues/type'].get update: x-apievangelist-phrasing: intent: Count Security Center issues by type effect: read questions: - Which Security Center issue types are most common in my account? - Can I see how many findings there are of each issue type? instructions: - text: Count Security Center issues by type for account {account}. slots: account: path.account_id - text: Break down Security Center issue totals per type with severity {severity}. slots: severity: query.severity method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/dns'].get update: x-apievangelist-phrasing: intent: Look up passive DNS history for an IP effect: read questions: - Which hostnames have resolved to a given IPv4 address over time? - Can I see passive DNS records for an IP within a date range? instructions: - text: Show passive DNS records for IP {ipv4} using account {account}. slots: ipv4: query.ipv4 account: path.account_id - text: List domains seen resolving to {ipv4} during {start_end_params}. slots: ipv4: query.ipv4 start_end_params: query.start_end_params method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/domain'].get update: x-apievangelist-phrasing: intent: Get intelligence details for a domain effect: read questions: - What categories and risk information does Cloudflare have for a domain? - Is a particular domain flagged as a security risk? instructions: - text: Get domain intelligence for {domain} using account {account}. slots: domain: query.domain account: path.account_id - text: Look up the category and risk details of {domain}. slots: domain: query.domain method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/domain-history'].get update: x-apievangelist-phrasing: intent: Get a domain's categorization history effect: read questions: - How has a domain's content categorization changed over time? - When was a domain first categorized the way it is now? instructions: - text: Show the categorization history for {domain} in account {account}. slots: domain: query.domain account: path.account_id - text: Get past category changes for domain {domain}. slots: domain: query.domain method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/domain/bulk'].get update: x-apievangelist-phrasing: intent: Get intelligence details for several domains effect: read questions: - Can I look up intelligence for a batch of domains in one request? - How do I check the risk categories of many domains at once? instructions: - text: Get bulk domain intelligence for domains {domain} using account {account}. slots: domain: query.domain account: path.account_id - text: 'Look up details for this list of domains all at once: {domain}.' slots: domain: query.domain method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/indicator-feeds'].get update: x-apievangelist-phrasing: intent: List my custom indicator feeds effect: read questions: - Which threat indicator feeds does my account own? - Can I see all the custom indicator feeds I've created? instructions: - text: List the indicator feeds owned by account {account}. slots: account: path.account_id - text: Show my custom threat indicator feeds. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/indicator-feeds'].post update: x-apievangelist-phrasing: intent: Create a custom indicator feed effect: write questions: - How do I create my own threat indicator feed? - Can I give a new indicator feed a name and description? instructions: - text: Create an indicator feed named {name} in account {account}. slots: name: requestBody.name account: path.account_id - text: Create a threat indicator feed {name} described as {description}. slots: name: requestBody.name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/indicator-feeds/{feed_id}'].get update: x-apievangelist-phrasing: intent: Get an indicator feed's metadata effect: read questions: - When was my indicator feed last updated and what is it called? - How do I see the metadata for one indicator feed? instructions: - text: Get metadata for indicator feed {feed_id} in account {account}. slots: feed_id: path.feed_id account: path.account_id - text: Show the name and description of indicator feed {feed_id}. slots: feed_id: path.feed_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/indicator-feeds/{feed_id}/data'].get update: x-apievangelist-phrasing: intent: Download an indicator feed's data effect: read questions: - How do I download the actual indicators in a feed? - Can I retrieve the current contents of a threat indicator feed? instructions: - text: Download the data in indicator feed {feed_id} for account {account}. slots: feed_id: path.feed_id account: path.account_id - text: Fetch the indicators stored in feed {feed_id}. slots: feed_id: path.feed_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/indicator-feeds/{feed_id}/snapshot'].put update: x-apievangelist-phrasing: intent: Replace an indicator feed's data with a snapshot effect: write questions: - How do I upload a fresh snapshot of indicators into my feed? - Can I refresh the contents of an indicator feed from a file? instructions: - text: Upload snapshot {source} as the new data for indicator feed {feed_id} in account {account}. slots: source: requestBody.source feed_id: path.feed_id account: path.account_id - text: Replace the indicators in feed {feed_id} with {source}. slots: feed_id: path.feed_id source: requestBody.source method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/indicator-feeds/permissions/add'].put update: x-apievangelist-phrasing: intent: Grant another account access to an indicator feed effect: write questions: - How do I share my indicator feed with another Cloudflare account? - Can I let a partner account read one of my threat feeds? instructions: - text: Grant account tag {account_tag} access to indicator feed {feed_id}, acting as account {account}. slots: account_tag: requestBody.account_tag feed_id: requestBody.feed_id account: path.account_id - text: Share feed {feed_id} with account {account_tag}. slots: feed_id: requestBody.feed_id account_tag: requestBody.account_tag method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/indicator-feeds/permissions/remove'].put update: x-apievangelist-phrasing: intent: Revoke an account's access to an indicator feed effect: destructive questions: - How do I stop another account from reading my indicator feed? - Can I revoke a feed permission I granted earlier? instructions: - text: Revoke account tag {account_tag}'s access to indicator feed {feed_id}, acting as account {account}. slots: account_tag: requestBody.account_tag feed_id: requestBody.feed_id account: path.account_id - text: Unshare feed {feed_id} from account {account_tag}. slots: feed_id: requestBody.feed_id account_tag: requestBody.account_tag method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/indicator-feeds/permissions/view'].get update: x-apievangelist-phrasing: intent: List indicator feed permissions effect: read questions: - Which accounts have been granted access to my indicator feeds? - Who can read the threat feeds I've shared? instructions: - text: List indicator feed permissions for account {account}. slots: account: path.account_id - text: Show which accounts my indicator feeds are shared with. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/ip'].get update: x-apievangelist-phrasing: intent: Get intelligence overview for an IP address effect: read questions: - What does Cloudflare know about a suspicious IPv4 address, like its ASN and risk? - Can I look up threat intelligence on an IPv6 address? instructions: - text: Get the IP overview for {ipv4} using account {account}. slots: ipv4: query.ipv4 account: path.account_id - text: Look up intelligence on IPv6 address {ipv6}. slots: ipv6: query.ipv6 method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/ip-list'].get update: x-apievangelist-phrasing: intent: List threat intelligence IP lists effect: read questions: - Which curated IP lists are available in Cloudflare's threat intelligence? - Where do I find the intel IP lists I can reference? instructions: - text: Get the threat intelligence IP lists for account {account}. slots: account: path.account_id - text: Show the available intel IP lists. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/miscategorization'].post update: x-apievangelist-phrasing: intent: Report a miscategorized domain, URL or IP effect: write questions: - How do I tell Cloudflare that a domain is in the wrong content category? - Can I report an IP address as wrongly flagged for security risk? instructions: - text: Report {url} as miscategorized from account {account}, adding content categories {content_adds}. slots: url: requestBody.url account: path.account_id content_adds: requestBody.content_adds - text: Submit a miscategorization for IP {ip} removing security categories {security_removes}. slots: ip: requestBody.ip security_removes: requestBody.security_removes method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/sinkholes'].get update: x-apievangelist-phrasing: intent: List my sinkholes effect: read questions: - Which DNS sinkholes does my account own? - Where can I see the sinkhole configurations for my account? instructions: - text: List the sinkholes owned by account {account}. slots: account: path.account_id - text: Show my sinkhole configurations. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/intel/whois'].get update: x-apievangelist-phrasing: intent: Get a domain's WHOIS record effect: read questions: - Who registered a domain and when does it expire? - Can I pull the WHOIS record for a domain through the intel API? instructions: - text: Get the WHOIS record for {domain} using account {account}. slots: domain: query.domain account: path.account_id - text: Show registrar and registration details for {domain}. slots: domain: query.domain method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/monitors'].get update: x-apievangelist-phrasing: intent: List load balancer health monitors effect: read questions: - Which health check monitors are configured for my load balancers? - Can I see all account-level load balancing monitors? instructions: - text: List the load balancer monitors in account {account}. slots: account: path.account_id - text: Show all my health check monitors. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/monitors'].post update: x-apievangelist-phrasing: intent: Create a load balancer health monitor effect: write questions: - How do I create a health check that probes my origins over HTTPS? - Which protocols can a load balancer monitor use, like TCP or ICMP ping? instructions: - text: Create a {type} health monitor in account {account} checking path {path}. slots: type: requestBody.type account: path.account_id path: requestBody.path - text: Create a monitor that expects status {expected_codes} every {interval} seconds. slots: expected_codes: requestBody.expected_codes interval: requestBody.interval method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/monitors/{monitor_id}'].get update: x-apievangelist-phrasing: intent: Get a load balancer monitor effect: read questions: - What path, interval and expected codes does one of my health monitors use? - How do I look up a single load balancing monitor? instructions: - text: Show load balancer monitor {monitor_id} in account {account}. slots: monitor_id: path.monitor_id account: path.account_id - text: Get the settings of health monitor {monitor_id}. slots: monitor_id: path.monitor_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/monitors/{monitor_id}'].put update: x-apievangelist-phrasing: intent: Replace a load balancer monitor's configuration effect: write questions: - How do I fully redefine an existing health monitor's settings? - Can I switch a monitor from HTTP to TCP by replacing its configuration? instructions: - text: Replace monitor {monitor_id} in account {account} with a {type} check on port {port}. slots: monitor_id: path.monitor_id account: path.account_id type: requestBody.type port: requestBody.port - text: Redefine monitor {monitor_id} in full with timeout {timeout} and {retries} retries. slots: monitor_id: path.monitor_id timeout: requestBody.timeout retries: requestBody.retries method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/monitors/{monitor_id}'].delete update: x-apievangelist-phrasing: intent: Delete a load balancer monitor effect: destructive questions: - How do I delete a health monitor that no pool uses anymore? - Can I remove a load balancing monitor from my account? instructions: - text: Delete load balancer monitor {monitor_id} in account {account}. slots: monitor_id: path.monitor_id account: path.account_id - text: Remove health monitor {monitor_id}. slots: monitor_id: path.monitor_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/monitors/{monitor_id}'].patch update: x-apievangelist-phrasing: intent: Change selected settings on a load balancer monitor effect: write questions: - Can I change just the check interval on a monitor without resending everything? - How do I tweak the expected response body of an existing health monitor? instructions: - text: Patch monitor {monitor_id} in account {account} so only its interval changes to {interval}. slots: monitor_id: path.monitor_id account: path.account_id interval: requestBody.interval - text: On monitor {monitor_id}, change only the expected body to {expected_body}. slots: monitor_id: path.monitor_id expected_body: requestBody.expected_body method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/monitors/{monitor_id}/preview'].post update: x-apievangelist-phrasing: intent: Preview a monitor's health checks against pools effect: read questions: - Can I test proposed monitor settings against my pools before saving them? - How do I dry-run a health monitor change and get a preview ID? instructions: - text: Preview pools using monitor {monitor_id} in account {account} with path {path}. slots: monitor_id: path.monitor_id account: path.account_id path: requestBody.path - text: Dry-run monitor {monitor_id} with expected codes {expected_codes} before saving. slots: monitor_id: path.monitor_id expected_codes: requestBody.expected_codes method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/monitors/{monitor_id}/references'].get update: x-apievangelist-phrasing: intent: List what references a load balancer monitor effect: read questions: - Which pools are using a particular health monitor? - What would break if I deleted this monitor? instructions: - text: List the resources that reference monitor {monitor_id} in account {account}. slots: monitor_id: path.monitor_id account: path.account_id - text: Show which pools depend on monitor {monitor_id}. slots: monitor_id: path.monitor_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools'].get update: x-apievangelist-phrasing: intent: List load balancer origin pools effect: read questions: - Which origin pools are configured for my load balancers? - Can I list only the pools that use a certain monitor? instructions: - text: List the load balancer pools in account {account}. slots: account: path.account_id - text: Show pools that use monitor {monitor}. slots: monitor: query.monitor method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools'].post update: x-apievangelist-phrasing: intent: Create a load balancer origin pool effect: write questions: - How do I group my origin servers into a load balancing pool? - Can I set a minimum number of healthy origins when creating a pool? instructions: - text: Create a pool named {name} in account {account} with origins {origins}. slots: name: requestBody.name account: path.account_id origins: requestBody.origins - text: Create pool {name} with origins {origins} health-checked by monitor {monitor}. slots: name: requestBody.name origins: requestBody.origins monitor: requestBody.monitor method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools'].patch update: x-apievangelist-phrasing: intent: Reset the notification email on many pools effect: write questions: - Can I clear the deprecated notification email on all my pools at once? - How do I bulk-update several load balancer pools in one request? instructions: - text: Set the notification email to {notification_email} across all pools in account {account}. slots: notification_email: requestBody.notification_email account: path.account_id - text: Bulk-reset the health notification email on every pool. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools/{pool_id}'].get update: x-apievangelist-phrasing: intent: Get a load balancer pool effect: read questions: - Which origins and monitor does one of my pools use? - How do I look up a single origin pool's configuration? instructions: - text: Fetch pool {pool_id} in account {account}. slots: pool_id: path.pool_id account: path.account_id - text: Show the origins configured in pool {pool_id}. slots: pool_id: path.pool_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools/{pool_id}'].put update: x-apievangelist-phrasing: intent: Replace a load balancer pool's configuration effect: write questions: - How do I redefine an existing pool's full list of origins? - Does replacing a pool require sending its name and origins again? instructions: - text: Replace pool {pool_id} in account {account} with name {name} and origins {origins}. slots: pool_id: path.pool_id account: path.account_id name: requestBody.name origins: requestBody.origins - text: Redefine pool {pool_id} as {name} with origins {origins} and check regions {check_regions}. slots: pool_id: path.pool_id name: requestBody.name origins: requestBody.origins check_regions: requestBody.check_regions method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools/{pool_id}'].delete update: x-apievangelist-phrasing: intent: Delete a load balancer pool effect: destructive questions: - How do I delete an origin pool I no longer use? - Can I remove a pool from my load balancing setup? instructions: - text: Delete pool {pool_id} in account {account}. slots: pool_id: path.pool_id account: path.account_id - text: Remove origin pool {pool_id}. slots: pool_id: path.pool_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools/{pool_id}'].patch update: x-apievangelist-phrasing: intent: Change selected settings on one pool effect: write questions: - Can I disable a single pool without resending its origins? - How do I change just the minimum healthy origins on one pool? instructions: - text: Set enabled to {enabled} on pool {pool_id} in account {account}, leaving everything else. slots: enabled: requestBody.enabled pool_id: path.pool_id account: path.account_id - text: Change only the minimum origins on pool {pool_id} to {minimum_origins}. slots: pool_id: path.pool_id minimum_origins: requestBody.minimum_origins method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools/{pool_id}/health'].get update: x-apievangelist-phrasing: intent: Get the latest health status of a pool effect: read questions: - Are the origins in my pool currently healthy? - What is the latest health check result for one pool? instructions: - text: Show the latest health status of pool {pool_id} in account {account}. slots: pool_id: path.pool_id account: path.account_id - text: Check whether origins in pool {pool_id} are healthy right now. slots: pool_id: path.pool_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools/{pool_id}/preview'].post update: x-apievangelist-phrasing: intent: Preview a pool's health with proposed monitor settings effect: read questions: - Can I see how a pool would fare under different health check settings before committing? - How do I preview a pool's health with an HTTPS monitor I haven't saved yet? instructions: - text: Preview health of pool {pool_id} in account {account} using a {type} check on path {path}. slots: pool_id: path.pool_id account: path.account_id type: requestBody.type path: requestBody.path - text: Test pool {pool_id} against monitor settings with timeout {timeout}. slots: pool_id: path.pool_id timeout: requestBody.timeout method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/pools/{pool_id}/references'].get update: x-apievangelist-phrasing: intent: List what references a load balancer pool effect: read questions: - Which load balancers route traffic to a given pool? - Is anything still using this pool before I delete it? instructions: - text: List resources referencing pool {pool_id} in account {account}. slots: pool_id: path.pool_id account: path.account_id - text: Show the load balancers that depend on pool {pool_id}. slots: pool_id: path.pool_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/preview/{preview_id}'].get update: x-apievangelist-phrasing: intent: Get the result of a monitor or pool preview effect: read questions: - How do I read the results of a health check preview I started? - Where do I use the preview ID returned by a monitor or pool preview? instructions: - text: Get the results of preview {preview_id} in account {account}. slots: preview_id: path.preview_id account: path.account_id - text: Show the health check outcome for preview {preview_id}. slots: preview_id: path.preview_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/regions'].get update: x-apievangelist-phrasing: intent: List load balancing region mappings effect: read questions: - Which load balancing region does a given country map to? - Can I filter region mappings by subdivision code? instructions: - text: List all load balancing region mappings for account {account}. slots: account: path.account_id - text: Show the region mapping for country code {country_code_a2}. slots: country_code_a2: query.country_code_a2 method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/regions/{region_id}'].get update: x-apievangelist-phrasing: intent: Get one load balancing region effect: read questions: - Which countries are included in a particular load balancing region? - How do I look up a single region code like WNAM? instructions: - text: Get load balancing region {region_id} for account {account}. slots: region_id: path.region_id account: path.account_id - text: Show the countries in region {region_id}. slots: region_id: path.region_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/load_balancers/search'].get update: x-apievangelist-phrasing: intent: Search load balancing resources effect: read questions: - How do I find a pool or monitor by searching across my load balancing setup? - Can I search load balancing resources and page through the results? instructions: - text: Search load balancing resources in account {account} for {search_params}. slots: account: path.account_id search_params: query.search_params - text: Find load balancer pools and monitors matching {search_params}, page {page}. slots: search_params: query.search_params page: query.page method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/datasets/{dataset_id}/fields'].get update: x-apievangelist-phrasing: intent: List the fields available in a Logpush dataset effect: read questions: - Which log fields can I include when pushing a given dataset? - What does each field in a Logpush dataset mean? instructions: - text: List the available fields for Logpush dataset {dataset_id} in account {account}. slots: dataset_id: path.dataset_id account: path.account_id - text: Show field names and descriptions for log dataset {dataset_id}. slots: dataset_id: path.dataset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/datasets/{dataset_id}/jobs'].get update: x-apievangelist-phrasing: intent: List Logpush jobs for one dataset effect: read questions: - Which Logpush jobs are shipping a particular dataset? - Can I list only the jobs that push one log dataset? instructions: - text: List Logpush jobs for dataset {dataset_id} in account {account}. slots: dataset_id: path.dataset_id account: path.account_id - text: Show the jobs that export log dataset {dataset_id}. slots: dataset_id: path.dataset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/jobs'].get update: x-apievangelist-phrasing: intent: List all account Logpush jobs effect: read questions: - What Logpush jobs are running at the account level? - Where are all my account logs being pushed? instructions: - text: List every Logpush job in account {account}. slots: account: path.account_id - text: Show all my account-level log push jobs. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/jobs'].post update: x-apievangelist-phrasing: intent: Create a Logpush job effect: write questions: - How do I start pushing account logs to an S3 bucket? - Can I choose the dataset and output format when creating a Logpush job? instructions: - text: Create a Logpush job in account {account} sending logs to {destination_conf}. slots: account: path.account_id destination_conf: requestBody.destination_conf - text: Create Logpush job {name} pushing dataset {dataset} to {destination_conf} with ownership challenge {ownership_challenge}. slots: name: requestBody.name dataset: requestBody.dataset destination_conf: requestBody.destination_conf ownership_challenge: requestBody.ownership_challenge method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/jobs/{job_id}'].get update: x-apievangelist-phrasing: intent: Get a Logpush job effect: read questions: - Is a particular Logpush job enabled, and where does it send logs? - When did my Logpush job last push successfully? instructions: - text: Get Logpush job {job_id} in account {account}. slots: job_id: path.job_id account: path.account_id - text: Show the destination and status of Logpush job {job_id}. slots: job_id: path.job_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/jobs/{job_id}'].put update: x-apievangelist-phrasing: intent: Update a Logpush job effect: write questions: - How do I pause an existing Logpush job? - Can I change the destination or output options of a Logpush job? instructions: - text: Set enabled to {enabled} on Logpush job {job_id} in account {account}. slots: enabled: requestBody.enabled job_id: path.job_id account: path.account_id - text: Point Logpush job {job_id} at new destination {destination_conf}. slots: job_id: path.job_id destination_conf: requestBody.destination_conf method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/jobs/{job_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Logpush job effect: destructive questions: - How do I stop and remove a Logpush job permanently? - Can I delete a log export job from my account? instructions: - text: Delete Logpush job {job_id} in account {account}. slots: job_id: path.job_id account: path.account_id - text: Remove log push job {job_id}. slots: job_id: path.job_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/ownership'].post update: x-apievangelist-phrasing: intent: Request a Logpush destination ownership challenge effect: write questions: - How do I prove I own the bucket before creating a Logpush job? - Can Cloudflare send an ownership challenge file to my log destination? instructions: - text: Send a new Logpush ownership challenge to {destination_conf} for account {account}. slots: destination_conf: requestBody.destination_conf account: path.account_id - text: Request an ownership challenge file for destination {destination_conf}. slots: destination_conf: requestBody.destination_conf method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/ownership/validate'].post update: x-apievangelist-phrasing: intent: Validate a Logpush ownership challenge effect: read questions: - How do I confirm the ownership challenge token for my log destination is correct? - Is my Logpush destination ownership verified? instructions: - text: Validate ownership challenge {ownership_challenge} for destination {destination_conf} in account {account}. slots: ownership_challenge: requestBody.ownership_challenge destination_conf: requestBody.destination_conf account: path.account_id - text: Check that token {ownership_challenge} proves I own {destination_conf}. slots: ownership_challenge: requestBody.ownership_challenge destination_conf: requestBody.destination_conf method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/validate/destination/exists'].post update: x-apievangelist-phrasing: intent: Check if a Logpush job already uses a destination effect: read questions: - Is there already a Logpush job writing to this bucket? - Can I check for an existing job before reusing a log destination? instructions: - text: Check whether any Logpush job in account {account} already uses {destination_conf}. slots: account: path.account_id destination_conf: requestBody.destination_conf - text: Tell me if destination {destination_conf} is taken by an existing job. slots: destination_conf: requestBody.destination_conf method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logpush/validate/origin'].post update: x-apievangelist-phrasing: intent: Validate Logpush logpull options effect: read questions: - Are my logpull options string and field list valid before I create a job? - How do I check a Logpush options configuration for errors? instructions: - text: Validate logpull options {logpull_options} for account {account}. slots: logpull_options: requestBody.logpull_options account: path.account_id - text: Check that options string {logpull_options} is valid. slots: logpull_options: requestBody.logpull_options method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logs/control/cmb/config'].get update: x-apievangelist-phrasing: intent: Get the Customer Metadata Boundary config effect: read questions: - Which region is my log metadata restricted to? - Is a Customer Metadata Boundary configured on my account? instructions: - text: Get the CMB config for account {account}. slots: account: path.account_id - text: Show my Customer Metadata Boundary regions. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logs/control/cmb/config'].post update: x-apievangelist-phrasing: intent: Set the Customer Metadata Boundary regions effect: write questions: - How do I keep my log metadata stored only in the EU? - Can I change which region my Customer Metadata Boundary uses? instructions: - text: Set the CMB regions for account {account} to {regions}. slots: account: path.account_id regions: requestBody.regions - text: Restrict my log metadata storage to {regions}. slots: regions: requestBody.regions method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/logs/control/cmb/config'].delete update: x-apievangelist-phrasing: intent: Remove the Customer Metadata Boundary config effect: destructive questions: - How do I remove the regional restriction on my log metadata? - Can I delete my Customer Metadata Boundary setting? instructions: - text: Delete the CMB config for account {account}. slots: account: path.account_id - text: Remove my Customer Metadata Boundary restriction. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/members'].get update: x-apievangelist-phrasing: intent: List account members effect: read questions: - Who has access to my Cloudflare account? - Can I list only members with a pending invitation? instructions: - text: List the members of account {account}. slots: account: path.account_id - text: Show account members with status {status}, sorted by {order} {direction}. slots: status: query.status order: query.order direction: query.direction method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/members'].post update: x-apievangelist-phrasing: intent: Invite a user to the account effect: write questions: - How do I invite a teammate to my account with specific roles? - Can I add a member directly as accepted instead of pending? instructions: - text: Invite {email} to account {account} with roles {roles}. slots: email: requestBody.email account: path.account_id roles: requestBody.roles - text: Add {email} as a member with roles {roles} and status {status}. slots: email: requestBody.email roles: requestBody.roles status: requestBody.status method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/members/{member_id}'].get update: x-apievangelist-phrasing: intent: Get an account member effect: read questions: - What roles does a specific member have on my account? - Has a particular invited member accepted yet? instructions: - text: Show member {member_id} of account {account}. slots: member_id: path.member_id account: path.account_id - text: Get the roles and status of member {member_id}. slots: member_id: path.member_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/members/{member_id}'].put update: x-apievangelist-phrasing: intent: Change an account member's roles effect: write questions: - How do I give an existing member admin access? - Can I change which roles a team member holds? instructions: - text: Change member {member_id} in account {account} to roles {roles}. slots: member_id: path.member_id account: path.account_id roles: requestBody.roles - text: Update member {member_id} with roles {roles} and status {status}. slots: member_id: path.member_id roles: requestBody.roles status: requestBody.status method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/members/{member_id}'].delete update: x-apievangelist-phrasing: intent: Remove a member from the account effect: destructive questions: - How do I revoke a former employee's access to our account? - Can I remove someone from the account's member list? instructions: - text: Remove member {member_id} from account {account}. slots: member_id: path.member_id account: path.account_id - text: Revoke account access for member {member_id}. slots: member_id: path.member_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/mtls_certificates'].get update: x-apievangelist-phrasing: intent: List mTLS certificates effect: read questions: - Which mTLS certificates have I uploaded? - Can I see all client and CA certificates used for mutual TLS? instructions: - text: List the mTLS certificates in account {account}. slots: account: path.account_id - text: Show all my uploaded mTLS certificates. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/mtls_certificates'].post update: x-apievangelist-phrasing: intent: Upload an mTLS certificate effect: write questions: - How do I upload a CA certificate for mTLS-enabled services? - Can I upload a leaf certificate with its private key for mutual TLS? instructions: - text: Upload mTLS certificate {certificates} to account {account} with CA flag {ca}. slots: certificates: requestBody.certificates account: path.account_id ca: requestBody.ca - text: Upload certificate {certificates} named {name} as a CA ({ca}). slots: certificates: requestBody.certificates name: requestBody.name ca: requestBody.ca method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/mtls_certificates/{mtls_certificate_id}'].get update: x-apievangelist-phrasing: intent: Get an mTLS certificate effect: read questions: - When does one of my mTLS certificates expire? - How do I look up a single uploaded mTLS certificate? instructions: - text: Fetch mTLS certificate {mtls_certificate_id} in account {account}. slots: mtls_certificate_id: path.mtls_certificate_id account: path.account_id - text: Show issuer and expiry for mTLS certificate {mtls_certificate_id}. slots: mtls_certificate_id: path.mtls_certificate_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/mtls_certificates/{mtls_certificate_id}'].delete update: x-apievangelist-phrasing: intent: Delete an mTLS certificate effect: destructive questions: - Why can't I delete an mTLS certificate that is still in use by a service? - How do I remove an old mTLS certificate? instructions: - text: Delete mTLS certificate {mtls_certificate_id} in account {account}. slots: mtls_certificate_id: path.mtls_certificate_id account: path.account_id - text: Remove unused mTLS certificate {mtls_certificate_id}. slots: mtls_certificate_id: path.mtls_certificate_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/mtls_certificates/{mtls_certificate_id}/associations'].get update: x-apievangelist-phrasing: intent: List services using an mTLS certificate effect: read questions: - Which Cloudflare services are currently using my mTLS certificate? - What is blocking me from deleting this mTLS certificate? instructions: - text: List active associations for mTLS certificate {mtls_certificate_id} in account {account}. slots: mtls_certificate_id: path.mtls_certificate_id account: path.account_id - text: Show which services reference mTLS certificate {mtls_certificate_id}. slots: mtls_certificate_id: path.mtls_certificate_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects'].get update: x-apievangelist-phrasing: intent: List Pages projects effect: read questions: - Which Cloudflare Pages projects do I have? - Can I see all my Pages sites in one list? instructions: - text: List the Pages projects in account {account}. slots: account: path.account_id - text: Show all my Pages projects. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects'].post update: x-apievangelist-phrasing: intent: Create a Pages project effect: write questions: - How do I create a new Pages project connected to a production branch? - Can I set the build command and output directory when creating a Pages project? instructions: - text: Create a Pages project named {name} in account {account}. slots: name: requestBody.name account: path.account_id - text: Create Pages project {name} deploying production from branch {production_branch}. slots: name: requestBody.name production_branch: requestBody.production_branch - text: Create Pages project {name} with build config {build_config}. slots: name: requestBody.name build_config: requestBody.build_config method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}'].get update: x-apievangelist-phrasing: intent: Get a Pages project effect: read questions: - What is the production branch and latest deployment of a Pages project? - How do I look up one Pages project by name? instructions: - text: Fetch Pages project {project_name} in account {account}. slots: project_name: path.project_name account: path.account_id - text: Show the settings of Pages project {project_name}. slots: project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}'].delete update: x-apievangelist-phrasing: intent: Delete a Pages project effect: destructive questions: - How do I delete a Pages site entirely? - Can I remove a Pages project by its name? instructions: - text: Delete Pages project {project_name} in account {account}. slots: project_name: path.project_name account: path.account_id - text: Remove the Pages project {project_name}. slots: project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}'].patch update: x-apievangelist-phrasing: intent: Update a Pages project's settings or env vars effect: write questions: - How do I change environment variables on a Pages project? - How do I delete an environment variable from a Pages project? instructions: - text: Update the settings of Pages project {project_name} in account {account}. slots: project_name: path.project_name account: path.account_id - text: Change the environment variables on Pages project {project_name}. slots: project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/deployments'].get update: x-apievangelist-phrasing: intent: List a Pages project's deployments effect: read questions: - What deployments have been made for my Pages project? - Can I see the deployment history of a Pages site? instructions: - text: List deployments of Pages project {project_name} in account {account}. slots: project_name: path.project_name account: path.account_id - text: Show the deployment history for {project_name}. slots: project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/deployments'].post update: x-apievangelist-phrasing: intent: Start a new Pages deployment effect: write questions: - How do I trigger a fresh build of my Pages site? - Can I deploy a branch other than production to Pages? instructions: - text: Start a new deployment of Pages project {project_name} in account {account}. slots: project_name: path.project_name account: path.account_id - text: Deploy branch {branch} of Pages project {project_name}. slots: branch: requestBody.branch project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}'].get update: x-apievangelist-phrasing: intent: Get a Pages deployment effect: read questions: - Did a particular Pages deployment succeed, and what URL did it get? - How do I inspect one deployment of my Pages site? instructions: - text: Get deployment {deployment_id} of Pages project {project_name} in account {account}. slots: deployment_id: path.deployment_id project_name: path.project_name account: path.account_id - text: Show the status and URL of deployment {deployment_id} for {project_name}. slots: deployment_id: path.deployment_id project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Pages deployment effect: destructive questions: - How do I delete an old preview deployment of my Pages site? - Can I remove a single deployment from a Pages project? instructions: - text: Delete deployment {deployment_id} from Pages project {project_name} in account {account}. slots: deployment_id: path.deployment_id project_name: path.project_name account: path.account_id - text: Remove deployment {deployment_id} of {project_name}. slots: deployment_id: path.deployment_id project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/history/logs'].get update: x-apievangelist-phrasing: intent: Get a Pages deployment's build logs effect: read questions: - Why did my Pages build fail? Where are the build logs? - Can I read the log output from a Pages deployment? instructions: - text: Fetch build logs for deployment {deployment_id} of Pages project {project_name} in account {account}. slots: deployment_id: path.deployment_id project_name: path.project_name account: path.account_id - text: Show the log output of {project_name} deployment {deployment_id}. slots: project_name: path.project_name deployment_id: path.deployment_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/retry'].post update: x-apievangelist-phrasing: intent: Retry a Pages deployment effect: write questions: - How do I re-run a Pages deployment that failed? - Can I retry a previous Pages build without pushing a new commit? instructions: - text: Retry deployment {deployment_id} of Pages project {project_name} in account {account}. slots: deployment_id: path.deployment_id project_name: path.project_name account: path.account_id - text: Re-run the build for {project_name} deployment {deployment_id}. slots: project_name: path.project_name deployment_id: path.deployment_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/rollback'].post update: x-apievangelist-phrasing: intent: Roll production back to a previous Pages deployment effect: write questions: - How do I roll my Pages site back to an earlier deployment after a bad release? - Can I roll back to a deployment that failed, or only successful production builds? instructions: - text: Roll production of Pages project {project_name} in account {account} back to deployment {deployment_id}. slots: project_name: path.project_name account: path.account_id deployment_id: path.deployment_id - text: Revert {project_name} production to deployment {deployment_id}. slots: project_name: path.project_name deployment_id: path.deployment_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/domains'].get update: x-apievangelist-phrasing: intent: List a Pages project's custom domains effect: read questions: - Which custom domains are attached to my Pages project? - Can I see the validation status of all domains on a Pages site? instructions: - text: List the domains of Pages project {project_name} in account {account}. slots: project_name: path.project_name account: path.account_id - text: Show all custom domains attached to {project_name}. slots: project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/domains'].post update: x-apievangelist-phrasing: intent: Add a custom domain to a Pages project effect: write questions: - How do I point my own domain at a Pages site? - Can I attach a new custom domain to an existing Pages project? instructions: - text: Add a custom domain to Pages project {project_name} in account {account}. slots: project_name: path.project_name account: path.account_id - text: Attach a new domain to Pages project {project_name}. slots: project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}'].get update: x-apievangelist-phrasing: intent: Get a Pages custom domain effect: read questions: - Is my custom domain on Pages verified and active? - How do I check the status of one domain on a Pages project? instructions: - text: Get domain {domain_name} on Pages project {project_name} in account {account}. slots: domain_name: path.domain_name project_name: path.project_name account: path.account_id - text: Show the status of {domain_name} for {project_name}. slots: domain_name: path.domain_name project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}'].delete update: x-apievangelist-phrasing: intent: Remove a custom domain from a Pages project effect: destructive questions: - How do I detach a custom domain from my Pages site? - Can I delete a domain from a Pages project? instructions: - text: Delete domain {domain_name} from Pages project {project_name} in account {account}. slots: domain_name: path.domain_name project_name: path.project_name account: path.account_id - text: Detach {domain_name} from {project_name}. slots: domain_name: path.domain_name project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}'].patch update: x-apievangelist-phrasing: intent: Retry validation of a Pages custom domain effect: write questions: - My Pages custom domain is stuck pending. How do I retry its validation? - Can I re-trigger domain verification for a Pages project? instructions: - text: Retry validation for domain {domain_name} on Pages project {project_name} in account {account}. slots: domain_name: path.domain_name project_name: path.project_name account: path.account_id - text: Re-check verification of {domain_name} for {project_name}. slots: domain_name: path.domain_name project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pages/projects/{project_name}/purge_build_cache'].post update: x-apievangelist-phrasing: intent: Purge a Pages project's build cache effect: destructive questions: - How do I clear cached build artifacts that are breaking my Pages builds? - Can I force a clean build of my Pages project? instructions: - text: Purge the build cache of Pages project {project_name} in account {account}. slots: project_name: path.project_name account: path.account_id - text: Clear all cached build artifacts for {project_name}. slots: project_name: path.project_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pcaps'].get update: x-apievangelist-phrasing: intent: List packet capture requests effect: read questions: - What packet captures have been requested on my account? - Can I see the status of all my PCAP requests? instructions: - text: List the packet capture requests in account {account}. slots: account: path.account_id - text: Show all my PCAP requests. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pcaps'].post update: x-apievangelist-phrasing: intent: Request a new packet capture effect: write questions: - How do I start a packet capture on my Magic network traffic? - Can I kick off a PCAP collection through the API? instructions: - text: Create a new packet capture request for account {account}. slots: account: path.account_id - text: Start a new PCAP collection. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pcaps/{pcap_id}'].get update: x-apievangelist-phrasing: intent: Get a packet capture request effect: read questions: - Has my packet capture finished yet? - How do I check the status of one PCAP request? instructions: - text: Get PCAP request {pcap_id} in account {account}. slots: pcap_id: path.pcap_id account: path.account_id - text: Show the status of packet capture {pcap_id}. slots: pcap_id: path.pcap_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pcaps/{pcap_id}/download'].get update: x-apievangelist-phrasing: intent: Download a simple packet capture file effect: read questions: - How do I download the PCAP file for Wireshark once a capture completes? - Can I get a finished packet capture as a binary file? instructions: - text: Download packet capture {pcap_id} from account {account} as a PCAP file. slots: pcap_id: path.pcap_id account: path.account_id - text: Save the binary PCAP for capture {pcap_id}. slots: pcap_id: path.pcap_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pcaps/ownership'].get update: x-apievangelist-phrasing: intent: List buckets configured for full packet captures effect: read questions: - Which storage buckets are set up to receive full packet captures? - Where do my full PCAPs get written? instructions: - text: List the PCAP buckets configured for account {account}. slots: account: path.account_id - text: Show buckets registered for full packet captures. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pcaps/ownership'].post update: x-apievangelist-phrasing: intent: Add a bucket for full packet captures effect: write questions: - How do I register an AWS or GCP bucket to store full packet captures? - Can full PCAPs be written to my own cloud storage bucket? instructions: - text: Add bucket {destination_conf} for full packet captures in account {account}. slots: destination_conf: requestBody.destination_conf account: path.account_id - text: Register {destination_conf} as a full PCAP destination. slots: destination_conf: requestBody.destination_conf method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pcaps/ownership/{ownership_id}'].delete update: x-apievangelist-phrasing: intent: Remove a full packet capture bucket effect: destructive questions: - How do I unregister a bucket from full packet captures? - Can I stop sending PCAPs to a bucket I added earlier? instructions: - text: Delete PCAP bucket ownership {ownership_id} in account {account}. slots: ownership_id: path.ownership_id account: path.account_id - text: Remove full packet capture bucket {ownership_id}. slots: ownership_id: path.ownership_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/pcaps/ownership/validate'].post update: x-apievangelist-phrasing: intent: Validate ownership of a packet capture bucket effect: write questions: - How do I prove I own the bucket I added for full packet captures? - What do I send back to validate a PCAP bucket's ownership challenge? instructions: - text: Validate PCAP bucket {destination_conf} with challenge {ownership_challenge} in account {account}. slots: destination_conf: requestBody.destination_conf ownership_challenge: requestBody.ownership_challenge account: path.account_id - text: Confirm ownership of capture bucket {destination_conf} using token {ownership_challenge}. slots: destination_conf: requestBody.destination_conf ownership_challenge: requestBody.ownership_challenge method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/r2/buckets'].get update: x-apievangelist-phrasing: intent: List R2 buckets effect: read questions: - Which R2 storage buckets do I have? - Can I find R2 buckets whose name contains a certain word? instructions: - text: List the R2 buckets in account {account}. slots: account: path.account_id - text: Show R2 buckets whose names contain {name_contains}. slots: name_contains: query.name_contains - text: List R2 buckets after {start_after}, {per_page} per page. slots: start_after: query.start_after per_page: query.per_page method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/r2/buckets'].post update: x-apievangelist-phrasing: intent: Create an R2 bucket effect: write questions: - How do I create a new R2 object storage bucket? - Can I give a location hint so my R2 bucket lives near my users? instructions: - text: Create an R2 bucket named {name} in account {account}. slots: name: requestBody.name account: path.account_id - text: Create R2 bucket {name} with location hint {locationHint}. slots: name: requestBody.name locationHint: requestBody.locationHint method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/r2/buckets/{bucket_name}'].get update: x-apievangelist-phrasing: intent: Get an R2 bucket's metadata effect: read questions: - When was an R2 bucket created and in which location? - How do I look up one R2 bucket's details? instructions: - text: Get metadata for R2 bucket {bucket_name} in account {account}. slots: bucket_name: path.bucket_name account: path.account_id - text: Show the details of R2 bucket {bucket_name}. slots: bucket_name: path.bucket_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/r2/buckets/{bucket_name}'].delete update: x-apievangelist-phrasing: intent: Delete an R2 bucket effect: destructive questions: - How do I delete an R2 bucket I no longer use? - Can I remove an existing R2 bucket from my account? instructions: - text: Delete R2 bucket {bucket_name} in account {account}. slots: bucket_name: path.bucket_name account: path.account_id - text: Remove the R2 bucket {bucket_name}. slots: bucket_name: path.bucket_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/r2/buckets/{bucket_name}/sippy'].get update: x-apievangelist-phrasing: intent: Get an R2 bucket's Sippy migration config effect: read questions: - Is Sippy incremental migration turned on for my R2 bucket? - Which source bucket is Sippy copying objects from into R2? instructions: - text: Get the Sippy configuration for R2 bucket {bucket_name} in account {account}. slots: bucket_name: path.bucket_name account: path.account_id - text: Show whether Sippy is enabled on bucket {bucket_name}. slots: bucket_name: path.bucket_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/r2/buckets/{bucket_name}/sippy'].put update: x-apievangelist-phrasing: intent: Enable Sippy migration on an R2 bucket effect: write questions: - How do I turn on Sippy for an existing R2 bucket? - Can I configure incremental migration into an R2 bucket with Sippy? instructions: - text: Enable Sippy on R2 bucket {bucket_name} in account {account_id}. slots: bucket_name: path.bucket_name account_id: path.account_id - text: Set the Sippy configuration for bucket {bucket_name}. slots: bucket_name: path.bucket_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/r2/buckets/{bucket_name}/sippy'].delete update: x-apievangelist-phrasing: intent: Disable Sippy on an R2 bucket effect: destructive questions: - How do I switch off Sippy on one of my R2 buckets? - What happens to a bucket's Sippy setup when I disable it? instructions: - text: Disable Sippy on R2 bucket {bucket_name} in account {account_id}. slots: bucket_name: path.bucket_name account_id: path.account_id - text: Stop Sippy migration for bucket {bucket_name}. slots: bucket_name: path.bucket_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/registrar/domains'].get update: x-apievangelist-phrasing: intent: List domains registered with Registrar effect: read questions: - Which domains do I have registered through Cloudflare Registrar? - Can I see every domain Registrar manages for my account? instructions: - text: List the Registrar domains in account {account_id}. slots: account_id: path.account_id - text: Show me all my registered domains. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/registrar/domains/{domain_name}'].get update: x-apievangelist-phrasing: intent: Get one Registrar domain effect: read questions: - How do I look up the registration details of a single domain I own? - Is auto-renew or privacy turned on for one of my registered domains? instructions: - text: Show Registrar details for domain {domain_name} in account {account_id}. slots: domain_name: path.domain_name account_id: path.account_id - text: Get the registration record for {domain_name}. slots: domain_name: path.domain_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/registrar/domains/{domain_name}'].put update: x-apievangelist-phrasing: intent: Update a registered domain's settings effect: write questions: - How do I turn on auto-renew for a domain I registered? - Can I lock a registered domain or enable WHOIS privacy on it? instructions: - text: Turn auto-renew to {auto_renew} for domain {domain_name} in account {account_id}. slots: auto_renew: requestBody.auto_renew domain_name: path.domain_name account_id: path.account_id - text: Set the transfer lock on {domain_name} to {locked} and privacy to {privacy}. slots: domain_name: path.domain_name locked: requestBody.locked privacy: requestBody.privacy method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/roles'].get update: x-apievangelist-phrasing: intent: List roles available in an account effect: read questions: - What roles can I assign to members of my account? - Which permission roles exist for this account? instructions: - text: List all roles available in account {account_id}. slots: account_id: path.account_id - text: Show me the account roles I can give to members. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/roles/{role_id}'].get update: x-apievangelist-phrasing: intent: Get details of an account role effect: read questions: - What permissions does a specific account role grant? - How can I inspect one role before assigning it? instructions: - text: Show the details of role {role_id} in account {account_id}. slots: role_id: path.role_id account_id: path.account_id - text: Get the permissions granted by role {role_id}. slots: role_id: path.role_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists'].get update: x-apievangelist-phrasing: intent: List custom lists in an account effect: read questions: - Which IP and redirect lists exist in my account? - Can I see all the custom lists my rules can reference? instructions: - text: List every custom list in account {account_id}. slots: account_id: path.account_id - text: Show me all my rules lists. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists'].post update: x-apievangelist-phrasing: intent: Create a custom list effect: write questions: - How do I create a new IP list to use in firewall rules? - What kinds of lists can I create for my account? instructions: - text: Create a {kind} list named {name} in account {account_id}. slots: kind: requestBody.kind name: requestBody.name account_id: path.account_id - text: Create a list called {name} of kind {kind} described as {description}. slots: name: requestBody.name kind: requestBody.kind description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists/{list_id}'].get update: x-apievangelist-phrasing: intent: Get a custom list's details effect: read questions: - How do I see the details of one custom list, like its kind and item count? - When was a particular list last modified? instructions: - text: Show details of list {list_id} in account {account_id}. slots: list_id: path.list_id account_id: path.account_id - text: Fetch the metadata for list {list_id}. slots: list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists/{list_id}'].put update: x-apievangelist-phrasing: intent: Change a custom list's description effect: write questions: - Can I edit the description of an existing list? - How do I relabel a list without touching its items? instructions: - text: Set the description of list {list_id} in account {account_id} to {description}. slots: list_id: path.list_id account_id: path.account_id description: requestBody.description - text: Update list {list_id} with description {description}. slots: list_id: path.list_id description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists/{list_id}'].delete update: x-apievangelist-phrasing: intent: Delete a custom list effect: destructive questions: - How do I delete a list along with all of its items? - Can I remove a custom list I no longer use? instructions: - text: Delete list {list_id} from account {account_id}. slots: list_id: path.list_id account_id: path.account_id - text: Remove list {list_id} and everything in it. slots: list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists/{list_id}/items'].get update: x-apievangelist-phrasing: intent: List the items in a custom list effect: read questions: - How do I see which IPs are in one of my lists? - Can I search a list's items for a specific value? - Is there a page size limit when reading list items? instructions: - text: Show the items in list {list_id} of account {account_id}. slots: list_id: path.list_id account_id: path.account_id - text: Search list {list_id} for items matching {search}. slots: list_id: path.list_id search: query.search method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists/{list_id}/items'].put update: x-apievangelist-phrasing: intent: Replace all items in a custom list effect: destructive questions: - How do I overwrite a list's entire contents with a new set of items? - Is replacing all list items asynchronous? instructions: - text: Replace every item in list {list_id} of account {account_id} with the new set. slots: list_id: path.list_id account_id: path.account_id - text: Wipe list {list_id} and load these items instead. slots: list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists/{list_id}/items'].post update: x-apievangelist-phrasing: intent: Append items to a custom list effect: write questions: - How do I add new IP addresses to an existing list without removing the old ones? - Can I append entries to a list in bulk? instructions: - text: Append these items to list {list_id} in account {account_id}. slots: list_id: path.list_id account_id: path.account_id - text: Add the following entries to list {list_id}, keeping what is already there. slots: list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rules/lists/{list_id}/items'].delete update: x-apievangelist-phrasing: intent: Remove items from a custom list effect: destructive questions: - How do I remove a few entries from a list? - Can I delete specific items from a list by their IDs? instructions: - text: Remove items {items} from list {list_id} in account {account_id}. slots: items: requestBody.items list_id: path.list_id account_id: path.account_id - text: Delete the selected entries from list {list_id}. slots: list_id: path.list_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets'].get update: x-apievangelist-phrasing: intent: List account-level rulesets effect: read questions: - Which rulesets are defined at the account level? - Can I see all the account rulesets, managed and custom? instructions: - text: List the rulesets in account {account_id}. slots: account_id: path.account_id - text: Show me every account-level ruleset. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets'].post update: x-apievangelist-phrasing: intent: Create an account ruleset effect: write questions: - How do I create a custom ruleset at the account level? - What do I need to supply to build a new account ruleset with rules? instructions: - text: Create a ruleset named {name} for phase {phase} in account {account_id}. slots: name: requestBody.name phase: requestBody.phase account_id: path.account_id - text: 'Create a {kind} account ruleset with these rules: {rules}.' slots: kind: requestBody.kind rules: requestBody.rules method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}'].get update: x-apievangelist-phrasing: intent: Get the latest version of an account ruleset effect: read questions: - How do I view the current rules in one account ruleset? - What does the latest version of a ruleset contain? instructions: - text: Show ruleset {ruleset_id} in account {account_id}. slots: ruleset_id: path.ruleset_id account_id: path.account_id - text: Fetch the latest version of ruleset {ruleset_id}. slots: ruleset_id: path.ruleset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}'].put update: x-apievangelist-phrasing: intent: Update an account ruleset effect: write questions: - How do I replace the rules of an account ruleset? - Does updating a ruleset create a new version? instructions: - text: Update ruleset {ruleset_id} in account {account_id} with rules {rules}. slots: ruleset_id: path.ruleset_id account_id: path.account_id rules: requestBody.rules - text: Change the description of ruleset {ruleset_id} to {description}. slots: ruleset_id: path.ruleset_id description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}'].delete update: x-apievangelist-phrasing: intent: Delete an account ruleset effect: destructive questions: - How do I delete an account ruleset and all its versions? - Can I remove a custom ruleset I no longer need? instructions: - text: Delete ruleset {ruleset_id} from account {account_id}. slots: ruleset_id: path.ruleset_id account_id: path.account_id - text: Remove every version of ruleset {ruleset_id}. slots: ruleset_id: path.ruleset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}/rules'].post update: x-apievangelist-phrasing: intent: Add a rule to an account ruleset effect: write questions: - How do I add a single rule to an existing account ruleset? - Can I control where a new rule is placed in the ruleset's order? instructions: - text: Add a rule to ruleset {ruleset_id} in account {account_id}. slots: ruleset_id: path.ruleset_id account_id: path.account_id - text: Insert a new rule into ruleset {ruleset_id} at position {position}. slots: ruleset_id: path.ruleset_id position: requestBody.position method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}/rules/{rule_id}'].delete update: x-apievangelist-phrasing: intent: Delete a rule from an account ruleset effect: destructive questions: - How do I remove one rule from an account ruleset? - Can I delete a single rule without deleting the whole ruleset? instructions: - text: Delete rule {rule_id} from ruleset {ruleset_id} in account {account_id}. slots: rule_id: path.rule_id ruleset_id: path.ruleset_id account_id: path.account_id - text: Remove rule {rule_id} of ruleset {ruleset_id}. slots: rule_id: path.rule_id ruleset_id: path.ruleset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}/rules/{rule_id}'].patch update: x-apievangelist-phrasing: intent: Update a rule in an account ruleset effect: write questions: - How do I edit one existing rule inside an account ruleset? - Can I move a rule to a different position in its ruleset? instructions: - text: Update rule {rule_id} in ruleset {ruleset_id} of account {account_id}. slots: rule_id: path.rule_id ruleset_id: path.ruleset_id account_id: path.account_id - text: Move rule {rule_id} of ruleset {ruleset_id} to position {position}. slots: rule_id: path.rule_id ruleset_id: path.ruleset_id position: requestBody.position method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}/versions'].get update: x-apievangelist-phrasing: intent: List versions of an account ruleset effect: read questions: - How do I see the version history of an account ruleset? - How many versions does a ruleset have? instructions: - text: List the versions of ruleset {ruleset_id} in account {account_id}. slots: ruleset_id: path.ruleset_id account_id: path.account_id - text: Show the version history for ruleset {ruleset_id}. slots: ruleset_id: path.ruleset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}'].get update: x-apievangelist-phrasing: intent: Get a specific account ruleset version effect: read questions: - Can I view an older version of an account ruleset? - What rules were in a ruleset at a given version number? instructions: - text: Show version {ruleset_version} of ruleset {ruleset_id} in account {account_id}. slots: ruleset_version: path.ruleset_version ruleset_id: path.ruleset_id account_id: path.account_id - text: Fetch ruleset {ruleset_id} as it was at version {ruleset_version}. slots: ruleset_id: path.ruleset_id ruleset_version: path.ruleset_version method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}'].delete update: x-apievangelist-phrasing: intent: Delete one version of an account ruleset effect: destructive questions: - How do I delete an old version of a ruleset but keep the rest? - Can a single ruleset version be removed? instructions: - text: Delete version {ruleset_version} of ruleset {ruleset_id} in account {account_id}. slots: ruleset_version: path.ruleset_version ruleset_id: path.ruleset_id account_id: path.account_id - text: Remove ruleset {ruleset_id} version {ruleset_version} only. slots: ruleset_id: path.ruleset_id ruleset_version: path.ruleset_version method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag}'].get update: x-apievangelist-phrasing: intent: List a managed ruleset version's rules by tag effect: read questions: - How do I find the rules in a managed ruleset that carry a particular tag? - Which rules in a managed ruleset version cover a given category tag? instructions: - text: List rules tagged {rule_tag} in version {ruleset_version} of ruleset {ruleset_id} in account {account_id}. slots: rule_tag: path.rule_tag ruleset_version: path.ruleset_version ruleset_id: path.ruleset_id account_id: path.account_id - text: Show the {rule_tag} rules of managed ruleset {ruleset_id} at version {ruleset_version}. slots: rule_tag: path.rule_tag ruleset_id: path.ruleset_id ruleset_version: path.ruleset_version method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint'].get update: x-apievangelist-phrasing: intent: Get the account entry point ruleset for a phase effect: read questions: - How do I see the entry point ruleset that runs for a given phase at the account level? - What rules currently execute in an account phase entry point? instructions: - text: Show the entry point ruleset for phase {ruleset_phase} in account {account_id}. slots: ruleset_phase: path.ruleset_phase account_id: path.account_id - text: Fetch the latest {ruleset_phase} entry point ruleset. slots: ruleset_phase: path.ruleset_phase method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint'].put update: x-apievangelist-phrasing: intent: Update the account entry point ruleset for a phase effect: write questions: - How do I change the rules in an account phase's entry point ruleset? - Does updating an entry point ruleset create a new version? instructions: - text: Update the {ruleset_phase} entry point ruleset in account {account_id} with rules {rules}. slots: ruleset_phase: path.ruleset_phase account_id: path.account_id rules: requestBody.rules - text: Replace the rules in the entry point for phase {ruleset_phase}. slots: ruleset_phase: path.ruleset_phase method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions'].get update: x-apievangelist-phrasing: intent: List versions of an account entry point ruleset effect: read questions: - How do I see the version history of a phase entry point ruleset? - Can I list past versions of an account entry point? instructions: - text: List versions of the {ruleset_phase} entry point ruleset in account {account_id}. slots: ruleset_phase: path.ruleset_phase account_id: path.account_id - text: Show the entry point history for phase {ruleset_phase}. slots: ruleset_phase: path.ruleset_phase method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version}'].get update: x-apievangelist-phrasing: intent: Get a specific entry point ruleset version effect: read questions: - Can I view an earlier version of a phase entry point ruleset? - What did an account entry point contain at a particular version? instructions: - text: Show version {ruleset_version} of the {ruleset_phase} entry point in account {account_id}. slots: ruleset_version: path.ruleset_version ruleset_phase: path.ruleset_phase account_id: path.account_id - text: Fetch entry point version {ruleset_version} for phase {ruleset_phase}. slots: ruleset_version: path.ruleset_version ruleset_phase: path.ruleset_phase method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/site_info'].post update: x-apievangelist-phrasing: intent: Create a Web Analytics site effect: write questions: - How do I start tracking a website with Web Analytics? - Can Web Analytics install automatically on a zone I already proxy? instructions: - text: Create a Web Analytics site for host {host} in account {account_id}. slots: host: requestBody.host account_id: path.account_id - text: Add Web Analytics to zone {zone_tag} with auto install {auto_install}. slots: zone_tag: requestBody.zone_tag auto_install: requestBody.auto_install method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/site_info/{site_id}'].get update: x-apievangelist-phrasing: intent: Get a Web Analytics site effect: read questions: - How do I look up one Web Analytics site and its snippet settings? - Is auto install enabled for a particular Web Analytics site? instructions: - text: Show Web Analytics site {site_id} in account {account_id}. slots: site_id: path.site_id account_id: path.account_id - text: Get the configuration of analytics site {site_id}. slots: site_id: path.site_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/site_info/{site_id}'].put update: x-apievangelist-phrasing: intent: Update a Web Analytics site effect: write questions: - How do I change the host tracked by an existing Web Analytics site? - Can I turn auto install off for a site I already set up? instructions: - text: Change Web Analytics site {site_id} in account {account_id} to track host {host}. slots: site_id: path.site_id account_id: path.account_id host: requestBody.host - text: Set auto install to {auto_install} on analytics site {site_id}. slots: auto_install: requestBody.auto_install site_id: path.site_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/site_info/{site_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Web Analytics site effect: destructive questions: - How do I stop tracking a site and delete it from Web Analytics? - Can I remove a Web Analytics site I no longer need? instructions: - text: Delete Web Analytics site {site_id} from account {account_id}. slots: site_id: path.site_id account_id: path.account_id - text: Remove analytics site {site_id}. slots: site_id: path.site_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/site_info/list'].get update: x-apievangelist-phrasing: intent: List Web Analytics sites effect: read questions: - Which sites am I tracking with Web Analytics? - Can I sort or page through my Web Analytics sites? instructions: - text: List the Web Analytics sites in account {account_id}. slots: account_id: path.account_id - text: Show my analytics sites ordered by {order_by}, {per_page} per page. slots: order_by: query.order_by per_page: query.per_page method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/v2/{ruleset_id}/rule'].post update: x-apievangelist-phrasing: intent: Add a rule to a Web Analytics ruleset effect: write questions: - How do I exclude certain paths from Web Analytics tracking? - Can I create a paused analytics rule for a specific host? instructions: - text: Create a Web Analytics rule for host {host} in ruleset {ruleset_id} of account {account_id}. slots: host: requestBody.host ruleset_id: path.ruleset_id account_id: path.account_id - text: Add an analytics rule to ruleset {ruleset_id} covering paths {paths} with inclusive {inclusive}. slots: ruleset_id: path.ruleset_id paths: requestBody.paths inclusive: requestBody.inclusive method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/v2/{ruleset_id}/rule/{rule_id}'].put update: x-apievangelist-phrasing: intent: Update one Web Analytics rule effect: write questions: - How do I pause a single Web Analytics rule? - Can I change the paths an existing analytics rule matches? instructions: - text: Update Web Analytics rule {rule_id} in ruleset {ruleset_id} of account {account_id}. slots: rule_id: path.rule_id ruleset_id: path.ruleset_id account_id: path.account_id - text: Set is_paused to {is_paused} on analytics rule {rule_id} in ruleset {ruleset_id}. slots: is_paused: requestBody.is_paused rule_id: path.rule_id ruleset_id: path.ruleset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/v2/{ruleset_id}/rule/{rule_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Web Analytics rule effect: destructive questions: - How do I delete one rule from a Web Analytics ruleset? - Can I drop an analytics tracking rule I added by mistake? instructions: - text: Delete Web Analytics rule {rule_id} from ruleset {ruleset_id} in account {account_id}. slots: rule_id: path.rule_id ruleset_id: path.ruleset_id account_id: path.account_id - text: Remove analytics rule {rule_id} of ruleset {ruleset_id}. slots: rule_id: path.rule_id ruleset_id: path.ruleset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/v2/{ruleset_id}/rules'].get update: x-apievangelist-phrasing: intent: List rules in a Web Analytics ruleset effect: read questions: - What tracking rules are in my Web Analytics ruleset? - Which hosts and paths do my analytics rules include or exclude? instructions: - text: List the rules in Web Analytics ruleset {ruleset_id} of account {account_id}. slots: ruleset_id: path.ruleset_id account_id: path.account_id - text: Show every analytics rule in ruleset {ruleset_id}. slots: ruleset_id: path.ruleset_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/rum/v2/{ruleset_id}/rules'].post update: x-apievangelist-phrasing: intent: Bulk-modify Web Analytics rules effect: write questions: - Can I add and delete several Web Analytics rules in a single request? - How do I batch-edit my analytics ruleset? instructions: - text: Apply these rule changes to Web Analytics ruleset {ruleset_id} in account {account_id} in one request. slots: ruleset_id: path.ruleset_id account_id: path.account_id - text: In ruleset {ruleset_id}, delete rules {delete_rules} and upsert {rules}. slots: ruleset_id: path.ruleset_id delete_rules: requestBody.delete_rules rules: requestBody.rules method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/acls'].get update: x-apievangelist-phrasing: intent: List secondary DNS ACLs effect: read questions: - Which IP ranges are allowed to request zone transfers from my account? - Can I see all my secondary DNS access control lists? instructions: - text: List secondary DNS ACLs in account {account_id}. slots: account_id: path.account_id - text: Show my zone transfer ACLs. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/acls'].post update: x-apievangelist-phrasing: intent: Create a secondary DNS ACL effect: write questions: - How do I allow an IP range to perform zone transfers? - Can I add a new ACL for outgoing secondary DNS? instructions: - text: Create a secondary DNS ACL in account {account_id}. slots: account_id: path.account_id - text: Add a new zone transfer ACL for my nameservers. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/acls/{acl_id}'].get update: x-apievangelist-phrasing: intent: Get a secondary DNS ACL effect: read questions: - How do I view the IP range on one specific zone transfer ACL? - What name does a particular secondary DNS ACL have? instructions: - text: Show ACL {acl_id} in account {account_id}. slots: acl_id: path.acl_id account_id: path.account_id - text: Get the details of secondary DNS ACL {acl_id}. slots: acl_id: path.acl_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/acls/{acl_id}'].put update: x-apievangelist-phrasing: intent: Modify a secondary DNS ACL effect: write questions: - How do I change the IP range allowed by an existing zone transfer ACL? - Can I rename a secondary DNS ACL? instructions: - text: Set ACL {acl_id} in account {account_id} to allow range {ip_range}. slots: acl_id: path.acl_id account_id: path.account_id ip_range: requestBody.ip_range - text: Rename secondary DNS ACL {acl_id} to {name}. slots: acl_id: path.acl_id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/acls/{acl_id}'].delete update: x-apievangelist-phrasing: intent: Delete a secondary DNS ACL effect: destructive questions: - How do I revoke zone transfer access by deleting an ACL? - Can I remove an ACL I no longer use for secondary DNS? instructions: - text: Delete ACL {acl_id} from account {account_id}. slots: acl_id: path.acl_id account_id: path.account_id - text: Remove secondary DNS ACL {acl_id}. slots: acl_id: path.acl_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/peers'].get update: x-apievangelist-phrasing: intent: List secondary DNS peers effect: read questions: - Which primary or secondary nameserver peers are configured on my account? - Can I see all my DNS transfer peers? instructions: - text: List secondary DNS peers in account {account_id}. slots: account_id: path.account_id - text: Show every zone transfer peer I have set up. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/peers'].post update: x-apievangelist-phrasing: intent: Create a secondary DNS peer effect: write questions: - What's the way to register an external nameserver as a zone transfer peer? - Can I add a new peer for secondary DNS? instructions: - text: Create a secondary DNS peer in account {account_id}. slots: account_id: path.account_id - text: Add a new zone transfer peer for my external nameserver. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/peers/{peer_id}'].get update: x-apievangelist-phrasing: intent: Get a secondary DNS peer effect: read questions: - What IP and port is a specific transfer peer using? - Is IXFR enabled on one of my DNS peers? instructions: - text: Show peer {peer_id} in account {account_id}. slots: peer_id: path.peer_id account_id: path.account_id - text: Get the details of secondary DNS peer {peer_id}. slots: peer_id: path.peer_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/peers/{peer_id}'].put update: x-apievangelist-phrasing: intent: Modify a secondary DNS peer effect: write questions: - Can I change the IP address or port of an existing transfer peer? - How do I turn on IXFR or attach a TSIG key to a peer? instructions: - text: Point peer {peer_id} in account {account_id} at IP {ip} port {port}. slots: peer_id: path.peer_id account_id: path.account_id ip: requestBody.ip port: requestBody.port - text: Attach TSIG {tsig_id} to secondary DNS peer {peer_id}. slots: tsig_id: requestBody.tsig_id peer_id: path.peer_id - text: Set IXFR on peer {peer_id} to {ixfr_enable}. slots: peer_id: path.peer_id ixfr_enable: requestBody.ixfr_enable method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/peers/{peer_id}'].delete update: x-apievangelist-phrasing: intent: Delete a secondary DNS peer effect: destructive questions: - How do I remove a nameserver peer from secondary DNS? - Can I delete a transfer peer I stopped using? instructions: - text: Delete peer {peer_id} from account {account_id}. slots: peer_id: path.peer_id account_id: path.account_id - text: Remove secondary DNS peer {peer_id}. slots: peer_id: path.peer_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/tsigs'].get update: x-apievangelist-phrasing: intent: List TSIG keys effect: read questions: - Which TSIG keys exist for signing my zone transfers? - Can I list all the TSIGs on my account? instructions: - text: List TSIG keys in account {account_id}. slots: account_id: path.account_id - text: Show all my zone transfer TSIGs. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/tsigs'].post update: x-apievangelist-phrasing: intent: Create a TSIG key effect: write questions: - How do I add a TSIG key to authenticate zone transfers? - Which algorithm and secret does a new TSIG need? instructions: - text: Create TSIG {name} with algorithm {algo} and secret {secret} in account {account_id}. slots: name: requestBody.name algo: requestBody.algo secret: requestBody.secret account_id: path.account_id - text: Add a new {algo} TSIG key called {name}. slots: algo: requestBody.algo name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/tsigs/{tsig_id}'].get update: x-apievangelist-phrasing: intent: Get a TSIG key effect: read questions: - What algorithm does one of my TSIG keys use? - Can I look up a single TSIG by its ID? instructions: - text: Show TSIG {tsig_id} in account {account_id}. slots: tsig_id: path.tsig_id account_id: path.account_id - text: Get the details of TSIG key {tsig_id}. slots: tsig_id: path.tsig_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/tsigs/{tsig_id}'].put update: x-apievangelist-phrasing: intent: Modify a TSIG key effect: write questions: - How do I rotate the secret on an existing TSIG key? - Can I change a TSIG's algorithm? instructions: - text: Rotate TSIG {tsig_id} in account {account_id} to secret {secret}. slots: tsig_id: path.tsig_id account_id: path.account_id secret: requestBody.secret - text: Change TSIG {tsig_id} to algorithm {algo} and name {name}. slots: tsig_id: path.tsig_id algo: requestBody.algo name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/secondary_dns/tsigs/{tsig_id}'].delete update: x-apievangelist-phrasing: intent: Delete a TSIG key effect: destructive questions: - How do I delete a TSIG key I no longer use? - Can a TSIG be removed from my account? instructions: - text: Delete TSIG {tsig_id} from account {account_id}. slots: tsig_id: path.tsig_id account_id: path.account_id - text: Remove TSIG key {tsig_id}. slots: tsig_id: path.tsig_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/analytics'].get update: x-apievangelist-phrasing: intent: Query Workers KV request metrics effect: read questions: - How many requests is Workers KV serving for my account? - Can I query KV read and write request analytics? instructions: - text: Get Workers KV request analytics for account {account_id}. slots: account_id: path.account_id - text: Query KV request metrics using {query}. slots: query: query.query method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/analytics/stored'].get update: x-apievangelist-phrasing: intent: Query Workers KV stored-data metrics effect: read questions: - How much data am I storing in Workers KV? - Can I see KV storage size metrics over time? instructions: - text: Get Workers KV stored data analytics for account {account_id}. slots: account_id: path.account_id - text: Query KV storage metrics using {query}. slots: query: query.query method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces'].get update: x-apievangelist-phrasing: intent: List Workers KV namespaces effect: read questions: - Which KV namespaces does my account own? - Can I sort my KV namespaces by title? instructions: - text: List Workers KV namespaces in account {account_id}. slots: account_id: path.account_id - text: Show my KV namespaces ordered by {order} {direction}. slots: order: query.order direction: query.direction method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces'].post update: x-apievangelist-phrasing: intent: Create a Workers KV namespace effect: write questions: - How do I create a new KV namespace? - What happens if I create a KV namespace with a title I already use? instructions: - text: Create a Workers KV namespace titled {title} in account {account_id}. slots: title: requestBody.title account_id: path.account_id - text: Make a new KV namespace called {title}. slots: title: requestBody.title method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}'].put update: x-apievangelist-phrasing: intent: Rename a Workers KV namespace effect: write questions: - Can I rename an existing KV namespace? - What's the way to change a KV namespace's title? instructions: - text: Rename KV namespace {namespace_id} in account {account_id} to {title}. slots: namespace_id: path.namespace_id account_id: path.account_id title: requestBody.title - text: Change the title of namespace {namespace_id} to {title}. slots: namespace_id: path.namespace_id title: requestBody.title method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}'].delete update: x-apievangelist-phrasing: intent: Delete a Workers KV namespace effect: destructive questions: - How do I delete an entire KV namespace? - Can I remove a KV namespace I no longer need? instructions: - text: Delete KV namespace {namespace_id} from account {account_id}. slots: namespace_id: path.namespace_id account_id: path.account_id - text: Remove Workers KV namespace {namespace_id}. slots: namespace_id: path.namespace_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk'].put update: x-apievangelist-phrasing: intent: Bulk-write key-value pairs to KV effect: write questions: - Can I write thousands of keys to a KV namespace in one request? - What's the maximum number of pairs in a KV bulk write? instructions: - text: Bulk write these key-value pairs into KV namespace {namespace_id} in account {account_id}. slots: namespace_id: path.namespace_id account_id: path.account_id - text: Upload up to 10,000 entries at once to namespace {namespace_id}. slots: namespace_id: path.namespace_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk'].delete update: x-apievangelist-phrasing: intent: Bulk-delete keys from KV effect: destructive questions: - How do I delete many KV keys in one call? - Is there a limit on how many keys a KV bulk delete can remove? instructions: - text: Bulk delete these keys from KV namespace {namespace_id} in account {account_id}. slots: namespace_id: path.namespace_id account_id: path.account_id - text: Remove this batch of keys from namespace {namespace_id}. slots: namespace_id: path.namespace_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}/keys'].get update: x-apievangelist-phrasing: intent: List keys in a KV namespace effect: read questions: - How do I list the keys stored in a KV namespace? - Can I list only KV keys that start with a certain prefix? instructions: - text: List the keys in KV namespace {namespace_id} of account {account_id}. slots: namespace_id: path.namespace_id account_id: path.account_id - text: Show up to {limit} keys in namespace {namespace_id} starting with {prefix}. slots: limit: query.limit namespace_id: path.namespace_id prefix: query.prefix method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}/metadata/{key_name}'].get update: x-apievangelist-phrasing: intent: Read a KV key's metadata effect: read questions: - Can I read the metadata attached to a KV key without fetching its value? - What metadata did I store alongside a key? instructions: - text: Read the metadata for key {key_name} in namespace {namespace_id} of account {account_id}. slots: key_name: path.key_name namespace_id: path.namespace_id account_id: path.account_id - text: Show only the metadata of KV key {key_name} in {namespace_id}. slots: key_name: path.key_name namespace_id: path.namespace_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}'].get update: x-apievangelist-phrasing: intent: Read a value from KV effect: read questions: - How do I fetch the value stored under a KV key? - Do keys with special characters need URL-encoding when I read them? instructions: - text: Read the value of key {key_name} in namespace {namespace_id} of account {account_id}. slots: key_name: path.key_name namespace_id: path.namespace_id account_id: path.account_id - text: Get what is stored at KV key {key_name} in {namespace_id}. slots: key_name: path.key_name namespace_id: path.namespace_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}'].put update: x-apievangelist-phrasing: intent: Write a KV value with metadata effect: write questions: - How do I store a single value with metadata in KV? - Can I attach JSON metadata when writing one KV key? instructions: - text: Write {value} to key {key_name} in namespace {namespace_id} of account {account_id}. slots: value: requestBody.value key_name: path.key_name namespace_id: path.namespace_id account_id: path.account_id - text: Store {value} under KV key {key_name} in {namespace_id} with metadata {metadata}. slots: value: requestBody.value key_name: path.key_name namespace_id: path.namespace_id metadata: requestBody.metadata method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}'].delete update: x-apievangelist-phrasing: intent: Delete one key from KV effect: destructive questions: - How do I delete a single key from a KV namespace? - Can I remove one KV entry without touching the others? instructions: - text: Delete key {key_name} from namespace {namespace_id} in account {account_id}. slots: key_name: path.key_name namespace_id: path.namespace_id account_id: path.account_id - text: Remove KV entry {key_name} in {namespace_id}. slots: key_name: path.key_name namespace_id: path.namespace_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream'].get update: x-apievangelist-phrasing: intent: List Stream videos effect: read questions: - Which videos have I uploaded to Stream? - Can I filter my videos by status, creator or upload date? - How many videos come back in one list request? instructions: - text: List the Stream videos in account {account_id}. slots: account_id: path.account_id - text: Show videos with status {status} uploaded by creator {creator}. slots: status: query.status creator: query.creator - text: Search my videos for {search} uploaded after {start}. slots: search: query.search start: query.start method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream'].post update: x-apievangelist-phrasing: intent: Start a resumable TUS video upload effect: write questions: - How do I upload a large video to Stream with resumable uploads? - Where do I send the video bytes after starting a TUS upload? instructions: - text: Start a TUS upload of {length} bytes in account {account_id}. slots: length: header.Upload-Length account_id: path.account_id - text: Begin a resumable video upload of {length} bytes using TUS version {tus}. slots: length: header.Upload-Length tus: header.Tus-Resumable method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}'].get update: x-apievangelist-phrasing: intent: Get a Stream video's details effect: read questions: - Is my uploaded video ready to play yet? - What's the duration and playback URL of a specific video? instructions: - text: Show details for video {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Check the processing status of Stream video {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}'].post update: x-apievangelist-phrasing: intent: Edit a Stream video's settings effect: write questions: - Can I require signed URLs on a video I already uploaded? - How do I schedule an existing video for deletion or change its thumbnail? instructions: - text: Require signed URLs {requireSignedURLs} on video {identifier} in account {account_id}. slots: requireSignedURLs: requestBody.requireSignedURLs identifier: path.identifier account_id: path.account_id - text: Schedule video {identifier} for deletion at {scheduledDeletion}. slots: identifier: path.identifier scheduledDeletion: requestBody.scheduledDeletion - text: Set the thumbnail of video {identifier} to {pct} of its duration. slots: identifier: path.identifier pct: requestBody.thumbnailTimestampPct method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a Stream video effect: destructive questions: - How do I permanently delete a video and all its copies? - Can I remove a video from Stream? instructions: - text: Delete video {identifier} from account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Remove Stream video {identifier} and its copies. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/audio'].get update: x-apievangelist-phrasing: intent: List a video's additional audio tracks effect: read questions: - Which extra language audio tracks are attached to a video? - Does the audio track list include the original audio of the upload? instructions: - text: List the additional audio tracks on video {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Show the dubbed audio tracks of video {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/audio/{audio_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete an additional audio track effect: destructive questions: - How do I remove an extra audio track from a video? - Can I delete the audio track that is currently the default? instructions: - text: Delete audio track {audio_identifier} from video {identifier} in account {account_id}. slots: audio_identifier: path.audio_identifier identifier: path.identifier account_id: path.account_id - text: Remove audio {audio_identifier} from video {identifier}. slots: audio_identifier: path.audio_identifier identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/audio/{audio_identifier}'].patch update: x-apievangelist-phrasing: intent: Edit an additional audio track effect: write questions: - How do I make a different audio track the default for a video? - Can I rename the label on an audio track? instructions: - text: Make audio track {audio_identifier} the default on video {identifier} in account {account_id}. slots: audio_identifier: path.audio_identifier identifier: path.identifier account_id: path.account_id - text: Relabel audio track {audio_identifier} on video {identifier} as {label}. slots: audio_identifier: path.audio_identifier identifier: path.identifier label: requestBody.label method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/audio/copy'].post update: x-apievangelist-phrasing: intent: Add an audio track to a video from a URL effect: write questions: - How do I add a second-language audio track to a video? - Can I attach an audio track by pointing at a file URL? instructions: - text: Add audio track {label} from {url} to video {identifier} in account {account_id}. slots: label: requestBody.label url: requestBody.url identifier: path.identifier account_id: path.account_id - text: Copy the audio at {url} onto video {identifier} labelled {label}. slots: url: requestBody.url identifier: path.identifier label: requestBody.label method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/captions'].get update: x-apievangelist-phrasing: intent: List a video's captions and subtitles effect: read questions: - Which caption languages are available on a video? - Does this video have subtitles yet? instructions: - text: List the captions on video {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Show the subtitle languages for video {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/captions/{language}'].put update: x-apievangelist-phrasing: intent: Upload captions for a video language effect: write questions: - How do I upload a subtitle file for a specific language? - Can a video have more than one caption file per language? instructions: - text: Upload captions file {file} in language {language} to video {identifier} in account {account_id}. slots: file: requestBody.file language: path.language identifier: path.identifier account_id: path.account_id - text: Add {language} subtitles to video {identifier}. slots: language: path.language identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/captions/{language}'].delete update: x-apievangelist-phrasing: intent: Delete a video's captions for a language effect: destructive questions: - How do I remove the subtitles for one language from a video? - Can I delete a caption file I uploaded by mistake? instructions: - text: Delete the {language} captions from video {identifier} in account {account_id}. slots: language: path.language identifier: path.identifier account_id: path.account_id - text: Remove {language} subtitles on video {identifier}. slots: language: path.language identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/downloads'].get update: x-apievangelist-phrasing: intent: List a video's MP4 downloads effect: read questions: - Is an MP4 download available for my video? - What's the status of the downloadable file for a video? instructions: - text: List downloads for video {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Check the MP4 download status of video {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/downloads'].post update: x-apievangelist-phrasing: intent: Create an MP4 download for a video effect: write questions: - How do I make a video downloadable as an MP4 file? - Can I create a download before the video is ready to view? instructions: - text: Create an MP4 download for video {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Generate a downloadable file for video {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/downloads'].delete update: x-apievangelist-phrasing: intent: Delete a video's MP4 downloads effect: destructive questions: - How do I stop offering a video as a download? - Can I delete the MP4 files generated for a video? instructions: - text: Delete the downloads for video {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Remove the MP4 download of video {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/embed'].get update: x-apievangelist-phrasing: intent: Get the HTML embed code for a video effect: read questions: - How do I embed a Stream video on my web page? - Can I get a ready-made HTML snippet for a video player? instructions: - text: Get the embed code for video {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Give me the HTML snippet to embed video {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/{identifier}/token'].post update: x-apievangelist-phrasing: intent: Create a signed URL token for a video effect: write questions: - How do I generate a signed token so only authorized viewers can watch a video? - Can I set an expiry or access rules on a video token? instructions: - text: Create a signed URL token for video {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Make a token for video {identifier} that expires at {exp}. slots: identifier: path.identifier exp: requestBody.exp - text: Sign a downloadable token for video {identifier} with access rules {accessRules}. slots: identifier: path.identifier accessRules: requestBody.accessRules method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/clip'].post update: x-apievangelist-phrasing: intent: Clip a video between two timestamps effect: write questions: - How do I create a short clip from an existing video? - Can I cut a video to a start and end time in seconds? instructions: - text: Clip video {source} from {start} to {end} seconds in account {account_id}. slots: source: requestBody.clippedFromVideoUID start: requestBody.startTimeSeconds end: requestBody.endTimeSeconds account_id: path.account_id - text: Make a new clip of {source} starting at {start}s and ending at {end}s. slots: source: requestBody.clippedFromVideoUID start: requestBody.startTimeSeconds end: requestBody.endTimeSeconds method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/copy'].post update: x-apievangelist-phrasing: intent: Upload a video to Stream from a URL effect: write questions: - Can I import a video into Stream from a link instead of uploading the file? - How do I copy a hosted video into my account? instructions: - text: Upload the video at {url} into account {account_id}. slots: url: requestBody.url account_id: path.account_id - text: Copy video from {url} and require signed URLs {requireSignedURLs}. slots: url: requestBody.url requireSignedURLs: requestBody.requireSignedURLs method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/direct_upload'].post update: x-apievangelist-phrasing: intent: Create a direct upload URL for a video effect: write questions: - How do my users upload videos without me sharing an API key? - Can I cap the length of a video uploaded through a one-time URL? instructions: - text: Create a direct upload URL in account {account_id} limited to {max} seconds. slots: account_id: path.account_id max: requestBody.maxDurationSeconds - text: Generate a one-time upload link for a video of up to {max} seconds expiring at {expiry}. slots: max: requestBody.maxDurationSeconds expiry: requestBody.expiry method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/keys'].get update: x-apievangelist-phrasing: intent: List Stream signing keys effect: read questions: - Which signing keys have I created for Stream videos? - When was each of my video signing keys created? instructions: - text: List Stream signing keys in account {account_id}. slots: account_id: path.account_id - text: Show my video signing keys. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/keys'].post update: x-apievangelist-phrasing: intent: Create a Stream signing key effect: write questions: - How do I create a key to sign video tokens myself? - Is the private key shown again after I create a signing key? instructions: - text: Create a Stream signing key in account {account_id}. slots: account_id: path.account_id - text: Generate a new RSA key for signing video URLs. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/keys/{identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a Stream signing key effect: destructive questions: - What happens to signed URLs when I delete their signing key? - How do I revoke a video signing key? instructions: - text: Delete signing key {identifier} from account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Revoke Stream signing key {identifier} and every URL signed with it. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs'].get update: x-apievangelist-phrasing: intent: List live inputs effect: read questions: - Which live stream inputs have I created? - Can I include a count of live inputs in the list? instructions: - text: List the live inputs in account {account_id}. slots: account_id: path.account_id - text: Show my live inputs with counts {include_counts}. slots: include_counts: query.include_counts method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs'].post update: x-apievangelist-phrasing: intent: Create a live input for streaming effect: write questions: - How do I set up a new live stream and get RTMP credentials? - Can I have live recordings deleted automatically after some days? instructions: - text: Create a live input in account {account_id}. slots: account_id: path.account_id - text: Create a live input with recording {recording} that deletes recordings after {days} days. slots: recording: requestBody.recording days: requestBody.deleteRecordingAfterDays method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs/{live_input_identifier}'].get update: x-apievangelist-phrasing: intent: Get a live input and its credentials effect: read questions: - What are the streaming credentials for one of my live inputs? - Is a specific live input currently connected? instructions: - text: Show live input {live_input_identifier} in account {account_id}. slots: live_input_identifier: path.live_input_identifier account_id: path.account_id - text: Get the RTMP and SRT details for live input {live_input_identifier}. slots: live_input_identifier: path.live_input_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs/{live_input_identifier}'].put update: x-apievangelist-phrasing: intent: Update a live input effect: write questions: - Can I change recording settings on an existing live input? - How do I set the default creator for a live input? instructions: - text: Update live input {live_input_identifier} in account {account_id} with recording {recording}. slots: live_input_identifier: path.live_input_identifier account_id: path.account_id recording: requestBody.recording - text: Set the default creator of live input {live_input_identifier} to {defaultCreator}. slots: live_input_identifier: path.live_input_identifier defaultCreator: requestBody.defaultCreator method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs/{live_input_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a live input effect: destructive questions: - How do I shut down a live input permanently? - Can a deleted live input still be streamed to? instructions: - text: Delete live input {live_input_identifier} from account {account_id}. slots: live_input_identifier: path.live_input_identifier account_id: path.account_id - text: Remove live input {live_input_identifier} so nothing can stream to it. slots: live_input_identifier: path.live_input_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs'].get update: x-apievangelist-phrasing: intent: List a live input's simulcast outputs effect: read questions: - Where is my live stream being restreamed to? - Which simulcast outputs are attached to a live input? instructions: - text: List outputs of live input {live_input_identifier} in account {account_id}. slots: live_input_identifier: path.live_input_identifier account_id: path.account_id - text: Show the restream destinations for live input {live_input_identifier}. slots: live_input_identifier: path.live_input_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs'].post update: x-apievangelist-phrasing: intent: Add a simulcast output to a live input effect: write questions: - How do I simulcast my live stream to another RTMP destination? - Can I restream to an SRT endpoint too? instructions: - text: Add output {url} with stream key {streamKey} to live input {live_input_identifier} in account {account_id}. slots: url: requestBody.url streamKey: requestBody.streamKey live_input_identifier: path.live_input_identifier account_id: path.account_id - text: Restream live input {live_input_identifier} to {url} using key {streamKey}. slots: live_input_identifier: path.live_input_identifier url: requestBody.url streamKey: requestBody.streamKey method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs/{output_identifier}'].put update: x-apievangelist-phrasing: intent: Enable or disable a simulcast output effect: write questions: - Can I pause restreaming to one destination without deleting it? - How do I turn a simulcast output back on? instructions: - text: Set output {output_identifier} on live input {live_input_identifier} in account {account_id} to enabled {enabled}. slots: output_identifier: path.output_identifier live_input_identifier: path.live_input_identifier account_id: path.account_id enabled: requestBody.enabled - text: Disable restream output {output_identifier} of live input {live_input_identifier}. slots: output_identifier: path.output_identifier live_input_identifier: path.live_input_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs/{output_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a simulcast output effect: destructive questions: - How do I stop restreaming to a destination for good? - Can I remove an output from a live input? instructions: - text: Delete output {output_identifier} from live input {live_input_identifier} in account {account_id}. slots: output_identifier: path.output_identifier live_input_identifier: path.live_input_identifier account_id: path.account_id - text: Remove restream destination {output_identifier} on {live_input_identifier}. slots: output_identifier: path.output_identifier live_input_identifier: path.live_input_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/storage-usage'].get update: x-apievangelist-phrasing: intent: Check Stream storage usage effect: read questions: - How many minutes of video storage am I using? - Can I see storage use for a single creator? instructions: - text: Show Stream storage usage for account {account_id}. slots: account_id: path.account_id - text: Get storage used by creator {creator}. slots: creator: query.creator method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/watermarks'].get update: x-apievangelist-phrasing: intent: List watermark profiles effect: read questions: - Which watermark profiles can I apply to videos? - Can I see all my video watermarks? instructions: - text: List watermark profiles in account {account_id}. slots: account_id: path.account_id - text: Show all my video watermark profiles. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/watermarks'].post update: x-apievangelist-phrasing: intent: Create a watermark profile from an image effect: write questions: - How do I upload a logo to use as a video watermark? - Can I set a watermark's opacity, position and scale? instructions: - text: Create watermark {name} from image {file} in account {account_id}. slots: name: requestBody.name file: requestBody.file account_id: path.account_id - text: Upload watermark image {file} at position {position} with opacity {opacity}. slots: file: requestBody.file position: requestBody.position opacity: requestBody.opacity method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/watermarks/{identifier}'].get update: x-apievangelist-phrasing: intent: Get a watermark profile effect: read questions: - What position and opacity does one watermark profile use? - Can I look up a single watermark by ID? instructions: - text: Show watermark profile {identifier} in account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Get the settings of watermark {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/watermarks/{identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a watermark profile effect: destructive questions: - How do I delete a watermark I no longer use? - Can I remove a watermark profile from my account? instructions: - text: Delete watermark profile {identifier} from account {account_id}. slots: identifier: path.identifier account_id: path.account_id - text: Remove watermark {identifier}. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/webhook'].get update: x-apievangelist-phrasing: intent: View the Stream webhook effect: read questions: - Where are my Stream video notifications being sent? - Which webhook URL is configured for video events? instructions: - text: Show the Stream webhook for account {account_id}. slots: account_id: path.account_id - text: Tell me which URL receives my video notifications. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/webhook'].put update: x-apievangelist-phrasing: intent: Set the Stream webhook URL effect: write questions: - How do I get notified when a video finishes processing? - Can I register a webhook for Stream events? instructions: - text: Send Stream notifications for account {account_id} to {notificationUrl}. slots: account_id: path.account_id notificationUrl: requestBody.notificationUrl - text: Create a video webhook pointing at {notificationUrl}. slots: notificationUrl: requestBody.notificationUrl method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/stream/webhook'].delete update: x-apievangelist-phrasing: intent: Delete the Stream webhook effect: destructive questions: - How do I stop receiving Stream video notifications? - Can I remove my video webhook? instructions: - text: Delete the Stream webhook for account {account_id}. slots: account_id: path.account_id - text: Turn off my video notification webhook. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/routes'].get update: x-apievangelist-phrasing: intent: List private network tunnel routes effect: read questions: - Which private networks are routed through my tunnels? - Can I filter tunnel routes by tunnel, virtual network or subnet? - Are deleted routes included when I list routes? instructions: - text: List tunnel routes in account {account_id}. slots: account_id: path.account_id - text: Show routes for tunnel {tunnel_id} in virtual network {virtual_network_id}. slots: tunnel_id: query.tunnel_id virtual_network_id: query.virtual_network_id - text: Find routes that fall inside subnet {network_superset}. slots: network_superset: query.network_superset method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/routes'].post update: x-apievangelist-phrasing: intent: Route a private network through a tunnel effect: write questions: - How do I send traffic for a private CIDR through a tunnel? - Can I put a new tunnel route into a specific virtual network? instructions: - text: Route network {ip_network} through tunnel {tunnel_id} in account {account_id}. slots: ip_network: requestBody.ip_network tunnel_id: requestBody.tunnel_id account_id: path.account_id - text: Add route {ip_network} via tunnel {tunnel_id} in virtual network {virtual_network_id}. slots: ip_network: requestBody.ip_network tunnel_id: requestBody.tunnel_id virtual_network_id: requestBody.virtual_network_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/routes/{route_id}'].delete update: x-apievangelist-phrasing: intent: Delete a tunnel route by route ID effect: destructive questions: - How do I delete a private network route using its route ID? - Can I remove one tunnel route from my account? instructions: - text: Delete tunnel route {route_id} from account {account_id}. slots: route_id: path.route_id account_id: path.account_id - text: Remove private network route with ID {route_id}. slots: route_id: path.route_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/routes/{route_id}'].patch update: x-apievangelist-phrasing: intent: Update a tunnel route by route ID effect: write questions: - Can I move an existing route, looked up by its ID, to a different tunnel? - Is it possible to change the comment or network on a route by ID? instructions: - text: Point route {route_id} in account {account_id} at tunnel {tunnel_id}. slots: route_id: path.route_id account_id: path.account_id tunnel_id: requestBody.tunnel_id - text: Change the network of route ID {route_id} to {network} with comment {comment}. slots: route_id: path.route_id network: requestBody.network comment: requestBody.comment method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/routes/ip/{ip}'].get update: x-apievangelist-phrasing: intent: Find the tunnel route for an IP address effect: read questions: - Which tunnel route covers a given private IP address? - Can I check how one IP is routed within a virtual network? instructions: - text: Find the route containing IP {ip} in account {account_id}. slots: ip: path.ip account_id: path.account_id - text: Look up which tunnel serves {ip} in virtual network {virtual_network_id}. slots: ip: path.ip virtual_network_id: query.virtual_network_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/routes/network/{ip_network_encoded}'].post update: x-apievangelist-phrasing: intent: Create a tunnel route addressed by CIDR effect: write questions: - Can I create a route by putting the URL-encoded CIDR in the path? - What's the CIDR-endpoint way to route a subnet through a tunnel? instructions: - text: Create a CIDR-endpoint route for {ip_network_encoded} via tunnel {tunnel_id} in account {account_id}. slots: ip_network_encoded: path.ip_network_encoded tunnel_id: requestBody.tunnel_id account_id: path.account_id - text: Using the CIDR path, route {ip_network_encoded} through tunnel {tunnel_id}. slots: ip_network_encoded: path.ip_network_encoded tunnel_id: requestBody.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/routes/network/{ip_network_encoded}'].delete update: x-apievangelist-phrasing: intent: Delete a tunnel route addressed by CIDR effect: destructive questions: - How do I delete a route when I know its CIDR but not its ID? - Can I remove a CIDR route only within one virtual network? instructions: - text: Delete the route for CIDR {ip_network_encoded} in account {account_id}. slots: ip_network_encoded: path.ip_network_encoded account_id: path.account_id - text: Remove CIDR route {ip_network_encoded} in virtual network {virtual_network_id}. slots: ip_network_encoded: path.ip_network_encoded virtual_network_id: query.virtual_network_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/routes/network/{ip_network_encoded}'].patch update: x-apievangelist-phrasing: intent: Update a tunnel route addressed by CIDR effect: write questions: - Can I update a private network route by its CIDR instead of its route ID? - What's the CIDR-endpoint way to modify an existing route? instructions: - text: Update the route for CIDR {ip_network_encoded} in account {account_id}. slots: ip_network_encoded: path.ip_network_encoded account_id: path.account_id - text: Modify CIDR route {ip_network_encoded} using the CIDR endpoint. slots: ip_network_encoded: path.ip_network_encoded method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/virtual_networks'].get update: x-apievangelist-phrasing: intent: List virtual networks effect: read questions: - Which virtual networks exist in my account? - Which of my virtual networks is the default one? instructions: - text: List virtual networks in account {account_id}. slots: account_id: path.account_id - text: Find the virtual network named {name}. slots: name: query.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/virtual_networks'].post update: x-apievangelist-phrasing: intent: Create a virtual network effect: write questions: - How do I add a virtual network to separate overlapping private IP ranges? - Can I make a new virtual network the account default? instructions: - text: Create virtual network {name} in account {account_id}. slots: name: requestBody.name account_id: path.account_id - text: Add virtual network {name} as default {is_default} with comment {comment}. slots: name: requestBody.name is_default: requestBody.is_default comment: requestBody.comment method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}'].delete update: x-apievangelist-phrasing: intent: Delete a virtual network effect: destructive questions: - How do I delete a virtual network I no longer use? - Can I remove a virtual network from my account? instructions: - text: Delete virtual network {virtual_network_id} from account {account_id}. slots: virtual_network_id: path.virtual_network_id account_id: path.account_id - text: Remove virtual network {virtual_network_id}. slots: virtual_network_id: path.virtual_network_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}'].patch update: x-apievangelist-phrasing: intent: Update a virtual network effect: write questions: - Can I rename a virtual network? - How do I switch which virtual network is the default? instructions: - text: Rename virtual network {virtual_network_id} in account {account_id} to {name}. slots: virtual_network_id: path.virtual_network_id account_id: path.account_id name: requestBody.name - text: 'Make virtual network {virtual_network_id} the default network: {is_default_network}.' slots: virtual_network_id: path.virtual_network_id is_default_network: requestBody.is_default_network method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/tunnels'].get update: x-apievangelist-phrasing: intent: List all tunnels of every type effect: read questions: - What tunnels of every type exist in my account? - Can I list only tunnels that were active at a certain time? instructions: - text: List all tunnels in account {account_id}. slots: account_id: path.account_id - text: Show tunnels named {name} of types {tun_types}. slots: name: query.name tun_types: query.tun_types - text: List tunnels that were active at {was_active_at}. slots: was_active_at: query.was_active_at method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/tunnels'].post update: x-apievangelist-phrasing: intent: Create an Argo Tunnel effect: write questions: - How do I create a new Argo Tunnel? - What secret does a new Argo Tunnel need? instructions: - text: Create Argo Tunnel {name} with secret {tunnel_secret} in account {account_id}. slots: name: requestBody.name tunnel_secret: requestBody.tunnel_secret account_id: path.account_id - text: Set up an Argo Tunnel called {name}. slots: name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/tunnels/{tunnel_id}'].get update: x-apievangelist-phrasing: intent: Get an Argo Tunnel effect: read questions: - What are the details and connections of one Argo Tunnel? - Can I look up an Argo Tunnel by its ID? instructions: - text: Show Argo Tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Fetch Argo Tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/tunnels/{tunnel_id}'].delete update: x-apievangelist-phrasing: intent: Delete an Argo Tunnel effect: destructive questions: - How do I delete an Argo Tunnel? - Can I remove an Argo Tunnel from my account? instructions: - text: Delete Argo Tunnel {tunnel_id} from account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Remove Argo Tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/tunnels/{tunnel_id}/connections'].delete update: x-apievangelist-phrasing: intent: Clean up stale Argo Tunnel connections effect: destructive questions: - How do I clear disconnected or pending-reconnect connections from an Argo Tunnel? - Is there a way to tidy stale tunnel connections? instructions: - text: Clean up stale connections on Argo Tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Remove disconnected connections from Argo Tunnel {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/warp_connector'].get update: x-apievangelist-phrasing: intent: List WARP Connector tunnels effect: read questions: - Which WARP Connector tunnels are in my account? - Can I filter WARP Connector tunnels by name or deletion status? instructions: - text: List WARP Connector tunnels in account {account_id}. slots: account_id: path.account_id - text: Show WARP Connector tunnels named {name}. slots: name: query.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/warp_connector'].post update: x-apievangelist-phrasing: intent: Create a WARP Connector tunnel effect: write questions: - How do I create a new WARP Connector tunnel? - What name should a WARP Connector tunnel get? instructions: - text: Create WARP Connector tunnel {name} in account {account_id}. slots: name: requestBody.name account_id: path.account_id - text: Set up a WARP Connector called {name}. slots: name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/warp_connector/{tunnel_id}'].get update: x-apievangelist-phrasing: intent: Get a WARP Connector tunnel effect: read questions: - What's the status of one WARP Connector tunnel? - Can I look up a WARP Connector tunnel by ID? instructions: - text: Show WARP Connector tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Fetch WARP Connector {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/warp_connector/{tunnel_id}'].delete update: x-apievangelist-phrasing: intent: Delete a WARP Connector tunnel effect: destructive questions: - How do I delete a WARP Connector tunnel? - Can I remove a WARP Connector I no longer run? instructions: - text: Delete WARP Connector tunnel {tunnel_id} from account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Remove WARP Connector {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/warp_connector/{tunnel_id}'].patch update: x-apievangelist-phrasing: intent: Update a WARP Connector tunnel effect: write questions: - Can I rename a WARP Connector tunnel? - How do I rotate the secret of a WARP Connector tunnel? instructions: - text: Rename WARP Connector tunnel {tunnel_id} in account {account_id} to {name}. slots: tunnel_id: path.tunnel_id account_id: path.account_id name: requestBody.name - text: Set the secret of WARP Connector {tunnel_id} to {tunnel_secret}. slots: tunnel_id: path.tunnel_id tunnel_secret: requestBody.tunnel_secret method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/warp_connector/{tunnel_id}/token'].get update: x-apievangelist-phrasing: intent: Get a WARP Connector tunnel token effect: read questions: - Where do I get the token to link a WARP device to a WARP Connector tunnel? - Which token associates a device with my connector tunnel? instructions: - text: Get the token for WARP Connector tunnel {tunnel_id} in account {account_id}. slots: tunnel_id: path.tunnel_id account_id: path.account_id - text: Give me the device enrollment token for WARP Connector {tunnel_id}. slots: tunnel_id: path.tunnel_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/account-settings'].get update: x-apievangelist-phrasing: intent: Get Workers account settings effect: read questions: - What are the account-wide Workers settings, like the default usage model? - Can I check my Workers account configuration? instructions: - text: Show Workers account settings for account {account_id}. slots: account_id: path.account_id - text: Fetch my account-level Workers settings. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/account-settings'].put update: x-apievangelist-phrasing: intent: Set Workers account settings effect: write questions: - How do I create or change account-wide Workers settings? - Can I set the default usage model for all my Workers? instructions: - text: Save Workers account settings for account {account_id}. slots: account_id: path.account_id - text: Write new account-level Workers settings. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/deployments/by-script/{script_id}'].get update: x-apievangelist-phrasing: intent: List a Worker's deployments effect: read questions: - What's the deployment history of one of my Workers? - When was my Worker script last deployed? instructions: - text: List deployments of Worker script {script_id} in account {account_id}. slots: script_id: path.script_id account_id: path.account_id - text: Show the deploy history for script {script_id}. slots: script_id: path.script_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/deployments/by-script/{script_id}/detail/{deployment_id}'].get update: x-apievangelist-phrasing: intent: Get one Worker deployment's details effect: read questions: - Which script version and resources were in a specific Worker deployment? - Can I inspect a single past deployment of a Worker? instructions: - text: Show deployment {deployment_id} of script {script_id} in account {account_id}. slots: deployment_id: path.deployment_id script_id: path.script_id account_id: path.account_id - text: Get the details of Worker deployment {deployment_id} for {script_id}. slots: deployment_id: path.deployment_id script_id: path.script_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces'].get update: x-apievangelist-phrasing: intent: List Workers for Platforms dispatch namespaces effect: read questions: - Which dispatch namespaces do I have for Workers for Platforms? - Can I see all my customer script namespaces? instructions: - text: List dispatch namespaces in account {account_id}. slots: account_id: path.account_id - text: Show my Workers for Platforms namespaces. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces'].post update: x-apievangelist-phrasing: intent: Create a dispatch namespace effect: write questions: - How do I create a namespace to hold my customers' Workers? - Can I name a new Workers for Platforms namespace? instructions: - text: Create dispatch namespace {name} in account {account_id}. slots: name: requestBody.name account_id: path.account_id - text: Make a new Workers for Platforms namespace called {name}. slots: name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}'].get update: x-apievangelist-phrasing: intent: Get a dispatch namespace effect: read questions: - How many scripts are in a particular dispatch namespace? - Can I look up one Workers for Platforms namespace? instructions: - text: Show dispatch namespace {dispatch_namespace} in account {account_id}. slots: dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Fetch namespace {dispatch_namespace}. slots: dispatch_namespace: path.dispatch_namespace method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}'].delete update: x-apievangelist-phrasing: intent: Delete a dispatch namespace effect: destructive questions: - How do I delete a Workers for Platforms namespace? - Can I remove a dispatch namespace I no longer use? instructions: - text: Delete dispatch namespace {dispatch_namespace} from account {account_id}. slots: dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Remove namespace {dispatch_namespace}. slots: dispatch_namespace: path.dispatch_namespace method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}'].get update: x-apievangelist-phrasing: intent: Get a customer Worker in a dispatch namespace effect: read questions: - What do I know about a customer's script uploaded to my dispatch namespace? - When was a Workers for Platforms script last modified? instructions: - text: Show script {script_name} in dispatch namespace {dispatch_namespace} of account {account_id}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Get info on customer Worker {script_name} in {dispatch_namespace}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}'].put update: x-apievangelist-phrasing: intent: Upload a Worker module to a dispatch namespace effect: write questions: - How do I deploy a customer's Worker into a dispatch namespace? - Can I upload a module Worker for Workers for Platforms? instructions: - text: Upload Worker module {script_name} to dispatch namespace {dispatch_namespace} in account {account_id}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Deploy customer script {script_name} into namespace {dispatch_namespace}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}'].delete update: x-apievangelist-phrasing: intent: Delete a Worker from a dispatch namespace effect: destructive questions: - How do I remove a customer's Worker from my dispatch namespace? - Can I force-delete a namespaced script that still has bindings? instructions: - text: Delete script {script_name} from dispatch namespace {dispatch_namespace} in account {account_id}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Force delete customer Worker {script_name} in {dispatch_namespace} with force {force}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace force: query.force method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/bindings'].get update: x-apievangelist-phrasing: intent: Get bindings of a namespaced Worker effect: read questions: - Which KV, R2 or other bindings does a customer's namespaced script have? - Can I list the bindings on a Workers for Platforms script? instructions: - text: List bindings of script {script_name} in namespace {dispatch_namespace} of account {account_id}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Show what customer Worker {script_name} in {dispatch_namespace} is bound to. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content'].get update: x-apievangelist-phrasing: intent: Get code of a namespaced Worker effect: read questions: - Can I download the code of a customer's script in a dispatch namespace? - Where do I read the source of a Workers for Platforms script? instructions: - text: Get the content of script {script_name} in namespace {dispatch_namespace} of account {account_id}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Download the code of customer Worker {script_name} from {dispatch_namespace}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content'].put update: x-apievangelist-phrasing: intent: Replace code of a namespaced Worker effect: write questions: - How do I update only the code of a customer's script in a dispatch namespace? - Can I name the main module when replacing a namespaced script's content? instructions: - text: Replace the code of script {script_name} in namespace {dispatch_namespace} of account {account_id}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Put new content for customer Worker {script_name} in {dispatch_namespace} with main module {main}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace main: header.CF-WORKER-MAIN-MODULE-PART method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/settings'].get update: x-apievangelist-phrasing: intent: Get settings of a namespaced Worker effect: read questions: - What settings are applied to a customer script in my dispatch namespace? - Can I read the config of a Workers for Platforms script? instructions: - text: Get settings for script {script_name} in namespace {dispatch_namespace} of account {account_id}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Show the config of customer Worker {script_name} in {dispatch_namespace}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/settings'].patch update: x-apievangelist-phrasing: intent: Patch settings of a namespaced Worker effect: write questions: - How do I change the bindings on a customer script in a dispatch namespace? - Can I patch metadata on a Workers for Platforms script? instructions: - text: Patch settings of script {script_name} in namespace {dispatch_namespace} of account {account_id}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace account_id: path.account_id - text: Update bindings on customer Worker {script_name} in {dispatch_namespace}. slots: script_name: path.script_name dispatch_namespace: path.dispatch_namespace method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/domains'].get update: x-apievangelist-phrasing: intent: List Worker custom domains effect: read questions: - Which hostnames are attached to my Workers? - Can I filter Worker domains by zone or service? instructions: - text: List Worker domains in account {account_id}. slots: account_id: path.account_id - text: Show Worker domains for service {service} in zone {zone_name}. slots: service: query.service zone_name: query.zone_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/domains'].put update: x-apievangelist-phrasing: intent: Attach a Worker to a hostname effect: write questions: - How do I serve a Worker on my own hostname? - Can I attach a Worker environment to a zone's domain? instructions: - text: Attach Worker {service} to {hostname} in zone {zone_id} for account {account_id} using environment {environment}. slots: service: requestBody.service hostname: requestBody.hostname zone_id: requestBody.zone_id account_id: path.account_id environment: requestBody.environment - text: Serve Worker {service} on hostname {hostname}. slots: service: requestBody.service hostname: requestBody.hostname method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/domains/{domain_id}'].get update: x-apievangelist-phrasing: intent: Get a Worker custom domain effect: read questions: - Which Worker and environment is a particular domain attached to? - Can I look up one Worker domain by ID? instructions: - text: Show Worker domain {domain_id} in account {account_id}. slots: domain_id: path.domain_id account_id: path.account_id - text: Get the Worker attachment for domain {domain_id}. slots: domain_id: path.domain_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/domains/{domain_id}'].delete update: x-apievangelist-phrasing: intent: Detach a Worker from a hostname effect: destructive questions: - How do I stop a Worker from serving a hostname? - Can I detach a Worker from its custom domain? instructions: - text: Detach Worker domain {domain_id} in account {account_id}. slots: domain_id: path.domain_id account_id: path.account_id - text: Unhook the Worker from domain {domain_id}. slots: domain_id: path.domain_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/durable_objects/namespaces'].get update: x-apievangelist-phrasing: intent: List Durable Object namespaces effect: read questions: - Which Durable Object namespaces does my account own? - Can I see every Durable Object class namespace I have? instructions: - text: List Durable Object namespaces in account {account_id}. slots: account_id: path.account_id - text: Show my Durable Object namespaces. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/durable_objects/namespaces/{id}/objects'].get update: x-apievangelist-phrasing: intent: List Durable Objects in a namespace effect: read questions: - How do I list the individual Durable Objects inside a namespace? - Can I page through Durable Objects with a cursor? instructions: - text: List Durable Objects in namespace {id} of account {account_id}. slots: id: path.id account_id: path.account_id - text: Show up to {limit} objects in Durable Object namespace {id}. slots: limit: query.limit id: path.id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues'].get update: x-apievangelist-phrasing: intent: List queues effect: read questions: - Which queues does my account own? - Can I see all my Workers queues? instructions: - text: List queues in account {account_id}. slots: account_id: path.account_id - text: Show all my message queues. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues'].post update: x-apievangelist-phrasing: intent: Create a queue effect: write questions: - How do I create a new message queue for my Workers? - Can I add a queue to my account? instructions: - text: Create a queue in account {account_id}. slots: account_id: path.account_id - text: Set up a new Workers queue. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues/{name}'].get update: x-apievangelist-phrasing: intent: Get a queue's details effect: read questions: - What producers and consumers does a particular queue have? - Can I look up one queue by name? instructions: - text: Show queue {name} in account {account_id}. slots: name: path.name account_id: path.account_id - text: Get details of queue {name}. slots: name: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues/{name}'].put update: x-apievangelist-phrasing: intent: Update a queue effect: write questions: - Can I change the settings of an existing queue? - What's the way to rename or reconfigure a queue? instructions: - text: Update queue {name} in account {account_id}. slots: name: path.name account_id: path.account_id - text: Reconfigure queue {name}. slots: name: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues/{name}'].delete update: x-apievangelist-phrasing: intent: Delete a queue effect: destructive questions: - How do I delete a queue? - Can I remove a queue I no longer use? instructions: - text: Delete queue {name} from account {account_id}. slots: name: path.name account_id: path.account_id - text: Remove the queue called {name}. slots: name: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues/{name}/consumers'].get update: x-apievangelist-phrasing: intent: List a queue's consumers effect: read questions: - Which Workers consume messages from a queue? - Can I see all consumers attached to one queue? instructions: - text: List consumers of queue {name} in account {account_id}. slots: name: path.name account_id: path.account_id - text: Show who reads from queue {name}. slots: name: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues/{name}/consumers'].post update: x-apievangelist-phrasing: intent: Add a consumer to a queue effect: write questions: - How do I attach a Worker to consume messages from a queue? - Can I create a new consumer for an existing queue? instructions: - text: Create a consumer for queue {name} in account {account_id}. slots: name: path.name account_id: path.account_id - text: Add a new consumer to queue {name}. slots: name: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues/{name}/consumers/{consumer_name}'].put update: x-apievangelist-phrasing: intent: Update or create a named queue consumer effect: write questions: - Can I change a queue consumer's batch settings? - Does updating a consumer create it if it does not exist? instructions: - text: Update consumer {consumer_name} on queue {name} in account {account_id}. slots: consumer_name: path.consumer_name name: path.name account_id: path.account_id - text: Upsert consumer {consumer_name} for queue {name}. slots: consumer_name: path.consumer_name name: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/queues/{name}/consumers/{consumer_name}'].delete update: x-apievangelist-phrasing: intent: Delete a queue consumer effect: destructive questions: - How do I detach a consumer from a queue? - Can I remove one consumer and keep the queue? instructions: - text: Delete consumer {consumer_name} from queue {name} in account {account_id}. slots: consumer_name: path.consumer_name name: path.name account_id: path.account_id - text: Remove consumer {consumer_name} of queue {name}. slots: consumer_name: path.consumer_name name: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts'].get update: x-apievangelist-phrasing: intent: List Worker scripts effect: read questions: - Which Workers have I uploaded to my account? - Can I see all my Worker scripts at once? instructions: - text: List Worker scripts in account {account_id}. slots: account_id: path.account_id - text: Show all my uploaded Workers. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}'].get update: x-apievangelist-phrasing: intent: Download a Worker's raw script effect: read questions: - How do I download the original source of a Worker? - Is the downloaded Worker script JSON-encoded? instructions: - text: Download Worker {script_name} from account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Fetch the raw original script of Worker {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}'].put update: x-apievangelist-phrasing: intent: Upload or roll back a Worker module effect: write questions: - How do I deploy a new version of a Worker module? - Can I roll a Worker back to an earlier deployment? instructions: - text: Upload Worker module {script_name} to account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Roll Worker {script_name} back to deployment {rollback_to}. slots: script_name: path.script_name rollback_to: query.rollback_to method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}'].delete update: x-apievangelist-phrasing: intent: Delete a Worker script effect: destructive questions: - How do I delete a Worker from my account? - Can I force delete a Worker that other resources still reference? instructions: - text: Delete Worker {script_name} from account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Force delete Worker script {script_name} with force {force}. slots: script_name: path.script_name force: query.force method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/content'].put update: x-apievangelist-phrasing: intent: Replace a Worker's code only effect: write questions: - Can I update a Worker's code without touching its config or metadata? - How do I push new code to a Worker but keep its bindings? instructions: - text: Replace only the code of Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Put new content into Worker {script_name} with main module {main}. slots: script_name: path.script_name main: header.CF-WORKER-MAIN-MODULE-PART method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/content/v2'].get update: x-apievangelist-phrasing: intent: Get a Worker's code content effect: read questions: - Can I fetch only the code of a Worker, without its settings? - Where do I read the script content of an account Worker? instructions: - text: Get the script content of Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Show the code only for Worker {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/schedules'].get update: x-apievangelist-phrasing: intent: Get a Worker's cron triggers effect: read questions: - What schedules does my Worker run on? - Which cron triggers are set on a Worker? instructions: - text: Show cron triggers for Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: List the schedules on Worker {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/schedules'].put update: x-apievangelist-phrasing: intent: Update a Worker's cron triggers effect: write questions: - How do I schedule a Worker to run on a cron? - Can I change the cron schedules on an existing Worker? instructions: - text: Update cron triggers of Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Set new schedules on Worker {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/settings'].get update: x-apievangelist-phrasing: intent: Get a Worker's settings and bindings effect: read questions: - Which bindings and usage model does an account Worker use? - Can I read a Worker's metadata and config? instructions: - text: Get settings of Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Show the bindings and config of Worker {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/settings'].patch update: x-apievangelist-phrasing: intent: Patch a Worker's settings and bindings effect: write questions: - How do I add a binding to an existing account Worker? - Can I patch a Worker's config without re-uploading code? instructions: - text: Patch settings of Worker {script_name} in account {account_id} with {settings}. slots: script_name: path.script_name account_id: path.account_id settings: requestBody.settings - text: Update bindings on Worker {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/tails'].get update: x-apievangelist-phrasing: intent: List live log tails on a Worker effect: read questions: - Which log tails are currently running on my Worker? - Is anyone tailing logs on a Worker right now? instructions: - text: List active tails on Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Show current log tails for {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/tails'].post update: x-apievangelist-phrasing: intent: Start tailing a Worker's logs effect: write questions: - How do I stream live logs and exceptions from a Worker? - Can I start a log tail on a Worker? instructions: - text: Start a log tail on Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Begin streaming logs and exceptions from {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/tails/{id}'].delete update: x-apievangelist-phrasing: intent: Stop a Worker log tail effect: destructive questions: - How do I stop a log tail I started on a Worker? - Can I delete a running tail session? instructions: - text: Delete tail {id} on Worker {script_name} in account {account_id}. slots: id: path.id script_name: path.script_name account_id: path.account_id - text: Stop log tail {id} for {script_name}. slots: id: path.id script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/usage-model'].get update: x-apievangelist-phrasing: intent: Get a Worker's usage model effect: read questions: - Is my Worker billed on the bundled or unbound usage model? - Which usage model does a given Worker use? instructions: - text: Show the usage model of Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Check the billing model for {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/scripts/{script_name}/usage-model'].put update: x-apievangelist-phrasing: intent: Change a Worker's usage model effect: write questions: - How do I switch a Worker to a different usage model? - Does changing the usage model need a Workers Paid subscription? instructions: - text: Update the usage model of Worker {script_name} in account {account_id}. slots: script_name: path.script_name account_id: path.account_id - text: Switch billing model for {script_name}. slots: script_name: path.script_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/content'].get update: x-apievangelist-phrasing: intent: Get code of a Worker environment effect: read questions: - How do I fetch the code deployed to a specific environment of a service? - Can I read the script in a service's staging environment? instructions: - text: Get the code of service {service_name} environment {environment_name} in account {account_id}. slots: service_name: path.service_name environment_name: path.environment_name account_id: path.account_id - text: Download the {environment_name} environment script of service {service_name}. slots: environment_name: path.environment_name service_name: path.service_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/content'].put update: x-apievangelist-phrasing: intent: Replace code of a Worker environment effect: write questions: - How do I push new code to one environment of a Worker service? - Can I update a service environment's script without changing its settings? instructions: - text: Put new code into service {service_name} environment {environment_name} in account {account_id}. slots: service_name: path.service_name environment_name: path.environment_name account_id: path.account_id - text: Replace the {environment_name} environment script of service {service_name} with main module {main}. slots: environment_name: path.environment_name service_name: path.service_name main: header.CF-WORKER-MAIN-MODULE-PART method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/settings'].get update: x-apievangelist-phrasing: intent: Get settings of a Worker environment effect: read questions: - What bindings are set on a particular environment of my Worker service? - Can I read the settings of a service's production environment? instructions: - text: Get settings for service {service_name} environment {environment_name} in account {account_id}. slots: service_name: path.service_name environment_name: path.environment_name account_id: path.account_id - text: Show the config of the {environment_name} environment on service {service_name}. slots: environment_name: path.environment_name service_name: path.service_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/settings'].patch update: x-apievangelist-phrasing: intent: Patch settings of a Worker environment effect: write questions: - How do I change bindings on one environment of a Worker service? - Can I patch metadata for a service's staging environment only? instructions: - text: Patch settings of service {service_name} environment {environment_name} in account {account_id}. slots: service_name: path.service_name environment_name: path.environment_name account_id: path.account_id - text: Update bindings on the {environment_name} environment of service {service_name}. slots: environment_name: path.environment_name service_name: path.service_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/subdomain'].get update: x-apievangelist-phrasing: intent: Get the account's workers.dev subdomain effect: read questions: - What's my account's workers.dev subdomain? - Do I already have a Workers subdomain set up? instructions: - text: Show the Workers subdomain for account {account_id}. slots: account_id: path.account_id - text: Tell me my workers.dev subdomain. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/workers/subdomain'].put update: x-apievangelist-phrasing: intent: Create the account's workers.dev subdomain effect: write questions: - How do I claim a workers.dev subdomain for my account? - Can I register a Workers subdomain? instructions: - text: Create a Workers subdomain for account {account_id}. slots: account_id: path.account_id - text: Claim a new workers.dev subdomain for me. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/zerotrust/connectivity_settings'].get update: x-apievangelist-phrasing: intent: View Zero Trust connectivity settings effect: read questions: - Is the ICMP proxy turned on for my Zero Trust account? - Can I check whether WARP-to-WARP off-ramp is enabled in Zero Trust connectivity settings? instructions: - text: Show the Zero Trust connectivity settings for account {account}. slots: account: path.account_id - text: Tell me if ICMP proxying is currently enabled in my Zero Trust connectivity settings. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_id}/zerotrust/connectivity_settings'].patch update: x-apievangelist-phrasing: intent: Change Zero Trust connectivity settings effect: write questions: - How do I enable the ICMP proxy for Zero Trust traffic? - Can I switch on the WARP off-ramp for my Zero Trust account through the API? instructions: - text: Set the ICMP proxy to {icmp_proxy_enabled} in account {account}'s Zero Trust connectivity settings. slots: icmp_proxy_enabled: requestBody.icmp_proxy_enabled account: path.account_id - text: Turn the WARP off-ramp setting to {offramp_warp_enabled} for Zero Trust in account {account}. slots: offramp_warp_enabled: requestBody.offramp_warp_enabled account: path.account_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/billing/profile'].get update: x-apievangelist-phrasing: intent: View the account's billing profile effect: read questions: - What billing profile does Cloudflare have on file for my account? - Where can I see the billing contact and address details for my account? instructions: - text: Fetch the current billing profile for account {account}. slots: account: path.account_identifier - text: Pull up the billing address and payment profile on my account using the deprecated billing profile endpoint. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests'].post update: x-apievangelist-phrasing: intent: List Cloudforce One intelligence requests effect: read questions: - Which threat intelligence requests have I filed with Cloudforce One? - Can I filter my Cloudforce One requests by status or completion date? - What requests did my team open with the Cloudforce One analysts this quarter? instructions: - text: List page {page} of my Cloudforce One requests in account {account}, {per_page} per page. slots: page: requestBody.page per_page: requestBody.per_page account: path.account_identifier - text: Show Cloudforce One requests with status {status} created after {created_after}. slots: status: requestBody.status created_after: requestBody.created_after method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/{request_identifier}'].get update: x-apievangelist-phrasing: intent: Get one Cloudforce One request effect: read questions: - What is the current state of a specific intelligence request I sent Cloudforce One? - Can I see the full content and priority of a single Cloudforce One request? instructions: - text: Get Cloudforce One request {request} in account {account}. slots: request: path.request_identifier account: path.account_identifier - text: Show me the details of intelligence request {request}. slots: request: path.request_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/{request_identifier}'].put update: x-apievangelist-phrasing: intent: Edit a Cloudforce One request effect: write questions: - Can I change the priority of an intelligence request after submitting it to Cloudforce One? - How do I change the TLP marking on a request already in the Cloudforce One queue? instructions: - text: Raise the priority of Cloudforce One request {request} to {priority}. slots: request: path.request_identifier priority: requestBody.priority - text: Rewrite the summary of request {request} in account {account} to {summary}. slots: request: path.request_identifier account: path.account_identifier summary: requestBody.summary method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/{request_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a Cloudforce One request effect: destructive questions: - Can I withdraw an intelligence request I no longer need from Cloudforce One? - Is it possible to remove a request from the Cloudforce One queue entirely? instructions: - text: Delete Cloudforce One request {request} from account {account}. slots: request: path.request_identifier account: path.account_identifier - text: Withdraw intelligence request {request} from the analyst queue. slots: request: path.request_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/{request_identifier}/message'].post update: x-apievangelist-phrasing: intent: Read the message thread on a request effect: read questions: - What have the Cloudforce One analysts replied on my request? - Can I page through the conversation on an intelligence request sorted by date? instructions: - text: List the messages on request {request} in account {account}, page {page} with {per_page} per page. slots: request: path.request_identifier account: path.account_identifier page: requestBody.page per_page: requestBody.per_page - text: Show analyst replies on request {request} posted after {after}. slots: request: path.request_identifier after: requestBody.after method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/{request_identifier}/message/{message_identifer}'].put update: x-apievangelist-phrasing: intent: Edit a message on a request effect: write questions: - Can I correct a message I already posted on a Cloudforce One request? - How do I reword a comment in an intelligence request thread? instructions: - text: Change message {message} on request {request} in account {account} to say {content}. slots: message: path.message_identifer request: path.request_identifier account: path.account_identifier content: requestBody.content - text: Fix the wording of my posted message {message} on request {request}. slots: message: path.message_identifer request: path.request_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/{request_identifier}/message/{message_identifer}'].delete update: x-apievangelist-phrasing: intent: Delete a message from a request thread effect: destructive questions: - Can I remove a message I posted by mistake on a Cloudforce One request? - Is a message deleted from an intelligence request thread gone for good? instructions: - text: Delete message {message} from request {request} in account {account}. slots: message: path.message_identifer request: path.request_identifier account: path.account_identifier - text: Remove my mistaken comment {message} from the request {request} thread. slots: message: path.message_identifer request: path.request_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/{request_identifier}/message/new'].post update: x-apievangelist-phrasing: intent: Post a message on a request effect: write questions: - How do I send follow-up information to the analysts on an open Cloudforce One request? - Can I add a new comment to an existing intelligence request? instructions: - text: Post a new message on request {request} in account {account} saying {content}. slots: request: path.request_identifier account: path.account_identifier content: requestBody.content - text: Reply to the analysts on request {request} with the extra indicators I found. slots: request: path.request_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/constants'].get update: x-apievangelist-phrasing: intent: Get request priority, status and TLP values effect: read questions: - What priority levels and statuses can a Cloudforce One request have? - Which TLP markings are allowed on intelligence requests? instructions: - text: List the allowed priority, status and TLP constants for Cloudforce One requests in account {account}. slots: account: path.account_identifier - text: Show me the valid TLP labels before I file an intelligence request. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/new'].post update: x-apievangelist-phrasing: intent: File a new Cloudforce One request effect: write questions: - How do I ask the Cloudforce One team to investigate a threat for us? - What do I need to include when submitting an intelligence request, like title, type and TLP? instructions: - text: Open a Cloudforce One request in account {account} titled {summary} with details {content}. slots: account: path.account_identifier summary: requestBody.summary content: requestBody.content - text: Submit a {request_type} intelligence request at priority {priority} marked TLP {tlp}. slots: request_type: requestBody.request_type priority: requestBody.priority tlp: requestBody.tlp method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/priority'].post update: x-apievangelist-phrasing: intent: List priority intelligence requirements effect: read questions: - Which priority intelligence requirements has my organization registered with Cloudforce One? - Can I page through all of our PIRs? instructions: - text: List page {page} of priority intelligence requirements in account {account}, {per_page} at a time. slots: page: requestBody.page account: path.account_identifier per_page: requestBody.per_page - text: Show all of our PIRs on file with Cloudforce One. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/priority/{priority_identifer}'].get update: x-apievangelist-phrasing: intent: Get a priority intelligence requirement effect: read questions: - What exactly does one of our priority intelligence requirements say? - Can I look up the labels and TLP on a single PIR? instructions: - text: Get priority intelligence requirement {priority} in account {account}. slots: priority: path.priority_identifer account: path.account_identifier - text: Show the requirement text and labels of PIR {priority}. slots: priority: path.priority_identifer method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/priority/{priority_identifer}'].put update: x-apievangelist-phrasing: intent: Edit a priority intelligence requirement effect: write questions: - Can I change the labels or requirement text on an existing PIR? - Does updating a priority intelligence requirement need every field resent? instructions: - text: Update PIR {pir} in account {account} to requirement {requirement} with labels {labels}, priority {priority} and TLP {tlp}. slots: pir: path.priority_identifer account: path.account_identifier requirement: requestBody.requirement labels: requestBody.labels priority: requestBody.priority tlp: requestBody.tlp - text: Bump PIR {pir} to priority {priority}. slots: pir: path.priority_identifer priority: requestBody.priority method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/priority/{priority_identifer}'].delete update: x-apievangelist-phrasing: intent: Delete a priority intelligence requirement effect: destructive questions: - Can I retire a priority intelligence requirement we no longer care about? - What happens to our PIR quota when I remove a requirement? instructions: - text: Delete priority intelligence requirement {pir} from account {account}. slots: pir: path.priority_identifer account: path.account_identifier - text: Retire the PIR {pir}. slots: pir: path.priority_identifer method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/priority/new'].post update: x-apievangelist-phrasing: intent: Create a priority intelligence requirement effect: write questions: - How do I tell Cloudforce One what threats matter most to my organization? - What fields does a new PIR need, such as labels, priority and TLP? instructions: - text: Create a PIR in account {account} with requirement {requirement}, labels {labels}, priority {priority} and TLP {tlp}. slots: account: path.account_identifier requirement: requestBody.requirement labels: requestBody.labels priority: requestBody.priority tlp: requestBody.tlp - text: Register a new priority requirement to track ransomware groups targeting {labels}. slots: labels: requestBody.labels method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/priority/quota'].get update: x-apievangelist-phrasing: intent: Check the PIR quota effect: read questions: - How many more priority intelligence requirements can we create? - What is our PIR allowance with Cloudforce One? instructions: - text: Show the priority intelligence requirement quota for account {account}. slots: account: path.account_identifier - text: Tell me how many PIRs we have left. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/quota'].get update: x-apievangelist-phrasing: intent: Check the intelligence request quota effect: read questions: - How many Cloudforce One requests can we still submit this period? - Have we used up our intelligence request allowance? instructions: - text: Show the Cloudforce One request quota for account {account}. slots: account: path.account_identifier - text: Check how much of our analyst request quota remains. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/cloudforce-one/requests/types'].get update: x-apievangelist-phrasing: intent: List available request types effect: read questions: - What kinds of intelligence requests can I file with Cloudforce One? - Which request types are valid when opening a Cloudforce One request? instructions: - text: List the Cloudforce One request types available to account {account}. slots: account: path.account_identifier - text: Show me the request type options for a new analyst request. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/custom_pages'].get update: x-apievangelist-phrasing: intent: List account-level custom error pages effect: read questions: - Which custom error and challenge pages are set at the account level? - Can I see all of my account's custom pages across every zone? instructions: - text: List the account-level custom pages for account {account}. slots: account: path.account_identifier - text: Show which account-wide custom pages are using a custom URL versus the default. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/custom_pages/{identifier}'].get update: x-apievangelist-phrasing: intent: Get one account-level custom page effect: read questions: - What URL is my account's custom 500 error page pointing at? - Is a particular account-level custom page active or on default? instructions: - text: Get account custom page {page} in account {account}. slots: page: path.identifier account: path.account_identifier - text: Show the configuration of the account-wide {page} page. slots: page: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/custom_pages/{identifier}'].put update: x-apievangelist-phrasing: intent: Point an account custom page at a URL effect: write questions: - How do I serve my own branded block page across all zones in my account? - Can I revert an account-level custom page back to the Cloudflare default? instructions: - text: Set account custom page {page} in account {account} to {url} with state {state}. slots: page: path.identifier account: path.account_identifier url: requestBody.url state: requestBody.state - text: Switch account-wide page {page} back to default. slots: page: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/d1/database/{database_identifier}'].get update: x-apievangelist-phrasing: intent: Get a D1 database effect: read questions: - What are the details of one of my D1 databases, like its size and version? - Can I look up a D1 database by its ID? instructions: - text: Get D1 database {database} in account {account}. slots: database: path.database_identifier account: path.account_identifier - text: Show me the file size and table count of D1 database {database}. slots: database: path.database_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/d1/database/{database_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a D1 database effect: destructive questions: - Can I permanently drop a D1 database I no longer use? - What happens to the data when a D1 database is deleted? instructions: - text: Delete D1 database {database} from account {account}. slots: database: path.database_identifier account: path.account_identifier - text: Drop the D1 database {database} entirely. slots: database: path.database_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/d1/database/{database_identifier}/query'].post update: x-apievangelist-phrasing: intent: Run SQL against a D1 database effect: write questions: - How do I run a SQL statement against my D1 database over HTTP? - Can I pass bound parameters with a D1 query instead of string concatenation? instructions: - text: Run {sql} on D1 database {database} in account {account}. slots: sql: requestBody.sql database: path.database_identifier account: path.account_identifier - text: Execute {sql} against {database} with parameters {params}. slots: sql: requestBody.sql database: path.database_identifier params: requestBody.params method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/dns_firewall/{identifier}/dns_analytics/report'].get update: x-apievangelist-phrasing: intent: Get DNS Firewall analytics totals effect: read questions: - How many queries did my DNS Firewall cluster answer last week, broken down by response code? - Can I get aggregate DNS Firewall metrics for a date range as a single table? instructions: - text: Report {metrics} for DNS Firewall cluster {cluster} in account {account} between {since} and {until}. slots: metrics: query.metrics cluster: path.identifier account: path.account_identifier since: query.since until: query.until - text: Summarize DNS Firewall cluster {cluster} traffic by {dimensions}. slots: cluster: path.identifier dimensions: query.dimensions method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/dns_firewall/{identifier}/dns_analytics/report/bytime'].get update: x-apievangelist-phrasing: intent: Get DNS Firewall analytics over time effect: read questions: - What does query volume on my DNS Firewall cluster look like hour by hour? - Can I chart DNS Firewall metrics as a time series with a chosen interval? instructions: - text: Show {metrics} for DNS Firewall cluster {cluster} in account {account} grouped every {time_delta}. slots: metrics: query.metrics cluster: path.identifier account: path.account_identifier time_delta: query.time_delta - text: Plot DNS Firewall cluster {cluster} query counts over time since {since}. slots: cluster: path.identifier since: query.since method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/email/routing/addresses'].get update: x-apievangelist-phrasing: intent: List email forwarding destination addresses effect: read questions: - Which inboxes can Email Routing forward my mail to? - Can I list only destination addresses that have not been verified yet? instructions: - text: List Email Routing destination addresses in account {account}. slots: account: path.account_identifier - text: Show destination addresses where verified is {verified}. slots: verified: query.verified method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/email/routing/addresses'].post update: x-apievangelist-phrasing: intent: Add an email forwarding destination effect: write questions: - How do I add a new inbox that Email Routing can forward to? - Does a new destination address need to be verified before forwarding works? instructions: - text: Add {email} as an Email Routing destination address in account {account}. slots: email: requestBody.email account: path.account_identifier - text: Register {email} so my domain's mail can be forwarded to it. slots: email: requestBody.email method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/email/routing/addresses/{destination_address_identifier}'].get update: x-apievangelist-phrasing: intent: Get one email destination address effect: read questions: - Has a particular forwarding destination been verified yet? - When was an Email Routing destination address created? instructions: - text: Get Email Routing destination address {address} in account {account}. slots: address: path.destination_address_identifier account: path.account_identifier - text: Check the verification status of destination {address}. slots: address: path.destination_address_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/email/routing/addresses/{destination_address_identifier}'].delete update: x-apievangelist-phrasing: intent: Remove an email destination address effect: destructive questions: - Can I stop forwarding mail to an inbox by deleting its destination address? - What happens to routing rules that point at a destination I delete? instructions: - text: Delete Email Routing destination address {address} from account {account}. slots: address: path.destination_address_identifier account: path.account_identifier - text: Remove the forwarding destination {address}. slots: address: path.destination_address_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/firewall/access_rules/rules'].get update: x-apievangelist-phrasing: intent: List account-wide IP Access rules effect: read questions: - Which IPs, ranges or countries are blocked across every zone in my account? - Can I sort account IP Access rules by when they were created? instructions: - text: List the account-level IP Access rules for account {account}. slots: account: path.account_identifier - text: Show account IP Access rules matching {filters}, ordered by {order}. slots: filters: query.filters order: query.order method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/firewall/access_rules/rules'].post update: x-apievangelist-phrasing: intent: Block or allow an IP across all zones effect: write questions: - How do I block an IP address on every site in my account at once? - Can I challenge a whole country across all my zones with one rule? instructions: - text: Create an account IP Access rule in {account} that applies {mode} to {configuration}. slots: account: path.account_identifier mode: requestBody.mode configuration: requestBody.configuration - text: Block {configuration} account-wide with the note {notes}. slots: configuration: requestBody.configuration notes: requestBody.notes method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/firewall/access_rules/rules/{identifier}'].get update: x-apievangelist-phrasing: intent: Get one account IP Access rule effect: read questions: - What action does a specific account-wide IP Access rule take? - Can I see the notes and target of one account IP Access rule? instructions: - text: Get account IP Access rule {rule} in account {account}. slots: rule: path.identifier account: path.account_identifier - text: Show what IP or range account rule {rule} targets. slots: rule: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/firewall/access_rules/rules/{identifier}'].delete update: x-apievangelist-phrasing: intent: Delete an account IP Access rule effect: destructive questions: - Can I unblock an IP everywhere by deleting the account-level rule? - Does deleting an account IP Access rule affect every zone? instructions: - text: Delete account IP Access rule {rule} from account {account}. slots: rule: path.identifier account: path.account_identifier - text: Remove the account-wide IP rule {rule} so the address is no longer blocked. slots: rule: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/firewall/access_rules/rules/{identifier}'].patch update: x-apievangelist-phrasing: intent: Change an account IP Access rule effect: write questions: - Can I switch an existing account IP rule from block to challenge? - How do I edit the notes on an IP Access rule that applies to all zones? instructions: - text: Change account IP Access rule {rule} in account {account} to mode {mode}. slots: rule: path.identifier account: path.account_identifier mode: requestBody.mode - text: Update the notes on account IP rule {rule} to {notes}. slots: rule: path.identifier notes: requestBody.notes method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/cf_interconnects'].get update: x-apievangelist-phrasing: intent: List Magic interconnects effect: read questions: - Which Cloudflare Network Interconnects are attached to my account? - Can I see all of my CNI interconnects for Magic Transit or Magic WAN? instructions: - text: List the Magic interconnects in account {account}. slots: account: path.account_identifier - text: Show every CNI interconnect and its interface address. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/cf_interconnects'].put update: x-apievangelist-phrasing: intent: Update several interconnects at once effect: write questions: - Can I change the settings on many CNI interconnects in one call? - Is there a validate-only mode for a bulk interconnect update? instructions: - text: Bulk update the Magic interconnects in account {account}. slots: account: path.account_identifier - text: Apply the new health check settings to all my interconnects in one request. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/cf_interconnects/{tunnel_identifier}'].get update: x-apievangelist-phrasing: intent: Get one interconnect's details effect: read questions: - What MTU and health check does a specific interconnect use? - Can I look up a single CNI interconnect by its tunnel ID? instructions: - text: Get interconnect {tunnel} in account {account}. slots: tunnel: path.tunnel_identifier account: path.account_identifier - text: Show the GRE settings of interconnect {tunnel}. slots: tunnel: path.tunnel_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/cf_interconnects/{tunnel_identifier}'].put update: x-apievangelist-phrasing: intent: Update one interconnect effect: write questions: - How do I change the MTU on a single interconnect? - Can I dry-run an interconnect change before persisting it? instructions: - text: Set the MTU of interconnect {tunnel} in account {account} to {mtu}. slots: tunnel: path.tunnel_identifier account: path.account_identifier mtu: requestBody.mtu - text: Change the description on interconnect {tunnel} to {description}. slots: tunnel: path.tunnel_identifier description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/gre_tunnels'].get update: x-apievangelist-phrasing: intent: List GRE tunnels effect: read questions: - Which static GRE tunnels are configured for my Magic network? - Can I see all GRE tunnel endpoints on my account? instructions: - text: List the GRE tunnels in account {account}. slots: account: path.account_identifier - text: Show every Magic GRE tunnel with its customer endpoint. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/gre_tunnels'].put update: x-apievangelist-phrasing: intent: Update several GRE tunnels at once effect: write questions: - Can I edit many GRE tunnels in one bulk request? - Is there a way to validate a batch GRE tunnel change without saving it? instructions: - text: Bulk update the GRE tunnels in account {account}. slots: account: path.account_identifier - text: Apply the same TTL change to all of my GRE tunnels in one call. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/gre_tunnels'].post update: x-apievangelist-phrasing: intent: Create GRE tunnels effect: write questions: - How do I set up a new GRE tunnel to Cloudflare for Magic Transit? - Can I create several GRE tunnels in a single request? instructions: - text: Create new GRE tunnels in account {account}. slots: account: path.account_identifier - text: Validate a new GRE tunnel definition without persisting it. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/gre_tunnels/{tunnel_identifier}'].get update: x-apievangelist-phrasing: intent: Get one GRE tunnel effect: read questions: - What customer and Cloudflare endpoints does a specific GRE tunnel use? - Can I check the health check config on one GRE tunnel? instructions: - text: Get GRE tunnel {tunnel} in account {account}. slots: tunnel: path.tunnel_identifier account: path.account_identifier - text: Show the interface address of GRE tunnel {tunnel}. slots: tunnel: path.tunnel_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/gre_tunnels/{tunnel_identifier}'].put update: x-apievangelist-phrasing: intent: Update one GRE tunnel effect: write questions: - How do I change the customer endpoint on an existing GRE tunnel? - What fields are required when editing a single GRE tunnel? instructions: - text: 'Update GRE tunnel {tunnel} in {account}: name {name}, endpoints {customer_gre_endpoint} to {cloudflare_gre_endpoint}, interface {interface_address}.' slots: tunnel: path.tunnel_identifier account: path.account_identifier name: requestBody.name customer_gre_endpoint: requestBody.customer_gre_endpoint cloudflare_gre_endpoint: requestBody.cloudflare_gre_endpoint interface_address: requestBody.interface_address - text: Set the TTL on GRE tunnel {tunnel} to {ttl}. slots: tunnel: path.tunnel_identifier ttl: requestBody.ttl method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/gre_tunnels/{tunnel_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a GRE tunnel effect: destructive questions: - Can I tear down a static GRE tunnel I no longer need? - Does deleting a GRE tunnel disable it right away? instructions: - text: Delete GRE tunnel {tunnel} from account {account}. slots: tunnel: path.tunnel_identifier account: path.account_identifier - text: Disable and remove the GRE tunnel {tunnel}. slots: tunnel: path.tunnel_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/ipsec_tunnels'].get update: x-apievangelist-phrasing: intent: List IPsec tunnels effect: read questions: - Which IPsec tunnels are connected to my Magic WAN? - Can I see all IPsec tunnels on my account and their endpoints? instructions: - text: List the IPsec tunnels in account {account}. slots: account: path.account_identifier - text: Show every Magic IPsec tunnel with its Cloudflare endpoint. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/ipsec_tunnels'].put update: x-apievangelist-phrasing: intent: Update several IPsec tunnels at once effect: write questions: - Can I change many IPsec tunnels in one bulk call? - Is there a validation-only option for a batch IPsec tunnel update? instructions: - text: Bulk update the IPsec tunnels in account {account}. slots: account: path.account_identifier - text: Enable replay protection on all of my IPsec tunnels in one request. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/ipsec_tunnels'].post update: x-apievangelist-phrasing: intent: Create an IPsec tunnel effect: write questions: - How do I connect a branch office to Cloudflare with a new IPsec tunnel? - Do I have to supply a pre-shared key when creating an IPsec tunnel? instructions: - text: Create IPsec tunnel {name} in account {account} to Cloudflare endpoint {cloudflare_endpoint} with interface {interface_address}. slots: name: requestBody.name account: path.account_identifier cloudflare_endpoint: requestBody.cloudflare_endpoint interface_address: requestBody.interface_address - text: Add an IPsec tunnel from customer endpoint {customer_endpoint} with replay protection on. slots: customer_endpoint: requestBody.customer_endpoint method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/ipsec_tunnels/{tunnel_identifier}'].get update: x-apievangelist-phrasing: intent: Get one IPsec tunnel effect: read questions: - What endpoints and interface address does a specific IPsec tunnel use? - Is replay protection enabled on one of my IPsec tunnels? instructions: - text: Get IPsec tunnel {tunnel} in account {account}. slots: tunnel: path.tunnel_identifier account: path.account_identifier - text: Show the health check settings of IPsec tunnel {tunnel}. slots: tunnel: path.tunnel_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/ipsec_tunnels/{tunnel_identifier}'].put update: x-apievangelist-phrasing: intent: Update one IPsec tunnel effect: write questions: - How do I move an existing IPsec tunnel to a new customer endpoint? - Can I rename a single IPsec tunnel and change its description? instructions: - text: 'Update IPsec tunnel {tunnel} in account {account}: name {name}, Cloudflare endpoint {cloudflare_endpoint}, interface {interface_address}.' slots: tunnel: path.tunnel_identifier account: path.account_identifier name: requestBody.name cloudflare_endpoint: requestBody.cloudflare_endpoint interface_address: requestBody.interface_address - text: Point IPsec tunnel {tunnel} at customer endpoint {customer_endpoint}. slots: tunnel: path.tunnel_identifier customer_endpoint: requestBody.customer_endpoint method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/ipsec_tunnels/{tunnel_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete an IPsec tunnel effect: destructive questions: - Can I remove a static IPsec tunnel when a site is decommissioned? - Is there a dry-run option before deleting an IPsec tunnel? instructions: - text: Delete IPsec tunnel {tunnel} from account {account}. slots: tunnel: path.tunnel_identifier account: path.account_identifier - text: Disable and remove the IPsec tunnel {tunnel}. slots: tunnel: path.tunnel_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/ipsec_tunnels/{tunnel_identifier}/psk_generate'].post update: x-apievangelist-phrasing: intent: Generate a PSK for an IPsec tunnel effect: write questions: - How do I get a pre-shared key for the IKE session on my IPsec tunnel? - Can Cloudflare generate a fresh PSK for an existing IPsec tunnel? instructions: - text: Generate a pre-shared key for IPsec tunnel {tunnel} in account {account}. slots: tunnel: path.tunnel_identifier account: path.account_identifier - text: Issue a new PSK for tunnel {tunnel} so I can configure my router. slots: tunnel: path.tunnel_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/routes'].get update: x-apievangelist-phrasing: intent: List Magic static routes effect: read questions: - Which static routes are steering traffic through my Magic network? - Can I see every prefix and next hop configured in Magic WAN routing? instructions: - text: List the Magic static routes in account {account}. slots: account: path.account_identifier - text: Show all my static routes with their prefixes, next hops and priorities. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/routes'].put update: x-apievangelist-phrasing: intent: Update many static routes at once effect: write questions: - Can I change the priority of dozens of Magic routes in one request? - Is there a validate-only mode for a bulk static route update? instructions: - text: 'Bulk update these Magic static routes in account {account}: {routes}.' slots: account: path.account_identifier routes: requestBody.routes - text: Apply new weights to the routes {routes} in a single call. slots: routes: requestBody.routes method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/routes'].post update: x-apievangelist-phrasing: intent: Create a Magic static route effect: write questions: - How do I add a new static route to my Magic Transit network? - Can I validate a new route before it is saved? instructions: - text: Create a new Magic static route in account {account}. slots: account: path.account_identifier - text: Add a static route sending a prefix to my new tunnel next hop. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/routes'].delete update: x-apievangelist-phrasing: intent: Delete several static routes at once effect: destructive questions: - Can I remove a batch of Magic static routes in one call? - How do I clean up many old routes when retiring a data center? instructions: - text: 'Delete these Magic static routes from account {account}: {routes}.' slots: account: path.account_identifier routes: requestBody.routes - text: Bulk remove the routes {routes}. slots: routes: requestBody.routes method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/routes/{route_identifier}'].get update: x-apievangelist-phrasing: intent: Get one Magic static route effect: read questions: - What prefix and next hop does a particular static route use? - Can I look up the weight and scope of one Magic route? instructions: - text: Get Magic static route {route} in account {account}. slots: route: path.route_identifier account: path.account_identifier - text: Show the priority and scope of route {route}. slots: route: path.route_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/routes/{route_identifier}'].put update: x-apievangelist-phrasing: intent: Update one Magic static route effect: write questions: - How do I change the next hop on an existing static route? - Can I restrict a single route to certain colos with a scope? instructions: - text: Update route {route} in account {account} to prefix {prefix} via {nexthop} at priority {priority}. slots: route: path.route_identifier account: path.account_identifier prefix: requestBody.prefix nexthop: requestBody.nexthop priority: requestBody.priority - text: Set the weight of static route {route} to {weight}. slots: route: path.route_identifier weight: requestBody.weight method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/routes/{route_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete one Magic static route effect: destructive questions: - Can I disable and remove a single static route? - What happens to traffic for a prefix after its only route is deleted? instructions: - text: Delete Magic static route {route} from account {account}. slots: route: path.route_identifier account: path.account_identifier - text: Remove the single route {route}. slots: route: path.route_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites'].get update: x-apievangelist-phrasing: intent: List Magic WAN sites effect: read questions: - Which Magic WAN sites are set up on my account? - Can I find the site a particular connector device belongs to? instructions: - text: List the Magic WAN sites in account {account}. slots: account: path.account_identifier - text: Show the sites attached to connector {connector}. slots: connector: query.connector_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites'].post update: x-apievangelist-phrasing: intent: Create a Magic WAN site effect: write questions: - How do I add a new branch office as a Magic WAN site? - Can I create a site in high availability mode? instructions: - text: Create a Magic WAN site in account {account} from {site}. slots: account: path.account_identifier site: requestBody.site - text: Add a new site for our Denver branch office. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}'].get update: x-apievangelist-phrasing: intent: Get one Magic WAN site effect: read questions: - What connector and location is configured for one of my sites? - Is a given Magic WAN site running in high availability mode? instructions: - text: Get Magic WAN site {site} in account {account}. slots: site: path.site_identifier account: path.account_identifier - text: Show the configuration of site {site}. slots: site: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}'].put update: x-apievangelist-phrasing: intent: Update a Magic WAN site effect: write questions: - How do I rename or relocate an existing Magic WAN site? - Can I attach a secondary connector to a site after creating it? instructions: - text: Update Magic WAN site {site_id} in account {account} with {site}. slots: site_id: path.site_identifier account: path.account_identifier site: requestBody.site - text: Change the description of site {site_id}. slots: site_id: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a Magic WAN site effect: destructive questions: - Can I remove a Magic WAN site when we close an office? - Does deleting a site also drop its LANs and WANs? instructions: - text: Delete Magic WAN site {site} from account {account}. slots: site: path.site_identifier account: path.account_identifier - text: Remove the closed branch site {site}. slots: site: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/acls'].get update: x-apievangelist-phrasing: intent: List a site's ACLs effect: read questions: - Which ACLs control LAN-to-LAN traffic at one of my sites? - Can I see all access control lists on a Magic WAN site? instructions: - text: List the ACLs on site {site} in account {account}. slots: site: path.site_identifier account: path.account_identifier - text: Show every access control list configured at site {site}. slots: site: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/acls'].post update: x-apievangelist-phrasing: intent: Create a site ACL effect: write questions: - How do I allow traffic between two LANs at a site? - Can I add an access control list to a Magic WAN site? instructions: - text: Create ACL {acl} on site {site} in account {account}. slots: acl: requestBody.acl site: path.site_identifier account: path.account_identifier - text: Add an ACL at site {site} letting the guest LAN reach the printer LAN. slots: site: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/acls/{acl_identifier}'].get update: x-apievangelist-phrasing: intent: Get one site ACL effect: read questions: - Which LANs and protocols does a specific site ACL cover? - Can I read a single ACL's rules at a site? instructions: - text: Get ACL {acl} on site {site} in account {account}. slots: acl: path.acl_identifier site: path.site_identifier account: path.account_identifier - text: Show the rules of site ACL {acl}. slots: acl: path.acl_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/acls/{acl_identifier}'].put update: x-apievangelist-phrasing: intent: Update a site ACL effect: write questions: - Can I change which ports an existing site ACL allows? - How do I edit a LAN-to-LAN ACL at a site? instructions: - text: Update ACL {acl_id} on site {site} in account {account} with {acl}. slots: acl_id: path.acl_identifier site: path.site_identifier account: path.account_identifier acl: requestBody.acl - text: Rename site ACL {acl_id}. slots: acl_id: path.acl_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/acls/{acl_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a site ACL effect: destructive questions: - Can I remove an ACL so two LANs can no longer talk directly? - Is a deleted site ACL recoverable? instructions: - text: Delete ACL {acl} from site {site} in account {account}. slots: acl: path.acl_identifier site: path.site_identifier account: path.account_identifier - text: Remove the site access control list {acl}. slots: acl: path.acl_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/lans'].get update: x-apievangelist-phrasing: intent: List a site's LANs effect: read questions: - Which LAN segments are attached to one of my Magic WAN sites? - Can I see the static addressing on every LAN at a site? instructions: - text: List the LANs at site {site} in account {account}. slots: site: path.site_identifier account: path.account_identifier - text: Show every LAN segment configured for site {site}. slots: site: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/lans'].post update: x-apievangelist-phrasing: intent: Create a LAN at a site effect: write questions: - How do I add a new LAN to a Magic WAN site? - Does a LAN on a high availability site need static addressing? instructions: - text: Create LAN {lan} at site {site} in account {account}. slots: lan: requestBody.lan site: path.site_identifier account: path.account_identifier - text: Add a LAN on port 3 of site {site} with a DHCP server. slots: site: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/lans/{lan_identifier}'].get update: x-apievangelist-phrasing: intent: Get one LAN effect: read questions: - What VLAN and addressing does a specific LAN use? - Can I check the DHCP settings on one LAN? instructions: - text: Get LAN {lan} at site {site} in account {account}. slots: lan: path.lan_identifier site: path.site_identifier account: path.account_identifier - text: Show the static addressing of LAN {lan}. slots: lan: path.lan_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/lans/{lan_identifier}'].put update: x-apievangelist-phrasing: intent: Update a LAN effect: write questions: - Can I change the subnet or VLAN tag on an existing LAN? - How do I turn on DHCP relay for a LAN at a site? instructions: - text: Update LAN {lan_id} at site {site} in account {account} with {lan}. slots: lan_id: path.lan_identifier site: path.site_identifier account: path.account_identifier lan: requestBody.lan - text: Change the VLAN tag on LAN {lan_id}. slots: lan_id: path.lan_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/lans/{lan_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a LAN effect: destructive questions: - Can I remove a LAN segment from a Magic WAN site? - What happens to ACLs that reference a LAN I delete? instructions: - text: Delete LAN {lan} from site {site} in account {account}. slots: lan: path.lan_identifier site: path.site_identifier account: path.account_identifier - text: Remove the unused LAN {lan}. slots: lan: path.lan_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/wans'].get update: x-apievangelist-phrasing: intent: List a site's WAN uplinks effect: read questions: - Which internet uplinks are configured at one of my Magic WAN sites? - Can I see the priority of each WAN link at a site? instructions: - text: List the WANs at site {site} in account {account}. slots: site: path.site_identifier account: path.account_identifier - text: Show every WAN uplink for site {site}. slots: site: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/wans'].post update: x-apievangelist-phrasing: intent: Add a WAN uplink to a site effect: write questions: - How do I add a second internet circuit to a Magic WAN site? - Can I define a WAN with a static IP? instructions: - text: Create WAN {wan} at site {site} in account {account}. slots: wan: requestBody.wan site: path.site_identifier account: path.account_identifier - text: Add a backup LTE uplink to site {site}. slots: site: path.site_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/wans/{wan_identifier}'].get update: x-apievangelist-phrasing: intent: Get one WAN uplink effect: read questions: - What physical port and priority does a specific WAN uplink use? - Can I check the static addressing of one WAN? instructions: - text: Get WAN {wan} at site {site} in account {account}. slots: wan: path.wan_identifier site: path.site_identifier account: path.account_identifier - text: Show the port and priority of WAN {wan}. slots: wan: path.wan_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/wans/{wan_identifier}'].put update: x-apievangelist-phrasing: intent: Update a WAN uplink effect: write questions: - Can I make a different WAN the primary uplink at a site? - How do I change the static IP on an existing WAN? instructions: - text: Update WAN {wan_id} at site {site} in account {account} with {wan}. slots: wan_id: path.wan_identifier site: path.site_identifier account: path.account_identifier wan: requestBody.wan - text: Make WAN {wan_id} the highest priority uplink. slots: wan_id: path.wan_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/magic/sites/{site_identifier}/wans/{wan_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a WAN uplink effect: destructive questions: - Can I remove an internet circuit from a site once it is cancelled? - Will a site stay online if I delete one of its WANs? instructions: - text: Delete WAN {wan} from site {site} in account {account}. slots: wan: path.wan_identifier site: path.site_identifier account: path.account_identifier - text: Remove the cancelled uplink {wan}. slots: wan: path.wan_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/config'].get update: x-apievangelist-phrasing: intent: View network monitoring configuration effect: read questions: - What sampling rate and router IPs are set for Magic Network Monitoring? - Is flow monitoring configured on my account yet? instructions: - text: Show the Magic Network Monitoring configuration for account {account}. slots: account: path.account_identifier - text: List the router IPs sending flow data to network monitoring. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/config'].put update: x-apievangelist-phrasing: intent: Replace the network monitoring configuration effect: write questions: - Can I overwrite my whole network monitoring config in one request? - Does replacing the monitoring configuration require every field? instructions: - text: Replace the entire network monitoring configuration for account {account}. slots: account: path.account_identifier - text: Overwrite my flow monitoring config with a new sampling rate and router list. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/config'].post update: x-apievangelist-phrasing: intent: Set up network monitoring effect: write questions: - How do I start sending NetFlow or sFlow data to Magic Network Monitoring? - What do I configure first to enable network monitoring on a new account? instructions: - text: Create a Magic Network Monitoring configuration for account {account}. slots: account: path.account_identifier - text: Set up flow monitoring for the first time with my edge router's IP. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/config'].delete update: x-apievangelist-phrasing: intent: Delete the network monitoring configuration effect: destructive questions: - Can I switch off Magic Network Monitoring by removing its configuration? - What is lost when the monitoring configuration is deleted? instructions: - text: Delete the network monitoring configuration for account {account}. slots: account: path.account_identifier - text: Remove my flow monitoring setup entirely. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/config'].patch update: x-apievangelist-phrasing: intent: Edit some network monitoring settings effect: write questions: - Can I change just the sampling rate without resending the whole monitoring config? - How do I add one router IP to network monitoring? instructions: - text: Patch selected fields of the network monitoring configuration in account {account}. slots: account: path.account_identifier - text: Change only the default sampling rate in my flow monitoring settings. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/config/full'].get update: x-apievangelist-phrasing: intent: View monitoring config with its rules effect: read questions: - Can I get my network monitoring settings and all its DDoS rules in one response? - What does my full Magic Network Monitoring setup look like? instructions: - text: Show the full network monitoring configuration including rules for account {account}. slots: account: path.account_identifier - text: Give me the sampling, router IPs and every alert rule together. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/rules'].get update: x-apievangelist-phrasing: intent: List network monitoring rules effect: read questions: - Which traffic threshold rules are watching my network? - Can I see every Magic Network Monitoring alert rule? instructions: - text: List the network monitoring rules in account {account}. slots: account: path.account_identifier - text: Show all of my flow-based alert rules and their thresholds. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/rules'].put update: x-apievangelist-phrasing: intent: Replace network monitoring rules effect: write questions: - Can I update my monitoring rules through a single PUT? - How do I overwrite an existing network monitoring rule in full? instructions: - text: Update the network monitoring rules for account {account}. slots: account: path.account_identifier - text: Replace my traffic threshold rule with new bandwidth and packet limits. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/rules'].post update: x-apievangelist-phrasing: intent: Create a network monitoring rule effect: write questions: - How do I get alerted when traffic to a prefix spikes? - Can I create more than one monitoring rule per request? instructions: - text: Create a network monitoring rule in account {account}. slots: account: path.account_identifier - text: Add a rule that alerts when my /24 exceeds 1 Gbps. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/rules/{rule_identifier}'].get update: x-apievangelist-phrasing: intent: Get one network monitoring rule effect: read questions: - What threshold and prefixes does a specific monitoring rule use? - Is auto-advertisement on for one of my monitoring rules? instructions: - text: Get network monitoring rule {rule} in account {account}. slots: rule: path.rule_identifier account: path.account_identifier - text: Show the thresholds of monitoring rule {rule}. slots: rule: path.rule_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/rules/{rule_identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a network monitoring rule effect: destructive questions: - Can I stop alerting on a prefix by deleting its monitoring rule? - Is a deleted monitoring rule gone for good? instructions: - text: Delete network monitoring rule {rule} from account {account}. slots: rule: path.rule_identifier account: path.account_identifier - text: Remove the noisy traffic alert rule {rule}. slots: rule: path.rule_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/rules/{rule_identifier}'].patch update: x-apievangelist-phrasing: intent: Edit one network monitoring rule effect: write questions: - Can I raise the threshold on one monitoring rule without touching the others? - How do I patch a single flow alert rule? instructions: - text: Patch network monitoring rule {rule} in account {account}. slots: rule: path.rule_identifier account: path.account_identifier - text: Raise the bandwidth threshold on rule {rule}. slots: rule: path.rule_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/mnm/rules/{rule_identifier}/advertisement'].patch update: x-apievangelist-phrasing: intent: Toggle auto-advertisement for a rule effect: write questions: - Can a monitoring rule automatically advertise my prefix to Cloudflare during an attack? - How do I turn off automatic prefix advertisement on a rule? instructions: - text: Update the prefix advertisement setting on monitoring rule {rule} in account {account}. slots: rule: path.rule_identifier account: path.account_identifier - text: Enable automatic advertisement when rule {rule} fires. slots: rule: path.rule_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/request-tracer/trace'].post update: x-apievangelist-phrasing: intent: Trace how a request passes through rules effect: read questions: - Which Cloudflare rules would fire for a given URL and method? - Can I simulate a request with custom headers and cookies to debug my configuration? instructions: - text: Trace a {method} request to {url} in account {account}. slots: method: requestBody.method url: requestBody.url account: path.account_identifier - text: Trace {url} with headers {headers} and show which rules match. slots: url: requestBody.url headers: requestBody.headers method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/rules/lists/{list_id}/items/{item_id}'].get update: x-apievangelist-phrasing: intent: Get an item from a custom list effect: read questions: - What IP or hostname does a particular list item hold? - Can I read one entry from a rules list by its item ID? instructions: - text: Get item {item} from list {list} in account {account}. slots: item: path.item_id list: path.list_id account: path.account_identifier - text: Show the comment on list entry {item}. slots: item: path.item_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/rules/lists/bulk_operations/{operation_id}'].get update: x-apievangelist-phrasing: intent: Check a list bulk operation's status effect: read questions: - Has my bulk update of list items finished yet? - Why did an asynchronous list operation fail? instructions: - text: Check the status of list bulk operation {operation} in account {account}. slots: operation: path.operation_id account: path.account_identifier - text: Tell me whether bulk job {operation} is pending, running, completed or failed. slots: operation: path.operation_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/subscriptions'].get update: x-apievangelist-phrasing: intent: List the account's subscriptions effect: read questions: - What plans and add-ons is my account currently paying for? - Can I see the billing frequency and price of each subscription? instructions: - text: List the subscriptions on account {account}. slots: account: path.account_identifier - text: Show every active subscription with its current period end date. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/subscriptions'].post update: x-apievangelist-phrasing: intent: Start an account subscription effect: write questions: - How do I subscribe my account to a new rate plan? - Can I choose monthly or yearly billing when adding a subscription? instructions: - text: Subscribe account {account} to rate plan {rate_plan}. slots: account: path.account_identifier rate_plan: requestBody.rate_plan - text: Add a subscription billed {frequency}. slots: frequency: requestBody.frequency method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/subscriptions/{subscription_identifier}'].put update: x-apievangelist-phrasing: intent: Change an account subscription effect: write questions: - Can I switch an existing subscription to a different rate plan? - How do I move a subscription from monthly to yearly billing? instructions: - text: Change subscription {subscription} in account {account} to rate plan {rate_plan}. slots: subscription: path.subscription_identifier account: path.account_identifier rate_plan: requestBody.rate_plan - text: Switch subscription {subscription} to {frequency} billing. slots: subscription: path.subscription_identifier frequency: requestBody.frequency method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/subscriptions/{subscription_identifier}'].delete update: x-apievangelist-phrasing: intent: Cancel an account subscription effect: destructive questions: - Can I cancel an add-on subscription I no longer need? - What happens to a service when its account subscription is deleted? instructions: - text: Cancel subscription {subscription} on account {account}. slots: subscription: path.subscription_identifier account: path.account_identifier - text: Delete the account subscription {subscription}. slots: subscription: path.subscription_identifier method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes'].get update: x-apievangelist-phrasing: intent: List Vectorize indexes effect: read questions: - Which vector indexes have I created in Vectorize? - Can I see the dimensions and metric of every Vectorize index? instructions: - text: List the Vectorize indexes in account {account}. slots: account: path.account_identifier - text: Show all my vector databases and their configs. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes'].post update: x-apievangelist-phrasing: intent: Create a Vectorize index effect: write questions: - How do I create a vector index for embeddings in Cloudflare? - Can I pick the dimensions and distance metric when creating a Vectorize index? instructions: - text: Create Vectorize index {name} in account {account} with config {config}. slots: name: requestBody.name account: path.account_identifier config: requestBody.config - text: Make a new vector index {name} described as {description}. slots: name: requestBody.name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes/{index_name}'].get update: x-apievangelist-phrasing: intent: Get a Vectorize index effect: read questions: - What dimensions and metric does one of my vector indexes use? - Can I look up a Vectorize index by name? instructions: - text: Get Vectorize index {index} in account {account}. slots: index: path.index_name account: path.account_identifier - text: Show the configuration of vector index {index}. slots: index: path.index_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes/{index_name}'].put update: x-apievangelist-phrasing: intent: Update a Vectorize index description effect: write questions: - Can I change the description of an existing vector index? - What can be edited on a Vectorize index after creation? instructions: - text: Set the description of Vectorize index {index} in account {account} to {description}. slots: index: path.index_name account: path.account_identifier description: requestBody.description - text: Relabel vector index {index} as {description}. slots: index: path.index_name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes/{index_name}'].delete update: x-apievangelist-phrasing: intent: Delete a Vectorize index effect: destructive questions: - Can I drop a whole vector index and all its embeddings? - Is deleting a Vectorize index reversible? instructions: - text: Delete Vectorize index {index} from account {account}. slots: index: path.index_name account: path.account_identifier - text: Drop the vector index {index} entirely. slots: index: path.index_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes/{index_name}/delete-by-ids'].post update: x-apievangelist-phrasing: intent: Delete vectors by ID effect: destructive questions: - How do I remove specific embeddings from a vector index? - Can I delete several vectors at once by their IDs? instructions: - text: Delete vectors {ids} from index {index} in account {account}. slots: ids: requestBody.ids index: path.index_name account: path.account_identifier - text: Purge the embeddings with IDs {ids} from {index}. slots: ids: requestBody.ids index: path.index_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes/{index_name}/get-by-ids'].post update: x-apievangelist-phrasing: intent: Fetch vectors by ID effect: read questions: - Can I retrieve the stored values and metadata for specific vector IDs? - What embedding is saved under a given vector ID? instructions: - text: Fetch vectors {ids} from index {index} in account {account}. slots: ids: requestBody.ids index: path.index_name account: path.account_identifier - text: Look up the stored embeddings for IDs {ids} in {index}. slots: ids: requestBody.ids index: path.index_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes/{index_name}/insert'].post update: x-apievangelist-phrasing: intent: Insert vectors into an index effect: write questions: - How do I load new embeddings into a Vectorize index? - Does inserting vectors tell me how many succeeded? instructions: - text: Insert these vectors into index {index} in account {account}. slots: index: path.index_name account: path.account_identifier - text: Add new embeddings to {index}, failing on IDs that already exist. slots: index: path.index_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes/{index_name}/query'].post update: x-apievangelist-phrasing: intent: Find the nearest vectors effect: read questions: - How do I run a similarity search against my vector index? - Can I return metadata along with the top matching vectors? instructions: - text: Find the {topK} nearest vectors to {vector} in index {index} in account {account}. slots: topK: requestBody.topK vector: requestBody.vector index: path.index_name account: path.account_identifier - text: Query {index} for similar embeddings and include metadata {returnMetadata}. slots: index: path.index_name returnMetadata: requestBody.returnMetadata method: generated generated: '2026-09-26' - target: $.paths['/accounts/{account_identifier}/vectorize/indexes/{index_name}/upsert'].post update: x-apievangelist-phrasing: intent: Upsert vectors into an index effect: write questions: - Can I overwrite existing embeddings and add new ones in one call? - What is the difference in behavior when upserting a vector that already exists? instructions: - text: Upsert these vectors into index {index} in account {account}. slots: index: path.index_name account: path.account_identifier - text: Create or replace embeddings in {index} with my refreshed batch. slots: index: path.index_name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{accountId}/urlscanner/scan'].get update: x-apievangelist-phrasing: intent: Search URL scans effect: read questions: - Has anyone scanned a particular hostname with URL Scanner recently? - Can I find scans that were flagged as malicious in a date range? - Which scans contacted a given IP or ASN? instructions: - text: Search URL scans in account {account} for hostname {hostname}. slots: account: path.accountId hostname: query.hostname - text: Find malicious scans between {date_start} and {date_end}. slots: date_start: query.date_start date_end: query.date_end method: generated generated: '2026-09-26' - target: $.paths['/accounts/{accountId}/urlscanner/scan'].post update: x-apievangelist-phrasing: intent: Submit a URL for scanning effect: write questions: - How do I scan a suspicious link with Cloudflare URL Scanner? - Can I keep a URL scan unlisted and pick screenshot resolutions? - How often can my account submit a new scan? instructions: - text: Scan {url} in account {account}. slots: url: requestBody.url account: path.accountId - text: Submit {url} for scanning with visibility {visibility}. slots: url: requestBody.url visibility: requestBody.visibility method: generated generated: '2026-09-26' - target: $.paths['/accounts/{accountId}/urlscanner/scan/{scanId}'].get update: x-apievangelist-phrasing: intent: Get a URL scan's results effect: read questions: - What did URL Scanner find on a page I submitted? - Is a scan still in progress or has it finished? instructions: - text: Get URL scan {scan} in account {account}. slots: scan: path.scanId account: path.accountId - text: Show the verdict and requests recorded by scan {scan}. slots: scan: path.scanId method: generated generated: '2026-09-26' - target: $.paths['/accounts/{accountId}/urlscanner/scan/{scanId}/har'].get update: x-apievangelist-phrasing: intent: Download a scan's HAR file effect: read questions: - Can I download the full network log of a URL scan? - Where do I get the HAR archive recorded during a scan? instructions: - text: Download the HAR for scan {scan} in account {account}. slots: scan: path.scanId account: path.accountId - text: Get the HTTP archive captured by scan {scan}. slots: scan: path.scanId method: generated generated: '2026-09-26' - target: $.paths['/accounts/{accountId}/urlscanner/scan/{scanId}/screenshot'].get update: x-apievangelist-phrasing: intent: Get a scan's screenshot effect: read questions: - What did the page look like when URL Scanner loaded it? - Can I get the mobile or tablet screenshot of a scan? instructions: - text: Get the screenshot for scan {scan} in account {account}. slots: scan: path.scanId account: path.accountId - text: Show the {resolution} screenshot of scan {scan}. slots: resolution: query.resolution scan: path.scanId method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps'].get update: x-apievangelist-phrasing: intent: List Access applications effect: read questions: - Which apps are protected behind Cloudflare Access in my account? - Can I see every self-hosted and SaaS application in Zero Trust Access? instructions: - text: List the Access applications in account {account}. slots: account: path.identifier - text: Show all apps protected by Access along with their domains. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps'].post update: x-apievangelist-phrasing: intent: Protect a new app with Access effect: write questions: - How do I put an internal tool behind Cloudflare Access? - Can I add a SaaS application to Access through the API? instructions: - text: Add a new Access application in account {account}. slots: account: path.identifier - text: Protect our staging dashboard hostname with a new self-hosted Access app. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{app_id}'].get update: x-apievangelist-phrasing: intent: Get an Access application effect: read questions: - What domain and session duration does one of my Access apps use? - Can I look up a single Access application by its ID? instructions: - text: Get Access application {app} in account {account}. slots: app: path.app_id account: path.identifier - text: Show the allowed identity providers on Access app {app}. slots: app: path.app_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{app_id}'].put update: x-apievangelist-phrasing: intent: Update an Access application effect: write questions: - Can I change the domain or session length of an existing Access app? - How do I edit the settings of an application already protected by Access? instructions: - text: Update Access application {app} in account {account}. slots: app: path.app_id account: path.identifier - text: Shorten the session duration on Access app {app} to 8 hours. slots: app: path.app_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{app_id}'].delete update: x-apievangelist-phrasing: intent: Delete an Access application effect: destructive questions: - Can I stop protecting an app with Access by deleting it? - What happens to the policies of an Access app I delete? instructions: - text: Delete Access application {app} from account {account}. slots: app: path.app_id account: path.identifier - text: Remove the retired app {app} from Zero Trust Access. slots: app: path.app_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{app_id}/revoke_tokens'].post update: x-apievangelist-phrasing: intent: Revoke all tokens for an Access app effect: destructive questions: - How do I force everyone to log in again to one Access application? - Can I invalidate every session token issued for a single app? instructions: - text: Revoke all tokens issued for Access application {app} in account {account}. slots: app: path.app_id account: path.identifier - text: Sign every user out of app {app} by revoking its tokens. slots: app: path.app_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{app_id}/user_policy_checks'].get update: x-apievangelist-phrasing: intent: Test whether a user can reach an app effect: read questions: - Would a particular user be allowed into one of my Access applications? - Can I check which policy decides a user's access to an app? instructions: - text: Test the Access policies of application {app} in account {account} for a user. slots: app: path.app_id account: path.identifier - text: Check if a contractor would pass the policies on app {app}. slots: app: path.app_id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{uuid}/ca'].get update: x-apievangelist-phrasing: intent: Get an app's short-lived certificate CA effect: read questions: - What public key should my SSH server trust for Access short-lived certificates? - Does an application already have a short-lived certificate CA? instructions: - text: Get the short-lived certificate CA for application {app} in account {account}. slots: app: path.uuid account: path.identifier - text: Show the CA public key for app {app} so I can add it to sshd. slots: app: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{uuid}/ca'].post update: x-apievangelist-phrasing: intent: Create a short-lived certificate CA effect: write questions: - How do I enable short-lived SSH certificates for an Access application? - Can Cloudflare generate a CA and public key for an app? instructions: - text: Create a short-lived certificate CA for application {app} in account {account}. slots: app: path.uuid account: path.identifier - text: Generate a new certificate authority for app {app}. slots: app: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{uuid}/ca'].delete update: x-apievangelist-phrasing: intent: Delete a short-lived certificate CA effect: destructive questions: - Can I remove the short-lived certificate CA from an application? - Will SSH logins break if I delete an app's certificate CA? instructions: - text: Delete the short-lived certificate CA of application {app} in account {account}. slots: app: path.uuid account: path.identifier - text: Remove the certificate authority from app {app}. slots: app: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{uuid}/policies'].get update: x-apievangelist-phrasing: intent: List an app's Access policies effect: read questions: - What rules decide who can reach one of my Access applications? - Can I list the allow and deny policies on an app in precedence order? instructions: - text: List the Access policies on application {app} in account {account}. slots: app: path.uuid account: path.identifier - text: Show every policy protecting app {app}. slots: app: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{uuid}/policies'].post update: x-apievangelist-phrasing: intent: Create an Access policy for an app effect: write questions: - How do I allow only my company's email domain into an Access app? - Can a new Access policy require approval or a purpose justification? instructions: - text: Create Access policy {name} on app {app} in account {account} with decision {decision} including {include}. slots: name: requestBody.name app: path.uuid account: path.identifier decision: requestBody.decision include: requestBody.include - text: Add a policy to app {app} that requires approval from {approval_groups}. slots: app: path.uuid approval_groups: requestBody.approval_groups method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{uuid1}/policies/{uuid}'].get update: x-apievangelist-phrasing: intent: Get one Access policy effect: read questions: - What include and exclude rules does a specific Access policy have? - Can I read one policy's session duration and precedence? instructions: - text: Get Access policy {policy} on app {app} in account {account}. slots: policy: path.uuid app: path.uuid1 account: path.identifier - text: Show the rules of policy {policy} on app {app}. slots: policy: path.uuid app: path.uuid1 method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{uuid1}/policies/{uuid}'].put update: x-apievangelist-phrasing: intent: Update an Access policy effect: write questions: - How do I add another email domain to an existing Access policy? - Can I change a policy from allow to block? instructions: - text: 'Update policy {policy} on app {app} in account {account}: name {name}, decision {decision}, include {include}.' slots: policy: path.uuid app: path.uuid1 account: path.identifier name: requestBody.name decision: requestBody.decision include: requestBody.include - text: Exclude {exclude} from policy {policy} on app {app}. slots: exclude: requestBody.exclude policy: path.uuid app: path.uuid1 method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/{uuid1}/policies/{uuid}'].delete update: x-apievangelist-phrasing: intent: Delete an Access policy effect: destructive questions: - Can I remove one rule set from an Access application? - What happens if I delete the only allow policy on an app? instructions: - text: Delete Access policy {policy} from app {app} in account {account}. slots: policy: path.uuid app: path.uuid1 account: path.identifier - text: Remove the outdated policy {policy} from app {app}. slots: policy: path.uuid app: path.uuid1 method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/apps/ca'].get update: x-apievangelist-phrasing: intent: List all short-lived certificate CAs effect: read questions: - Which of my Access applications have a short-lived certificate CA? - Can I get every CA public key across all apps at once? instructions: - text: List the short-lived certificate CAs in account {account}. slots: account: path.identifier - text: Show every app CA public key for my SSH fleet. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/bookmarks'].get update: x-apievangelist-phrasing: intent: List Bookmark applications (deprecated) effect: read questions: - Which bookmark tiles appear on my Access App Launcher? - Can I still list apps from the old bookmarks endpoint? instructions: - text: List the Bookmark applications in account {account} using the deprecated bookmarks endpoint. slots: account: path.identifier - text: Show every App Launcher bookmark. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/bookmarks/{uuid}'].get update: x-apievangelist-phrasing: intent: Get a Bookmark application (deprecated) effect: read questions: - What URL does one of my App Launcher bookmarks point to? - Is a bookmark visible in the launcher? instructions: - text: Get Bookmark application {bookmark} in account {account}. slots: bookmark: path.uuid account: path.identifier - text: Show the link behind launcher bookmark {bookmark}. slots: bookmark: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/bookmarks/{uuid}'].put update: x-apievangelist-phrasing: intent: Update a Bookmark application (deprecated) effect: write questions: - Can I change the URL of an App Launcher bookmark through the legacy endpoint? - How do I hide a bookmark from the launcher? instructions: - text: Update Bookmark application {bookmark} in account {account}. slots: bookmark: path.uuid account: path.identifier - text: Point launcher bookmark {bookmark} at our new wiki. slots: bookmark: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/bookmarks/{uuid}'].post update: x-apievangelist-phrasing: intent: Create a Bookmark application (deprecated) effect: write questions: - How do I add a shortcut tile to the Access App Launcher with the older bookmarks API? - Does a bookmark application enforce any Access policy? instructions: - text: Create Bookmark application {bookmark} in account {account}. slots: bookmark: path.uuid account: path.identifier - text: Add a launcher bookmark {bookmark} for our HR portal. slots: bookmark: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/bookmarks/{uuid}'].delete update: x-apievangelist-phrasing: intent: Delete a Bookmark application (deprecated) effect: destructive questions: - Can I take a tile off the App Launcher by deleting its bookmark? - Is the legacy bookmark delete still supported? instructions: - text: Delete Bookmark application {bookmark} from account {account}. slots: bookmark: path.uuid account: path.identifier - text: Remove launcher bookmark {bookmark}. slots: bookmark: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/certificates'].get update: x-apievangelist-phrasing: intent: List Access mTLS root certificates effect: read questions: - Which root CAs have I uploaded for mutual TLS in Access? - Can I see the hostnames each mTLS certificate is tied to? instructions: - text: List the Access mTLS root CA certificates configured under account {account}. slots: account: path.identifier - text: Show every Access mTLS certificate and its associated hostnames. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/certificates'].post update: x-apievangelist-phrasing: intent: Upload an mTLS root certificate effect: write questions: - How do I require client certificates for devices reaching an Access app? - Can I scope an uploaded root CA to specific hostnames? instructions: - text: Add mTLS root certificate {name} with PEM {certificate} to account {account}. slots: name: requestBody.name certificate: requestBody.certificate account: path.identifier - text: Upload root CA {name} for hostnames {associated_hostnames}. slots: name: requestBody.name associated_hostnames: requestBody.associated_hostnames method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/certificates/{uuid}'].get update: x-apievangelist-phrasing: intent: Get one mTLS certificate effect: read questions: - When does one of my Access mTLS root certificates expire? - Which hostnames are bound to a particular mTLS certificate? instructions: - text: Get mTLS certificate {cert} in account {account}. slots: cert: path.uuid account: path.identifier - text: Show the fingerprint and expiry of mTLS certificate {cert}. slots: cert: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/certificates/{uuid}'].put update: x-apievangelist-phrasing: intent: Change an mTLS certificate's hostnames effect: write questions: - Can I bind an existing mTLS root certificate to more hostnames? - How do I rename an uploaded mTLS certificate? instructions: - text: Set the hostnames of mTLS certificate {cert} in account {account} to {associated_hostnames}. slots: cert: path.uuid account: path.identifier associated_hostnames: requestBody.associated_hostnames - text: Rename mTLS certificate {cert} to {name}. slots: cert: path.uuid name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/certificates/{uuid}'].delete update: x-apievangelist-phrasing: intent: Delete an mTLS certificate effect: destructive questions: - Can I remove a root CA I no longer trust from Access? - Will devices fail mTLS checks after I delete their root certificate? instructions: - text: Delete mTLS certificate {cert} from account {account}. slots: cert: path.uuid account: path.identifier - text: Remove the compromised root CA {cert}. slots: cert: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/certificates/settings'].get update: x-apievangelist-phrasing: intent: List mTLS hostname settings effect: read questions: - Which hostnames forward client certificate headers to my origin? - Is China network enabled for any of my mTLS hostnames? instructions: - text: List the mTLS hostname settings in account {account}. slots: account: path.identifier - text: Show per-hostname mTLS settings for client certificate forwarding. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/certificates/settings'].put update: x-apievangelist-phrasing: intent: Update mTLS hostname settings effect: write questions: - How do I forward the client certificate to my origin for a hostname? - Can I change mTLS settings for several hostnames at once? instructions: - text: Apply mTLS hostname settings {settings} in account {account}. slots: settings: requestBody.settings account: path.identifier - text: Turn on client certificate forwarding with settings {settings}. slots: settings: requestBody.settings method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/custom_pages'].get update: x-apievangelist-phrasing: intent: List Access login and block pages effect: read questions: - Which custom Access forbidden or identity-denied pages have I built? - How many apps use each of my Access custom pages? instructions: - text: List the Access custom pages in account {account}. slots: account: path.identifier - text: Show my Zero Trust branded error pages with their app counts. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/custom_pages'].post update: x-apievangelist-phrasing: intent: Create an Access custom page effect: write questions: - How do I show my own HTML when Access denies a user? - Can I create a branded identity-denied page for Zero Trust? instructions: - text: Create Access custom page {name} of type {type} in account {account} with HTML {custom_html}. slots: name: requestBody.name type: requestBody.type account: path.identifier custom_html: requestBody.custom_html - text: Add a Zero Trust forbidden page called {name}. slots: name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/custom_pages/{uuid}'].get update: x-apievangelist-phrasing: intent: Get an Access custom page with its HTML effect: read questions: - What HTML is served on one of my Access block pages? - Can I download the markup of a Zero Trust custom page? instructions: - text: Get Access custom page {page} and its HTML in account {account}. slots: page: path.uuid account: path.identifier - text: Show the markup of Zero Trust page {page}. slots: page: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/custom_pages/{uuid}'].put update: x-apievangelist-phrasing: intent: Update an Access custom page effect: write questions: - Can I replace the HTML on an existing Access forbidden page? - How do I rename a Zero Trust custom page? instructions: - text: 'Update Access custom page {page} in account {account}: name {name}, type {type}, HTML {custom_html}.' slots: page: path.uuid account: path.identifier name: requestBody.name type: requestBody.type custom_html: requestBody.custom_html - text: Swap in new branding HTML on Zero Trust page {page}. slots: page: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/custom_pages/{uuid}'].delete update: x-apievangelist-phrasing: intent: Delete an Access custom page effect: destructive questions: - Can I remove a branded Access block page and fall back to the default? - Is it safe to delete a Zero Trust custom page apps still use? instructions: - text: Delete Access custom page {page} from account {account}. slots: page: path.uuid account: path.identifier - text: Remove Zero Trust branded page {page}. slots: page: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/groups'].get update: x-apievangelist-phrasing: intent: List Access groups effect: read questions: - Which reusable user groups are defined in Cloudflare Access? - Can I see the include and require rules of every Access group? instructions: - text: List the Access groups in account {account}. slots: account: path.identifier - text: Show all reusable Access groups and their rules. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/groups'].post update: x-apievangelist-phrasing: intent: Create an Access group effect: write questions: - How do I define a reusable group like 'engineering' for Access policies? - Can a new Access group be the default for all apps? instructions: - text: Create Access group {name} in account {account} including {include}. slots: name: requestBody.name account: path.identifier include: requestBody.include - text: Make an Access group {name} that requires {require}. slots: name: requestBody.name require: requestBody.require method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/groups/{uuid}'].get update: x-apievangelist-phrasing: intent: Get one Access group effect: read questions: - Who belongs to a particular Access group according to its rules? - Is a given Access group marked as default? instructions: - text: Get Access group {group} in account {account}. slots: group: path.uuid account: path.identifier - text: Show the membership rules of group {group}. slots: group: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/groups/{uuid}'].put update: x-apievangelist-phrasing: intent: Update an Access group effect: write questions: - How do I add another email domain to an existing Access group? - Can I exclude contractors from an Access group I already have? instructions: - text: 'Update Access group {group} in account {account}: name {name}, include {include}.' slots: group: path.uuid account: path.identifier name: requestBody.name include: requestBody.include - text: Exclude {exclude} from Access group {group}. slots: exclude: requestBody.exclude group: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/groups/{uuid}'].delete update: x-apievangelist-phrasing: intent: Delete an Access group effect: destructive questions: - Can I remove a user group that no policy uses anymore? - What happens to policies referencing a deleted Access group? instructions: - text: Delete Access group {group} from account {account}. slots: group: path.uuid account: path.identifier - text: Remove the unused group {group}. slots: group: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/identity_providers'].get update: x-apievangelist-phrasing: intent: List Access identity providers effect: read questions: - Which login methods are configured for Cloudflare Access? - Can I see every SSO connection users can sign in with? instructions: - text: List the Access identity providers in account {account}. slots: account: path.identifier - text: Show every configured SSO and one-time PIN login method. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/identity_providers'].post update: x-apievangelist-phrasing: intent: Add an Access identity provider effect: write questions: - How do I connect my SAML or OIDC single sign-on to Access? - Can I add one-time PIN as a login method? instructions: - text: Add a new identity provider to Access in account {account}. slots: account: path.identifier - text: Connect our corporate OIDC SSO as an Access login method. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/identity_providers/{uuid}'].get update: x-apievangelist-phrasing: intent: Get one Access identity provider effect: read questions: - What client ID and settings does one of my SSO connections use? - Is SCIM provisioning enabled on a particular identity provider? instructions: - text: Get Access identity provider {idp} in account {account}. slots: idp: path.uuid account: path.identifier - text: Show the configuration of login method {idp}. slots: idp: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/identity_providers/{uuid}'].put update: x-apievangelist-phrasing: intent: Update an Access identity provider effect: write questions: - How do I rotate the client secret on my Access SSO connection? - Can I change the claims requested from an identity provider? instructions: - text: Update Access identity provider {idp} in account {account}. slots: idp: path.uuid account: path.identifier - text: Replace the client secret on SSO connection {idp}. slots: idp: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/identity_providers/{uuid}'].delete update: x-apievangelist-phrasing: intent: Remove an Access identity provider effect: destructive questions: - Can I disconnect an SSO provider from Access? - Will users of a deleted identity provider lose access? instructions: - text: Delete Access identity provider {idp} from account {account}. slots: idp: path.uuid account: path.identifier - text: Disconnect login method {idp}. slots: idp: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/keys'].get update: x-apievangelist-phrasing: intent: View Access signing key rotation settings effect: read questions: - How often do my Access signing keys rotate? - When were the Access keys last rotated? instructions: - text: Show the Access key rotation settings for account {account}. slots: account: path.identifier - text: Tell me the current key rotation interval and last rotation date. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/keys'].put update: x-apievangelist-phrasing: intent: Set the Access key rotation interval effect: write questions: - Can I make Access rotate its signing keys more often? - What is the allowed range for the key rotation interval? instructions: - text: Set Access key rotation to every {key_rotation_interval_days} days in account {account}. slots: key_rotation_interval_days: requestBody.key_rotation_interval_days account: path.identifier - text: Change the signing key rotation interval to {key_rotation_interval_days} days. slots: key_rotation_interval_days: requestBody.key_rotation_interval_days method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/keys/rotate'].post update: x-apievangelist-phrasing: intent: Rotate Access signing keys now effect: write questions: - How do I force an immediate rotation of Access signing keys? - Can I rotate the Access keys outside the regular schedule? instructions: - text: Rotate the Access signing keys for account {account} now. slots: account: path.identifier - text: Trigger an unscheduled Access key rotation. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/logs/access_requests'].get update: x-apievangelist-phrasing: intent: Get Access login audit logs effect: read questions: - Who logged in to my Access applications recently? - Can I review denied Access authentication attempts? instructions: - text: Get the Access authentication logs for account {account}. slots: account: path.identifier - text: Show recent Access login events including failures. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/organizations'].get update: x-apievangelist-phrasing: intent: View the Zero Trust organization settings effect: read questions: - What is my team domain and default session duration in Zero Trust? - Can I see the login page design for my Zero Trust organization? instructions: - text: Show the Zero Trust organization configuration for account {account}. slots: account: path.identifier - text: Tell me my Zero Trust auth domain and session settings. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/organizations'].put update: x-apievangelist-phrasing: intent: Update the Zero Trust organization effect: write questions: - How do I change the global session duration for Zero Trust? - Can I make the Zero Trust dashboard read-only and record why? instructions: - text: Set the Zero Trust organization session duration to {session_duration} in account {account}. slots: session_duration: requestBody.session_duration account: path.identifier - text: Change the Zero Trust login design to {login_design}. slots: login_design: requestBody.login_design method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/organizations'].post update: x-apievangelist-phrasing: intent: Set up a Zero Trust organization effect: write questions: - How do I create a Zero Trust organization for my account? - What team domain and name do I need when starting with Zero Trust? instructions: - text: Create Zero Trust organization {name} with auth domain {auth_domain} in account {account}. slots: name: requestBody.name auth_domain: requestBody.auth_domain account: path.identifier - text: Set up Zero Trust with team domain {auth_domain} and WARP authentication allowed. slots: auth_domain: requestBody.auth_domain method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/organizations/revoke_user'].post update: x-apievangelist-phrasing: intent: Revoke a user's access everywhere effect: destructive questions: - How do I immediately cut off a departing employee from every Access app? - Can I revoke all Access tokens for one person by email? instructions: - text: Revoke all Access tokens for {email} in account {account}. slots: email: requestBody.email account: path.identifier - text: Sign {email} out of every Zero Trust application. slots: email: requestBody.email method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/seats'].patch update: x-apievangelist-phrasing: intent: Free up a Zero Trust user seat effect: write questions: - How do I release a Zero Trust seat held by a user who left? - Can I remove someone's Access and Gateway seats to save licenses? instructions: - text: Update Zero Trust user seats in account {account}. slots: account: path.identifier - text: Remove a departed user's seat by turning off both Access and Gateway seats. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/service_tokens'].get update: x-apievangelist-phrasing: intent: List Access service tokens effect: read questions: - Which service tokens let machines authenticate to my Access apps? - When do my Access service tokens expire? instructions: - text: List the Access service tokens in account {account}. slots: account: path.identifier - text: Show all machine-to-machine tokens and their expiry dates. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/service_tokens'].post update: x-apievangelist-phrasing: intent: Create an Access service token effect: write questions: - How do I let a CI job authenticate to an Access-protected API? - Is the client secret of a service token shown only once? instructions: - text: Create service token {name} in account {account}. slots: name: requestBody.name account: path.identifier - text: Generate a service token {name} valid for {duration}. slots: name: requestBody.name duration: requestBody.duration method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/service_tokens/{uuid}'].put update: x-apievangelist-phrasing: intent: Rename or re-time a service token effect: write questions: - Can I rename an existing Access service token? - How do I change how long a service token lasts? instructions: - text: Rename service token {token_id} in account {account} to {name}. slots: token_id: path.uuid account: path.identifier name: requestBody.name - text: Set the duration of service token {token_id} to {duration}. slots: token_id: path.uuid duration: requestBody.duration method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/service_tokens/{uuid}'].delete update: x-apievangelist-phrasing: intent: Delete an Access service token effect: destructive questions: - Can I kill a leaked service token so it stops working? - What breaks when a service token is deleted? instructions: - text: Delete service token {token_id} from account {account}. slots: token_id: path.uuid account: path.identifier - text: Remove the retired machine token {token_id}. slots: token_id: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/service_tokens/{uuid}/refresh'].post update: x-apievangelist-phrasing: intent: Extend a service token's expiry effect: write questions: - How do I push back the expiration of a service token about to lapse? - Does refreshing a service token keep the same client secret? instructions: - text: Refresh the expiration of service token {token_id} in account {account}. slots: token_id: path.uuid account: path.identifier - text: Extend service token {token_id} before it expires. slots: token_id: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/service_tokens/{uuid}/rotate'].post update: x-apievangelist-phrasing: intent: Rotate a service token's secret effect: destructive questions: - How do I issue a new client secret and revoke the old one for a service token? - Can I rotate a service token secret I think was exposed? instructions: - text: Rotate the client secret of service token {token_id} in account {account}. slots: token_id: path.uuid account: path.identifier - text: Generate a fresh secret for token {token_id} and invalidate the old one. slots: token_id: path.uuid method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/tags'].get update: x-apievangelist-phrasing: intent: List Access application tags effect: read questions: - Which tags am I using to organize my Access applications? - How many apps carry each Access tag? instructions: - text: List the Access tags in account {account}. slots: account: path.identifier - text: Show every tag used to group Zero Trust apps. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/tags'].post update: x-apievangelist-phrasing: intent: Create an Access application tag effect: write questions: - How do I create a label to group Access apps in the App Launcher? - Can I add a new tag for Access applications? instructions: - text: Create Access tag {name} in account {account}. slots: name: requestBody.name account: path.identifier - text: Add a new app grouping label called {name}. slots: name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/tags/{name}'].get update: x-apievangelist-phrasing: intent: Get one Access tag effect: read questions: - How many applications use a specific Access tag? - When was an Access tag created? instructions: - text: Get Access tag {tag} in account {account}. slots: tag: path.name account: path.identifier - text: Show the app count for label {tag}. slots: tag: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/tags/{name}'].put update: x-apievangelist-phrasing: intent: Rename an Access tag effect: write questions: - Can I rename an Access tag without retagging every app? - How do I fix a typo in an Access application tag? instructions: - text: Rename Access tag {tag} in account {account} to {name}. slots: tag: path.name account: path.identifier name: requestBody.name - text: Change label {tag} to read {name}. slots: tag: path.name name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/tags/{name}'].delete update: x-apievangelist-phrasing: intent: Delete an Access tag effect: destructive questions: - Can I remove an Access tag nobody uses? - Does deleting a tag change the apps it was on? instructions: - text: Delete Access tag {tag} from account {account}. slots: tag: path.name account: path.identifier - text: Remove the unused app label {tag}. slots: tag: path.name method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/users'].get update: x-apievangelist-phrasing: intent: List Zero Trust users effect: read questions: - Who has signed in to my Zero Trust organization? - Which users are holding Access or Gateway seats? instructions: - text: List the Zero Trust users in account {account}. slots: account: path.identifier - text: Show every user with their seat usage and last login. method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/users/{id}/active_sessions'].get update: x-apievangelist-phrasing: intent: List a user's active sessions effect: read questions: - Which devices and apps is a particular user currently signed in to? - Can I see all live Access sessions for one person? instructions: - text: List active sessions for user {user} in account {account}. slots: user: path.id account: path.identifier - text: Show where user {user} is logged in right now. slots: user: path.id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/users/{id}/active_sessions/{nonce}'].get update: x-apievangelist-phrasing: intent: Get one active user session effect: read questions: - What device posture and expiry does one specific session have? - Can I inspect a single live session by its nonce? instructions: - text: Get session {nonce} for user {user} in account {account}. slots: nonce: path.nonce user: path.id account: path.identifier - text: Show details of active session {nonce} belonging to {user}. slots: nonce: path.nonce user: path.id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/users/{id}/failed_logins'].get update: x-apievangelist-phrasing: intent: Get a user's failed logins effect: read questions: - Why can't a user get into an Access app, and how often has it failed? - Can I see every failed login attempt for one person? instructions: - text: Get failed login attempts for user {user} in account {account}. slots: user: path.id account: path.identifier - text: Show why user {user} has been denied recently. slots: user: path.id method: generated generated: '2026-09-26' - target: $.paths['/accounts/{identifier}/access/users/{id}/last_seen_identity'].get update: x-apievangelist-phrasing: intent: Get a user's last seen identity effect: read questions: - What groups and device info did a user present at their last login? - Which identity provider did a person last authenticate with? instructions: - text: Get the last seen identity for user {user} in account {account}. slots: user: path.id account: path.identifier - text: Show the identity claims user {user} sent at their most recent login. slots: user: path.id method: generated generated: '2026-09-26'