Tabby · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Tabby API Reference Disputes API

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

What the actions change

x-apievangelist-phrasing

Targets 7

$.info
$.paths['/api/v1/disputes'].get
$.paths['/api/v1/disputes/{disputeId}'].get
$.paths['/api/v1/disputes/{disputeId}/provide-evidence'].post
$.paths['/api/v1/disputes/approve'].post
$.paths['/api/v1/disputes/challenge'].post
$.paths['/api/v1/disputes/attachments/upload'].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 Tabby API Reference Disputes API
  version: 1.0.0
extends: openapi/tabby-disputes-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: 6
- target: $.paths['/api/v1/disputes'].get
  update:
    x-apievangelist-phrasing:
      intent: List recent disputes
      effect: read
      questions:
      - Which disputes have customers opened against my store recently?
      - Can I filter my disputes by status or by the date they were created?
      - How do I page past the first 100 disputes in the list?
      instructions:
      - text: List my most recent disputes.
      - text: Show disputes with status {statuses} created between {created_at_gte} and {created_at_lte}.
        slots:
          statuses: query.statuses
          created_at_gte: query.created_at_gte
          created_at_lte: query.created_at_lte
      - text: Load the next page of disputes using page token {page_token}.
        slots:
          page_token: query.page_token
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/disputes/{disputeId}'].get
  update:
    x-apievangelist-phrasing:
      intent: View the details of one dispute
      effect: read
      questions:
      - What are the full details of a single dispute I'm handling?
      - Where can I see everything about one specific dispute by its ID?
      instructions:
      - text: Get the details of dispute {dispute_id}.
        slots:
          dispute_id: path.dispute_id
      - text: Show me what the customer is disputing in case {dispute_id}.
        slots:
          dispute_id: path.dispute_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/disputes/{disputeId}/provide-evidence'].post
  update:
    x-apievangelist-phrasing:
      intent: Submit evidence for a dispute
      effect: write
      questions:
      - How do I respond when a dispute asks me for evidence?
      - Can I attach uploaded files along with my written proof for a dispute?
      instructions:
      - text: 'Submit evidence for dispute {dispute_id} saying: {content}.'
        slots:
          dispute_id: path.dispute_id
          content: requestBody.content
      - text: Send proof {content} with attachments {attachment_ids} in response to the evidence request on dispute {dispute_id}.
        slots:
          content: requestBody.content
          attachment_ids: requestBody.attachment_ids
          dispute_id: path.dispute_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/disputes/approve'].post
  update:
    x-apievangelist-phrasing:
      intent: Accept disputes and refund the customers
      effect: destructive
      questions:
      - How do I accept a dispute and give the customer their money back?
      - How many disputes can I approve in a single request?
      instructions:
      - text: Approve disputes {dispute_ids} and refund the customers.
        slots:
          dispute_ids: requestBody.dispute_ids
      - text: Accept the customer's claim on disputes {dispute_ids}.
        slots:
          dispute_ids: requestBody.dispute_ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/disputes/challenge'].post
  update:
    x-apievangelist-phrasing:
      intent: Challenge a dispute with Tabby support
      effect: write
      questions:
      - Can I push back on a dispute I think is unfair and have support review it?
      - Which disputes are eligible to be challenged, only new ones?
      - What if I agree there's an issue but the disputed amount should be different?
      instructions:
      - text: Challenge dispute {dispute_id} for reason {reason} with the note {description}.
        slots:
          dispute_id: requestBody.dispute_id
          reason: requestBody.reason
          description: requestBody.description
      - text: Contest dispute {dispute_id} because the order amount should be {amount}, reason {reason}, comment {description}.
        slots:
          dispute_id: requestBody.dispute_id
          amount: requestBody.amount
          reason: requestBody.reason
          description: requestBody.description
      - text: 'Challenge dispute {dispute_id} ({reason}): {description}, attaching {attachment_ids}.'
        slots:
          dispute_id: requestBody.dispute_id
          reason: requestBody.reason
          description: requestBody.description
          attachment_ids: requestBody.attachment_ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/disputes/attachments/upload'].post
  update:
    x-apievangelist-phrasing:
      intent: Upload a file to use in a dispute
      effect: write
      questions:
      - How do I upload a receipt or delivery photo to use in a dispute?
      - What file types and sizes are allowed for dispute attachments?
      instructions:
      - text: Upload {attachment} as a dispute attachment.
        slots:
          attachment: requestBody.attachment
      - text: Upload the PDF proof of delivery {attachment} and give me its attachment ID.
        slots:
          attachment: requestBody.attachment
      method: generated
      generated: '2026-09-26'