openapi: 3.0.1 info: title: Cuboh Integration Locations Menu API description: 'Partner-gated integration API for Cuboh, a restaurant online-ordering management platform. This document consolidates the publicly documented surface of Cuboh''s Direct API (v2.0) and Connect API (v0.1) covering orders, menus, merchant locations, and webhooks. Access is not self-serve. Cuboh provisions an integration token to approved technology partners during onboarding and QA certification (contact integrations@cuboh.com). Requests authenticate with an Authorization header in the form `Token `; tokens are unique per partner and a single token works across all endpoints. Cuboh delivers events to partner-hosted webhook URLs, signed with an X-Cuboh-Signature HMAC-SHA256 header. Endpoint paths, methods, base URL, and the authentication scheme below are transcribed from Cuboh''s published OpenAPI documents at https://docs.cuboh.com/direct and https://docs.cuboh.com/connect. Request and response schemas are not reproduced here; consult the Cuboh documentation for full payload definitions.' termsOfService: https://www.cuboh.com/ contact: name: Cuboh Integrations email: integrations@cuboh.com version: '2.0' servers: - url: https://core.cuboh.net description: Production server - url: https://core-staging.cuboh.net description: Staging / development server security: - ApiKeyAuth: [] tags: - name: Menu description: Menu retrieval, push, creation, update, and validation. paths: /api/v2/external-integration/merchant/{external_integration_merchant_uuid}/menus: post: tags: - Menu summary: New Menu description: Create a new menu for a merchant (Connect API). parameters: - name: external_integration_merchant_uuid in: path required: true schema: type: string responses: '200': description: Menu created. get: tags: - Menu summary: Find Menus description: List menus for a merchant (Connect API). parameters: - name: external_integration_merchant_uuid in: path required: true schema: type: string responses: '200': description: A list of menus. patch: tags: - Menu summary: Update Menu description: Update a merchant menu (Connect API). parameters: - name: external_integration_merchant_uuid in: path required: true schema: type: string responses: '200': description: Menu updated. /api/v2/external-integration/merchant/{external_integration_merchant_uuid}/menus/{external_menu_id}: get: tags: - Menu summary: Find Single Menu description: Retrieve a single merchant menu by external menu id (Connect API). parameters: - name: external_integration_merchant_uuid in: path required: true schema: type: string - name: external_menu_id in: path required: true schema: type: string responses: '200': description: The requested menu. /api/v2/external-integration/merchant/{external_integration_merchant_uuid}/validate/{external_menu_id}: post: tags: - Menu summary: Validate Menu description: Trigger validation of a merchant menu (Connect API). parameters: - name: external_integration_merchant_uuid in: path required: true schema: type: string - name: external_menu_id in: path required: true schema: type: string responses: '200': description: Validation initiated. get: tags: - Menu summary: Validate Menu (status) description: Retrieve menu validation status (Connect API). parameters: - name: external_integration_merchant_uuid in: path required: true schema: type: string - name: external_menu_id in: path required: true schema: type: string responses: '200': description: Validation status. /api/v2/external-integration/merchant/{external_integration_merchant_uuid}/item/status-update: post: tags: - Menu summary: Item Status Update description: Update item and modifier availability status for a merchant (Connect API). parameters: - name: external_integration_merchant_uuid in: path required: true schema: type: string responses: '200': description: Item status updated. components: securitySchemes: ApiKeyAuth: type: apiKey in: header name: Authorization description: 'Partner integration token supplied by Cuboh, sent as `Authorization: Token `. Tokens are unique per partner and a single token authenticates all endpoints.'