# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Antavo Customers API version: 1.0.0 extends: openapi/antavo-customers-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 11 - target: $.paths['/customers/-/count'].get update: x-apievangelist-phrasing: intent: Count active customers effect: read questions: - How many active members are in my loyalty program? - Is there a quick way to get the total active customer count? instructions: - text: Count the active customers in the program. - text: Tell me how many loyalty members currently have active status. method: generated generated: '2026-10-01' - target: $.paths['/customers/{customer_id}'].get update: x-apievangelist-phrasing: intent: Fetch a customer with selected fields effect: read questions: - Can I limit which profile fields come back when fetching one customer? - Which endpoint returns a member's data trimmed to the attributes I pick? instructions: - text: Fetch customer {customer_id} returning only the fields {fields}. slots: customer_id: path.customer_id fields: query.fields - text: Pull member {customer_id} from the original customers endpoint. slots: customer_id: path.customer_id method: generated generated: '2026-10-01' - target: $.paths['/customers'].get update: x-apievangelist-phrasing: intent: Search customers to find their Antavo ID effect: read questions: - Can I find a customer's Antavo ID by searching on their email? - Is the customer search case-sensitive, and does it allow partial matches? instructions: - text: Search customers for {search} and return their Antavo IDs. slots: search: query.search - text: Find customers matching {search} with match mode {match}, up to {limit} results. slots: search: query.search match: query.match limit: query.limit method: generated generated: '2026-10-01' - target: $.paths['/customers/{customer_id}/merge'].post update: x-apievangelist-phrasing: intent: Merge a customer into another account effect: destructive questions: - Can I merge a duplicate loyalty account into another one? - Is merging two customer accounts reversible? instructions: - text: Merge customer {customer_id} into target account {target}. slots: customer_id: path.customer_id target: requestBody.target - text: Permanently fold duplicate member {customer_id} into account {target}. slots: customer_id: path.customer_id target: requestBody.target method: generated generated: '2026-10-01' - target: $.paths['/customers/-/verify/'].get update: x-apievangelist-phrasing: intent: Verify a customer's registration effect: write questions: - What activates a new member's account after they register? - What happens to a customer's status once verification succeeds? instructions: - text: Verify registration token {token}. slots: token: query.token - text: Confirm the sign-up with token {token} and send the member to {redirect_url}. slots: token: query.token redirect_url: query.redirect_url method: generated generated: '2026-10-01' - target: $.paths['/customers/{customer_id}/opt-in'].post update: x-apievangelist-phrasing: intent: Register a customer with login credentials effect: write questions: - Can a customer self-register with a password for the loyalty program? - Which profile fields can be set when a member opts in? instructions: - text: Opt in customer {customer_id} with password {password}, confirmed as {confirm_password}. slots: customer_id: path.customer_id password: requestBody.password confirm_password: requestBody.confirm_password - text: Register member {customer_id} with email {email}, password {password} and confirmation {confirm_password}. slots: customer_id: path.customer_id email: requestBody.email password: requestBody.password confirm_password: requestBody.confirm_password method: generated generated: '2026-10-01' - target: $.paths['/customers/-/login'].post update: x-apievangelist-phrasing: intent: Log a customer in effect: write questions: - Can I authenticate a loyalty member with a username and password? - What does a successful member login return? instructions: - text: Log in member {username} with password {password}. slots: username: requestBody.username password: requestBody.password - text: Sign customer {username} into the loyalty program using {password}. slots: username: requestBody.username password: requestBody.password method: generated generated: '2026-10-01' - target: $.paths['/customers/-/password/request'].post update: x-apievangelist-phrasing: intent: Send a password reset request effect: write questions: - What lets a member who forgot their password get a reset link? - Can I control the URL in the password reset email? instructions: - text: Send a password reset email to {username}. slots: username: requestBody.username - text: Request a new password for {username} with the reset link pointing to {url}. slots: username: requestBody.username url: requestBody.url method: generated generated: '2026-10-01' - target: $.paths['/customers/-/password/reset'].post update: x-apievangelist-phrasing: intent: Reset a customer's password with a token effect: write questions: - Can a customer set a new password using the token from the reset email? - Does the password reset check that both passwords match? instructions: - text: Reset the password with token {token} to {password}, confirmed as {confirm_password}. slots: token: requestBody.token password: requestBody.password confirm_password: requestBody.confirm_password - text: Set new member password {password} using reset token {token} and confirmation {confirm_password}. slots: password: requestBody.password token: requestBody.token confirm_password: requestBody.confirm_password method: generated generated: '2026-10-01' - target: $.paths['/v1/customers/{customer_id}'].get update: x-apievangelist-phrasing: intent: Retrieve one customer's profile effect: read questions: - How do I get the full profile of one loyalty member by their customer ID? - Can I look up a customer using an external ID instead of the Antavo ID? instructions: - text: Get the details of customer {customer_id}. slots: customer_id: path.customer_id - text: Show me the profile data for loyalty member {customer_id}. slots: customer_id: path.customer_id method: generated generated: '2026-10-01' - target: $.paths['/v1/customers'].get update: x-apievangelist-phrasing: intent: List loyalty program customers effect: read questions: - Which customers have joined the loyalty program, including custom attributes? - Can I filter the customer list by status or creation date? instructions: - text: List all customers in the workspace. - text: List {limit} customers matching {filter}, sorted by {sort}. slots: limit: query.limit filter: query.filter sort: query.sort method: generated generated: '2026-10-01'