Chowly Orders API

Receives third-party marketplace and direct online orders and injects them into the restaurant POS. Public client libraries reference order creation and order retrieval operations against the Chowly POS integration API. The full order surface is partner-gated and provisioned per location via an API key.

OpenAPI Specification

chowly-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Chowly POS Integration API
  description: >-
    Partial, best-effort specification of the Chowly POS integration API.
    Chowly is a restaurant digital-ordering and delivery-integration platform
    that injects third-party marketplace orders (DoorDash, Uber Eats, Grubhub,
    and 150+ channels) into a restaurant POS and synchronizes menus across
    every channel.


    Chowly does not publish an openly accessible developer portal or
    machine-readable API description. The Chowly API is partner-gated and
    provisioned per restaurant location: a restaurant or integration partner
    receives a per-location API key from Chowly and uses it as a bearer token
    against the base URL below. The operations modeled here are the ones
    surfaced by Chowly's publicly available API client libraries (notably the
    open-source @goparrot/chowly-api-client), which document menu retrieval and
    order create/retrieve operations. Request and response payload schemas are
    not publicly documented and are intentionally left generic; do not treat
    this document as authoritative. Confirm all paths, schemas, and behavior
    with Chowly partner documentation under your integration agreement.
  termsOfService: https://www.chowly.com/terms-of-service/
  contact:
    name: Chowly Support
    url: https://chowly.help/s/faqs
  version: '1.0'
servers:
  - url: https://api.chowlyinc.com
    description: Chowly POS integration API base URL (per-location API key required).
security:
  - ApiKeyAuth: []
tags:
  - name: Orders
    description: Create and retrieve orders injected into the restaurant POS.
  - name: Menu
    description: Retrieve the menu synchronized across ordering channels.
paths:
  /orders:
    post:
      operationId: createOrder
      tags:
        - Orders
      summary: Create an order
      description: >-
        Submit an order to be injected into the restaurant POS. Referenced by
        public Chowly API client libraries as a create-order operation. The
        exact path and payload schema are partner-gated and not publicly
        documented; the path shown is representative.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: Order payload (schema not publicly documented).
              additionalProperties: true
      responses:
        '201':
          description: Order accepted/created.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        '401':
          description: Missing or invalid API key.
  /orders/{orderId}:
    get:
      operationId: getOrder
      tags:
        - Orders
      summary: Retrieve an order
      description: >-
        Retrieve a previously submitted order by its identifier. Referenced by
        public Chowly API client libraries as a get-order operation. The exact
        path and response schema are partner-gated and not publicly documented.
      parameters:
        - name: orderId
          in: path
          required: true
          description: Identifier of the order to retrieve.
          schema:
            type: string
      responses:
        '200':
          description: Order found.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        '401':
          description: Missing or invalid API key.
        '404':
          description: Order not found.
  /menu:
    get:
      operationId: getMenu
      tags:
        - Menu
      summary: Retrieve the menu
      description: >-
        Retrieve the menu associated with the API key's location. Referenced by
        public Chowly API client libraries as a get-menu operation. The exact
        path and response schema are partner-gated and not publicly documented.
      responses:
        '200':
          description: Menu returned.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        '401':
          description: Missing or invalid API key.
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Per-location Chowly API key provisioned by Chowly. Sent as an API key /
        bearer credential. The exact header name and scheme are defined in
        Chowly's partner documentation.