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.