Square · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Square Invoices API

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

What the actions change

x-apievangelist-phrasing

Targets 11

$.info
$.paths['/v2/invoices'].get
$.paths['/v2/invoices'].post
$.paths['/v2/invoices/search'].post
$.paths['/v2/invoices/{invoice_id}'].get
$.paths['/v2/invoices/{invoice_id}'].put
$.paths['/v2/invoices/{invoice_id}'].delete
$.paths['/v2/invoices/{invoice_id}/attachments'].post
$.paths['/v2/invoices/{invoice_id}/attachments/{attachment_id}'].delete
$.paths['/v2/invoices/{invoice_id}/cancel'].post
$.paths['/v2/invoices/{invoice_id}/publish'].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 Square Invoices API
  version: 1.0.0
extends: openapi/square-invoices-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: 10
- target: $.paths['/v2/invoices'].get
  update:
    x-apievangelist-phrasing:
      intent: List invoices for a location
      effect: read
      questions:
      - How do I see all invoices issued from one of my locations?
      - Can I page through a location's invoices a few at a time?
      instructions:
      - text: List invoices for location {location_id}.
        slots:
          location_id: query.location_id
      - text: Show the first {limit} invoices at location {location_id}.
        slots:
          limit: query.limit
          location_id: query.location_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices'].post
  update:
    x-apievangelist-phrasing:
      intent: Draft an invoice for an order
      effect: write
      questions:
      - How do I create an invoice for an order I already made?
      - Does a new invoice get sent right away or stay as a draft?
      instructions:
      - text: Create a draft invoice {invoice}.
        slots:
          invoice: requestBody.invoice
      - text: 'Draft an invoice for this order: {invoice}.'
        slots:
          invoice: requestBody.invoice
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices/search'].post
  update:
    x-apievangelist-phrasing:
      intent: Search invoices by location and customer
      effect: read
      questions:
      - Which invoices have I sent to a particular customer?
      - Can I search invoices across a location with a customer filter?
      instructions:
      - text: Search invoices matching {query}.
        slots:
          query: requestBody.query
      - text: Find up to {limit} invoices for the filter {query}.
        slots:
          limit: requestBody.limit
          query: requestBody.query
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices/{invoice_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an invoice
      effect: read
      questions:
      - How do I look up one invoice and its payment status?
      - What details come back when I fetch an invoice by ID?
      instructions:
      - text: Get invoice {invoice_id}.
        slots:
          invoice_id: path.invoice_id
      - text: Show me the status and amounts of invoice {invoice_id}.
        slots:
          invoice_id: path.invoice_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices/{invoice_id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Edit an invoice
      effect: write
      questions:
      - How do I change the due date or recipient on an existing invoice?
      - Can I clear specific fields on an invoice without resending everything?
      instructions:
      - text: Update invoice {invoice_id} with {invoice}.
        slots:
          invoice_id: path.invoice_id
          invoice: requestBody.invoice
      - text: Clear fields {fields_to_clear} on invoice {invoice_id}.
        slots:
          fields_to_clear: requestBody.fields_to_clear
          invoice_id: path.invoice_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices/{invoice_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a draft invoice
      effect: destructive
      questions:
      - How do I throw away a draft invoice I no longer need?
      - Can a published invoice be deleted, or only drafts?
      instructions:
      - text: Delete draft invoice {invoice_id}.
        slots:
          invoice_id: path.invoice_id
      - text: Delete invoice {invoice_id} at version {version}.
        slots:
          invoice_id: path.invoice_id
          version: query.version
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices/{invoice_id}/attachments'].post
  update:
    x-apievangelist-phrasing:
      intent: Attach a file to an invoice
      effect: write
      questions:
      - How do I attach a receipt or PDF to an invoice?
      - Can I upload an image file onto an existing invoice?
      instructions:
      - text: Attach {image_file} to invoice {invoice_id}.
        slots:
          image_file: requestBody.image_file
          invoice_id: path.invoice_id
      - text: Upload a file to invoice {invoice_id}.
        slots:
          invoice_id: path.invoice_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices/{invoice_id}/attachments/{attachment_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove an attachment from an invoice
      effect: destructive
      questions:
      - How do I remove a file I attached to an invoice?
      - Which invoice states still allow attachments to be deleted?
      instructions:
      - text: Delete attachment {attachment_id} from invoice {invoice_id}.
        slots:
          attachment_id: path.attachment_id
          invoice_id: path.invoice_id
      - text: Remove file {attachment_id} from invoice {invoice_id} permanently.
        slots:
          attachment_id: path.attachment_id
          invoice_id: path.invoice_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices/{invoice_id}/cancel'].post
  update:
    x-apievangelist-phrasing:
      intent: Cancel a published invoice
      effect: destructive
      questions:
      - How do I stop collecting payment on an invoice I already sent?
      - Can a draft or paid invoice be canceled?
      instructions:
      - text: Cancel invoice {invoice_id} at version {version}.
        slots:
          invoice_id: path.invoice_id
          version: requestBody.version
      - text: Void the outstanding invoice {invoice_id}, version {version}.
        slots:
          invoice_id: path.invoice_id
          version: requestBody.version
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/invoices/{invoice_id}/publish'].post
  update:
    x-apievangelist-phrasing:
      intent: Publish and send a draft invoice
      effect: write
      questions:
      - How do I send a draft invoice to my customer?
      - What happens after an invoice is published, like emailing or charging a card on file?
      instructions:
      - text: Publish invoice {invoice_id} at version {version}.
        slots:
          invoice_id: path.invoice_id
          version: requestBody.version
      - text: Send draft invoice {invoice_id} (version {version}) to the customer.
        slots:
          invoice_id: path.invoice_id
          version: requestBody.version
      method: generated
      generated: '2026-09-26'

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/square-invoices-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.