Talon.One · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Talon One Loyalty API

25 actions 25 updates phrasing extends openapi/talon-one-loyalty-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Talon.One's API. It is a proposal applied on top of the contract, not a document Talon.One publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 25 · first 16 shown; the file carries all of them

$.info
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/balances'].get
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/transactions'].get
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/delete_transactions'].post
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/join'].post
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/points'].get
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/activate_points'].post
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/ledger_balances'].get
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/ledger_transactions'].get
$.paths['/v1/loyalty_programs'].get
$.paths['/v1/loyalty_programs/{loyaltyProgramId}'].get
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/dashboard'].get
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/import_points'].post
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/import_customers_tiers'].post
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/import_join_dates'].post
$.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}'].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 Talon One Loyalty API
  version: 1.0.0
extends: openapi/talon-one-loyalty-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 24
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/balances'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a customer's loyalty balances in real time
      effect: read
      questions:
      - How many active and pending points does this shopper have right now, from my storefront integration?
      - Can the real-time balance lookup also tell me the customer's current and projected tier?
      - What would a customer's points balance have been as of a past end date in a given subledger?
      instructions:
      - text: Show the real-time loyalty balance for customer {integrationId} in program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Get customer {integrationId}'s Integration API balance in program {loyaltyProgramId} as of {endDate}, including tier details.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
          endDate: query.endDate
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/transactions'].get
  update:
    x-apievangelist-phrasing:
      intent: List a customer's loyalty transactions in real time
      effect: read
      questions:
      - Where can my app show a shopper their recent points earned and spent, straight from the Integration API?
      - Which loyalty transactions did a customer make between two dates in a specific subledger?
      - Can I see only the points transactions still waiting for activation for one customer profile?
      instructions:
      - text: List the latest Integration API loyalty transactions for customer {integrationId} in program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Show customer {integrationId}'s real-time points transactions in program {loyaltyProgramId} from {startDate} to {endDate}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
          startDate: query.startDate
          endDate: query.endDate
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/delete_transactions'].post
  update:
    x-apievangelist-phrasing:
      intent: Delete a customer's loyalty transactions
      effect: destructive
      questions:
      - How do I wipe a customer's loyalty transaction history across every ledger in a program?
      - Can I erase a shopper's points transactions from just one subledger instead of all of them?
      instructions:
      - text: Delete all loyalty transactions for customer {integrationId} in program {loyaltyProgramId} with scope {scope}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
          scope: requestBody.scope
      - text: Remove customer {integrationId}'s transactions from subledgers {subledgerIds} of loyalty program {loyaltyProgramId}, scope {scope}.
        slots:
          integrationId: path.integrationId
          subledgerIds: requestBody.subledgerIds
          loyaltyProgramId: path.loyaltyProgramId
          scope: requestBody.scope
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/join'].post
  update:
    x-apievangelist-phrasing:
      intent: Enroll a customer in a loyalty program
      effect: write
      questions:
      - How do I sign a customer up for my profile-based loyalty program?
      - Will enrolling a shopper in a loyalty program create their customer profile if it doesn't exist yet?
      instructions:
      - text: Enroll customer {integrationId} in loyalty program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Join profile {integrationId} to loyalty program {loyaltyProgramId}, creating the profile if needed.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/points'].get
  update:
    x-apievangelist-phrasing:
      intent: List a customer's unused loyalty points
      effect: read
      questions:
      - Which of a customer's unused points are active, pending or expiring soon?
      - Can I list the individual unspent point batches on a customer profile rather than just a total?
      instructions:
      - text: List the unused points batches for customer {integrationId} in program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Show customer {integrationId}'s unspent points with status {status} in loyalty program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          status: query.status
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/activate_points'].post
  update:
    x-apievangelist-phrasing:
      intent: Activate pending loyalty points
      effect: write
      questions:
      - How do I turn pending points into spendable points once an order ships?
      - Can I activate all the points a customer earned in one session at once?
      instructions:
      - text: Activate the pending points earned in session {sessionId} in loyalty program {loyaltyProgramId}.
        slots:
          sessionId: requestBody.sessionId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Activate pending points from transactions {transactionUUIDs} in program {loyaltyProgramId}.
        slots:
          transactionUUIDs: requestBody.transactionUUIDs
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/ledger_balances'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a customer's loyalty balances for back-office use
      effect: read
      questions:
      - Is there a Management API version of the customer points balance lookup for back-office tools?
      - Can an admin dashboard pull a customer's ledger balances and tier info outside the real-time integration?
      instructions:
      - text: Using the Management API, get the ledger balances of customer {integrationId} in program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Pull back-office balances for customer {integrationId} in loyalty program {loyaltyProgramId} for subledger {subledgerId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
          subledgerId: query.subledgerId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/ledger_transactions'].get
  update:
    x-apievangelist-phrasing:
      intent: List a customer's loyalty transactions for back-office use
      effect: read
      questions:
      - Can an admin tool list a customer's points transactions through the Management API instead of the Integration API?
      - For a support agent, is there a back-office way to filter a customer's transactions by main ledger or subledger?
      instructions:
      - text: Via the Management API, list ledger transactions for customer {integrationId} in program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Show back-office transaction logs for customer {integrationId} in program {loyaltyProgramId} of type {loyaltyTransactionType}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
          loyaltyTransactionType: query.loyaltyTransactionType
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs'].get
  update:
    x-apievangelist-phrasing:
      intent: List loyalty programs
      effect: read
      questions:
      - What loyalty programs exist in my Talon.One account?
      - Where can I find the IDs of all my loyalty programs?
      instructions:
      - text: List all loyalty programs in my account.
      - text: Show me every loyalty program and its ID.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a loyalty program's details
      effect: read
      questions:
      - How is a particular loyalty program configured?
      - Can I look up one loyalty program's settings by its ID?
      instructions:
      - text: Get the configuration of loyalty program {loyaltyProgramId}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      - text: Show details for loyalty program {loyaltyProgramId}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/dashboard'].get
  update:
    x-apievangelist-phrasing:
      intent: Get loyalty dashboard statistics for a date range
      effect: read
      questions:
      - How many points were active, pending, spent and expired in my loyalty program last month?
      - Does the loyalty dashboard data include today's activity?
      - Can I break loyalty dashboard numbers down by subledger?
      instructions:
      - text: Get dashboard statistics for loyalty program {loyaltyProgramId} from {rangeStart} to {rangeEnd}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
          rangeStart: query.rangeStart
          rangeEnd: query.rangeEnd
      - text: Show points activity for subledger {subledgerId} of program {loyaltyProgramId} between {rangeStart} and {rangeEnd}.
        slots:
          subledgerId: query.subledgerId
          loyaltyProgramId: path.loyaltyProgramId
          rangeStart: query.rangeStart
          rangeEnd: query.rangeEnd
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/import_points'].post
  update:
    x-apievangelist-phrasing:
      intent: Import loyalty points from a CSV file
      effect: write
      questions:
      - How do I bulk-load points balances from my old loyalty system with a CSV?
      - Can I import points in bulk without sending customers a notification?
      instructions:
      - text: Import the points CSV {upFile} into loyalty program {loyaltyProgramId}.
        slots:
          upFile: requestBody.upFile
          loyaltyProgramId: path.loyaltyProgramId
      - text: Bulk-upload points file {upFile} to program {loyaltyProgramId} with notifications set to {notificationsEnabled}.
        slots:
          upFile: requestBody.upFile
          loyaltyProgramId: path.loyaltyProgramId
          notificationsEnabled: query.notificationsEnabled
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/import_customers_tiers'].post
  update:
    x-apievangelist-phrasing:
      intent: Assign customers to loyalty tiers from a CSV
      effect: write
      questions:
      - Can I move existing customers into specific tiers in bulk using a spreadsheet?
      - Which loyalty programs support importing customer tier assignments?
      instructions:
      - text: Import the customer tier assignments in {upFile} into loyalty program {loyaltyProgramId}.
        slots:
          upFile: requestBody.upFile
          loyaltyProgramId: path.loyaltyProgramId
      - text: Upload tier CSV {upFile} to place customers in tiers of program {loyaltyProgramId}.
        slots:
          upFile: requestBody.upFile
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/import_join_dates'].post
  update:
    x-apievangelist-phrasing:
      intent: Import customers' loyalty join dates from a CSV
      effect: write
      questions:
      - How do I preserve members' original sign-up dates when migrating a loyalty program?
      - Can I set the join date for many customer profiles at once?
      instructions:
      - text: Import join dates from {upFile} into loyalty program {loyaltyProgramId}.
        slots:
          upFile: requestBody.upFile
          loyaltyProgramId: path.loyaltyProgramId
      - text: Upload the member join-date CSV {upFile} for program {loyaltyProgramId}.
        slots:
          upFile: requestBody.upFile
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a customer's full loyalty ledger
      effect: read
      questions:
      - Can I see a customer's complete points ledger, not just the balance?
      - What does a member's entire loyalty ledger look like in one program?
      instructions:
      - text: Get the full loyalty ledger for customer {integrationId} in program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Show me every ledger entry customer {integrationId} has in loyalty program {loyaltyProgramId}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/add_points'].put
  update:
    x-apievangelist-phrasing:
      intent: Add loyalty points to a customer profile
      effect: write
      questions:
      - How do I give a customer bonus points as a goodwill gesture?
      - Can manually added points start as pending or expire after a set duration?
      instructions:
      - text: Add {points} points to customer {integrationId} in loyalty program {loyaltyProgramId}.
        slots:
          points: requestBody.points
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Credit customer {integrationId} with {points} points in program {loyaltyProgramId}, valid until {validUntil}, reason {name}.
        slots:
          integrationId: path.integrationId
          points: requestBody.points
          loyaltyProgramId: path.loyaltyProgramId
          validUntil: requestBody.validUntil
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/deduct_points'].put
  update:
    x-apievangelist-phrasing:
      intent: Deduct loyalty points from a customer profile
      effect: write
      questions:
      - How do I take points back from a customer's profile after a return?
      - Can I deduct pending points, or only active ones?
      instructions:
      - text: Deduct {points} points from customer {integrationId} in loyalty program {loyaltyProgramId}.
        slots:
          points: requestBody.points
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
      - text: Remove {points} active points from profile {integrationId} in program {loyaltyProgramId} with reason {name}.
        slots:
          points: requestBody.points
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/export_log'].get
  update:
    x-apievangelist-phrasing:
      intent: Export a customer's loyalty transactions to CSV
      effect: read
      questions:
      - Can I download one customer's points history as a CSV file?
      - How do I export a single member's loyalty transaction log for a date range?
      instructions:
      - text: Export customer {integrationId}'s loyalty log in program {loyaltyProgramId} from {rangeStart} to {rangeEnd} as CSV.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
          rangeStart: query.rangeStart
          rangeEnd: query.rangeEnd
      - text: Download customer {integrationId}'s points ledger CSV for program {loyaltyProgramId} between {rangeStart} and {rangeEnd} using date format {dateFormat}.
        slots:
          integrationId: path.integrationId
          loyaltyProgramId: path.loyaltyProgramId
          rangeStart: query.rangeStart
          rangeEnd: query.rangeEnd
          dateFormat: query.dateFormat
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/export_join_dates'].get
  update:
    x-apievangelist-phrasing:
      intent: Export customers' loyalty join dates to CSV
      effect: read
      questions:
      - When did each member join my loyalty program?
      - Can I download a CSV of every customer's enrollment date?
      instructions:
      - text: Export the join dates of all members of loyalty program {loyaltyProgramId}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      - text: Download a CSV of when each customer joined program {loyaltyProgramId}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/export_customers_tiers'].get
  update:
    x-apievangelist-phrasing:
      intent: Export customers' loyalty tier data to CSV
      effect: read
      questions:
      - Which tier is each of my loyalty members in right now?
      - Can I export tier data only for certain tier names or subledgers?
      instructions:
      - text: Export the customer tier data for loyalty program {loyaltyProgramId}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      - text: Download a CSV of customers in tiers {tierNames} of program {loyaltyProgramId}.
        slots:
          tierNames: query.tierNames
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/statistics'].get
  update:
    x-apievangelist-phrasing:
      intent: Get loyalty program statistics (deprecated)
      effect: read
      questions:
      - Is the older loyalty program statistics endpoint still available even though it's deprecated?
      - What overall totals did the legacy loyalty statistics call return for a program?
      instructions:
      - text: Get the legacy statistics for loyalty program {loyaltyProgramId} using the deprecated endpoint.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      - text: Call the deprecated loyalty statistics endpoint for program {loyaltyProgramId}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/export_customer_balances'].get
  update:
    x-apievangelist-phrasing:
      intent: Export all customers' loyalty balances to CSV
      effect: read
      questions:
      - How can I get a spreadsheet of every member's points balance?
      - Can I export customer balances as they stood on a specific end date?
      instructions:
      - text: Export every customer's balance in loyalty program {loyaltyProgramId} to CSV.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      - text: Export customer balances for program {loyaltyProgramId} as of {endDate}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
          endDate: query.endDate
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/export_customer_balance'].get
  update:
    x-apievangelist-phrasing:
      intent: Export customer loyalty balances (legacy endpoint)
      effect: read
      questions:
      - Does the older singular export_customer_balance endpoint still produce a balances CSV?
      - What does the legacy customer-balance export return compared with its replacement?
      instructions:
      - text: Use the legacy single-balance export to download balances for loyalty program {loyaltyProgramId}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      - text: Run the older export_customer_balance download for program {loyaltyProgramId} as of {endDate}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
          endDate: query.endDate
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/loyalty_programs/{loyaltyProgramId}/transactions'].get
  update:
    x-apievangelist-phrasing:
      intent: List all transactions in a loyalty program
      effect: read
      questions:
      - What points transactions happened across my whole loyalty program this week?
      - Are manual and imported transactions included when I list a program's activity?
      instructions:
      - text: List recent transactions across all members of loyalty program {loyaltyProgramId}.
        slots:
          loyaltyProgramId: path.loyaltyProgramId
      - text: Show program-wide {loyaltyTransactionType} transactions in program {loyaltyProgramId} since {startDate}.
        slots:
          loyaltyTransactionType: query.loyaltyTransactionType
          loyaltyProgramId: path.loyaltyProgramId
          startDate: query.startDate
      method: generated
      generated: '2026-09-26'