Talon.One · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Management Stores API

9 actions 9 updates phrasing extends openapi/talon-one-stores-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 9

$.info
$.paths['/v1/applications/{applicationId}/stores'].get
$.paths['/v1/applications/{applicationId}/stores'].post
$.paths['/v1/applications/{applicationId}/stores/{storeId}'].get
$.paths['/v1/applications/{applicationId}/stores/{storeId}'].put
$.paths['/v1/applications/{applicationId}/stores/{storeId}'].delete
$.paths['/v1/applications/{applicationId}/campaigns/{campaignId}/stores/export'].get
$.paths['/v1/applications/{applicationId}/campaigns/{campaignId}/stores'].delete
$.paths['/v1/applications/{applicationId}/campaigns/{campaignId}/stores/import'].post

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 Management Stores API
  version: 1.0.0
extends: openapi/talon-one-stores-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: 8
- target: $.paths['/v1/applications/{applicationId}/stores'].get
  update:
    x-apievangelist-phrasing:
      intent: List an Application's stores
      effect: read
      questions:
      - Which physical or online stores are registered in an Application?
      - Can I list only the stores linked to a specific campaign?
      instructions:
      - text: List the stores in application {applicationId}.
        slots:
          applicationId: path.applicationId
      - text: Show stores in application {applicationId} linked to campaign {campaignId}.
        slots:
          applicationId: path.applicationId
          campaignId: query.campaignId
      - text: Search stores named {name} in application {applicationId}.
        slots:
          name: query.name
          applicationId: path.applicationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/applications/{applicationId}/stores'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a store
      effect: write
      questions:
      - How do I register a new store in an Application?
      - What fields are required when adding a store?
      instructions:
      - text: Create store {name} with integration ID {integrationId} and description {description} in application {applicationId}.
        slots:
          name: requestBody.name
          integrationId: requestBody.integrationId
          description: requestBody.description
          applicationId: path.applicationId
      - text: Add a new store {name} ({integrationId}), described as {description}, with attributes {attributes} to application {applicationId}.
        slots:
          name: requestBody.name
          integrationId: requestBody.integrationId
          description: requestBody.description
          attributes: requestBody.attributes
          applicationId: path.applicationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/applications/{applicationId}/stores/{storeId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a store's details
      effect: read
      questions:
      - What attributes are saved for a particular store?
      - Can I look up a store by its store ID?
      instructions:
      - text: Get store {storeId} in application {applicationId}.
        slots:
          storeId: path.storeId
          applicationId: path.applicationId
      - text: Show the details of store {storeId} (application {applicationId}).
        slots:
          storeId: path.storeId
          applicationId: path.applicationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/applications/{applicationId}/stores/{storeId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a store's details
      effect: write
      questions:
      - Can I change a store's name or description after creating it?
      - Which fields must I resend when updating a store?
      instructions:
      - text: Rename store {storeId} in application {applicationId} to {name}, keeping description {description} and integration ID {integrationId}.
        slots:
          storeId: path.storeId
          applicationId: path.applicationId
          name: requestBody.name
          description: requestBody.description
          integrationId: requestBody.integrationId
      - text: Update store {storeId} in application {applicationId} with attributes {attributes}, name {name}, description {description}, integration ID {integrationId}.
        slots:
          storeId: path.storeId
          applicationId: path.applicationId
          attributes: requestBody.attributes
          name: requestBody.name
          description: requestBody.description
          integrationId: requestBody.integrationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/applications/{applicationId}/stores/{storeId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a store
      effect: destructive
      questions:
      - How do I remove a closed store from an Application?
      - Can a store be deleted by its ID?
      instructions:
      - text: Delete store {storeId} from application {applicationId}.
        slots:
          storeId: path.storeId
          applicationId: path.applicationId
      - text: Remove the store {storeId} in application {applicationId}.
        slots:
          storeId: path.storeId
          applicationId: path.applicationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/applications/{applicationId}/campaigns/{campaignId}/stores/export'].get
  update:
    x-apievangelist-phrasing:
      intent: Export the stores linked to a campaign
      effect: read
      questions:
      - Can I download the list of stores a campaign runs in?
      - What does the campaign store export CSV contain?
      instructions:
      - text: Export the stores linked to campaign {campaignId} in application {applicationId}.
        slots:
          campaignId: path.campaignId
          applicationId: path.applicationId
      - text: Download a CSV of store integration IDs for campaign {campaignId}, application {applicationId}.
        slots:
          campaignId: path.campaignId
          applicationId: path.applicationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/applications/{applicationId}/campaigns/{campaignId}/stores'].delete
  update:
    x-apievangelist-phrasing:
      intent: Unlink all stores from a campaign
      effect: destructive
      questions:
      - How do I stop a campaign from being limited to specific stores?
      - Can I disconnect every store from a campaign at once?
      instructions:
      - text: Disconnect all stores from campaign {campaignId} in application {applicationId}.
        slots:
          campaignId: path.campaignId
          applicationId: path.applicationId
      - text: Unlink the stores attached to campaign {campaignId} (application {applicationId}).
        slots:
          campaignId: path.campaignId
          applicationId: path.applicationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/applications/{applicationId}/campaigns/{campaignId}/stores/import'].post
  update:
    x-apievangelist-phrasing:
      intent: Link stores to a campaign from a CSV
      effect: write
      questions:
      - How do I restrict a campaign to a list of stores using a CSV?
      - Does importing campaign stores replace the stores already linked?
      instructions:
      - text: Import stores from {upFile} into campaign {campaignId} of application {applicationId}.
        slots:
          upFile: requestBody.upFile
          campaignId: path.campaignId
          applicationId: path.applicationId
      - text: Replace the stores linked to campaign {campaignId} in application {applicationId} with CSV {upFile}.
        slots:
          campaignId: path.campaignId
          applicationId: path.applicationId
          upFile: requestBody.upFile
      method: generated
      generated: '2026-09-26'