Antavo · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Antavo Customers API

12 actions 12 updates phrasing extends openapi/antavo-customers-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Antavo's API. It is a proposal applied on top of the contract, not a document Antavo publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 12

$.info
$.paths['/customers/-/count'].get
$.paths['/customers/{customer_id}'].get
$.paths['/customers'].get
$.paths['/customers/{customer_id}/merge'].post
$.paths['/customers/-/verify/'].get
$.paths['/customers/{customer_id}/opt-in'].post
$.paths['/customers/-/login'].post
$.paths['/customers/-/password/request'].post
$.paths['/customers/-/password/reset'].post
$.paths['/v1/customers/{customer_id}'].get
$.paths['/v1/customers'].get

OpenAPI Overlay

Raw ↑
# 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'