OlaClick API

OlaClick API as documented publicly: 20 operations. Contract generated from the documentation by API Evangelist (2026-10-29); not the provider's own document.

Operations 20

POST /oauth/token Authenticate connectors via client_credentials grant to obtain either a connector token or company token. #
GET /v1/company Get the profile of the company: name, description, logo, public URL, language, currency, location, weekly business hours, and currently_open. #
GET /v1/company/payment-methods List the active payment methods of the company. #
GET /v1/delivery/pricing Get the authenticated company's delivery pricing configuration. #
GET /v1/menu GET /v1/menu #
GET /v1/menu/categories List the company's menu categories: id, name, position, type, visible. #
GET /v1/menu/categories/{id} Get a single menu category by UUID. #
GET /v1/menu/kitchens List the kitchens configured for the company: id, name, default per kitchen. #
GET /v1/menu/products Paginated product list: id, name, description, position, visible, category_id per product. #
GET /v1/menu/products/{id} Get a single product by UUID: id, name, description, position, visible, category_id, plus its variants. #
GET /v1/menu/products/{id}/variants List the variants of one product: id, name, price, original_price, currency, sku, stock, stock_threshold, position per variant. #
GET /v1/orders List and read orders #
POST /v1/orders Create an order and return it. #
GET /v1/tables List the company's zones (rooms) and their tables with id, name, qrs (tables/QR points). #
GET /v1/users Paginated list of the company's users, with role and account status. #
GET /v1/webhooks Returns all webhook configurations for your company. #
POST /v1/webhooks Registers a new webhook URL to receive event notifications. #
DELETE /v1/webhooks/{id} Removes a webhook subscription. #
GET /v1/webhooks/{id} Returns a single webhook configuration by id. #
PATCH /v1/webhooks/{id} Partially updates an existing webhook configuration. #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/olaclick:olaclick-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

olaclick-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: OlaClick API
  version: '2026-10-29'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-29: 20 operation(s) read from 12 public documentation page(s) (each
    operation names its page in x-source). This is not the provider''s published contract; OlaClick has published no machine-readable contract
    that the pipeline could find. Engine: anthropic.'
  x-evidence-tiers:
    code-example: 1
    documentation: 19
    pages-with-code: 1
    pages-read: 12
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-10-29'
  x-generator: generate-contract-from-docs.py
  x-engine: anthropic
  x-sources:
  - https://developers.olaclick.app/docs/api
  - https://developers.olaclick.app/docs/api/menu-controller-list
  - https://developers.olaclick.app/docs/api/webhooks-controller-list
  - https://developers.olaclick.app/docs/api/webhooks-controller-create
  - https://developers.olaclick.app/docs/api/webhooks-controller-remove
  - https://developers.olaclick.app/docs/api/webhooks-controller-update
  - https://developers.olaclick.app/docs/api/webhooks-controller-get-one
  - https://developers.olaclick.app/docs/hub/getting-started
  - https://developers.olaclick.app
  - https://developers.olaclick.app/docs
  - https://developers.olaclick.app/docs/faq
  - https://developers.olaclick.app/docs/mcp
servers:
- url: https://public-api.olaclick.app
paths:
  /oauth/token:
    post:
      operationId: post_oauth_token
      tags:
      - Oauth
      summary: Authenticate connectors via client_credentials grant to obtain either a connector token or company token.
      x-source: https://developers.olaclick.app/docs/hub/getting-started
      parameters:
      - name: company_id
        in: query
        required: false
        schema:
          type: string
        description: Company identifier; when included, returns a company token for accessing company data; when omitted, returns a connector
          token for managing connections
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostOauthTokenRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostOauthTokenResponse'
      x-evidence:
        kind: documentation
  /v1/company:
    get:
      operationId: get_v1_company
      tags:
      - Company
      summary: 'Get the profile of the company: name, description, logo, public URL, language, currency, location, weekly business hours, and
        currently_open.'
      x-source: https://developers.olaclick.app/docs/mcp
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1CompanyResponse'
      x-evidence:
        kind: documentation
  /v1/company/payment-methods:
    get:
      operationId: get_v1_company_payment_methods
      tags:
      - Company
      summary: List the active payment methods of the company.
      x-source: https://developers.olaclick.app/docs/mcp
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1CompanyPaymentMethodsResponse'
      x-evidence:
        kind: documentation
  /v1/delivery/pricing:
    get:
      operationId: get_v1_delivery_pricing
      tags:
      - Delivery
      summary: Get the authenticated company's delivery pricing configuration.
      x-source: https://developers.olaclick.app/docs/mcp
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1DeliveryPricingResponse'
      x-evidence:
        kind: documentation
  /v1/menu:
    get:
      operationId: get_v1_menu
      tags:
      - Menu
      summary: GET /v1/menu
      x-source: https://developers.olaclick.app/docs/api
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl https://public-api.olaclick.app/v1/menu \\ -H \"X-API-Key: olk_your_key_here\" # Option B — Authorization: Bearer curl\
          \ https://public-api.olaclick.app/v1/menu \\ -H \"Authorization: Bearer olk_your_key_here\" \n API keys are issued per company. If you\
          \ don't have one yet, request it from your\nOlaClick contact. Keys are managed under /auth/api-keys (create, list, update,\nrevoke)\
          \ — see the API Keys sec"
  /v1/menu/categories:
    get:
      operationId: get_v1_menu_categories
      tags:
      - Menu
      summary: 'List the company''s menu categories: id, name, position, type, visible.'
      x-source: https://developers.olaclick.app/docs/mcp
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1MenuCategoriesResponse'
      x-evidence:
        kind: documentation
  /v1/menu/categories/{id}:
    get:
      operationId: get_v1_menu_categories_id
      tags:
      - Menu
      summary: Get a single menu category by UUID.
      x-source: https://developers.olaclick.app/docs/mcp
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1MenuCategoriesIdResponse'
      x-evidence:
        kind: documentation
  /v1/menu/kitchens:
    get:
      operationId: get_v1_menu_kitchens
      tags:
      - Menu
      summary: 'List the kitchens configured for the company: id, name, default per kitchen.'
      x-source: https://developers.olaclick.app/docs/mcp
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1MenuKitchensResponse'
      x-evidence:
        kind: documentation
  /v1/menu/products:
    get:
      operationId: get_v1_menu_products
      tags:
      - Menu
      summary: 'Paginated product list: id, name, description, position, visible, category_id per product.'
      x-source: https://developers.olaclick.app/docs/mcp
      parameters:
      - name: page
        in: query
        required: false
        schema:
          type: number
        description: 'Page number, 1 or greater (default: 1)'
      - name: per_page
        in: query
        required: false
        schema:
          type: number
        description: 'Items per page, 1-100 (default: 20)'
      - name: category_id
        in: query
        required: false
        schema:
          type: string
        description: Only products in this category
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1MenuProductsResponse'
      x-evidence:
        kind: documentation
  /v1/menu/products/{id}:
    get:
      operationId: get_v1_menu_products_id
      tags:
      - Menu
      summary: 'Get a single product by UUID: id, name, description, position, visible, category_id, plus its variants.'
      x-source: https://developers.olaclick.app/docs/mcp
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1MenuProductsIdResponse'
      x-evidence:
        kind: documentation
  /v1/menu/products/{id}/variants:
    get:
      operationId: get_v1_menu_products_id_variants
      tags:
      - Menu
      summary: 'List the variants of one product: id, name, price, original_price, currency, sku, stock, stock_threshold, position per variant.'
      x-source: https://developers.olaclick.app/docs/mcp
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1MenuProductsIdVariantsResponse'
      x-evidence:
        kind: documentation
  /v1/orders:
    get:
      operationId: get_v1_orders
      tags:
      - Orders
      summary: List and read orders
      x-source: https://developers.olaclick.app/docs/api
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    post:
      operationId: post_v1_orders
      tags:
      - Orders
      summary: Create an order and return it.
      x-source: https://developers.olaclick.app/docs/mcp
      parameters:
      - name: service_type
        in: query
        required: true
        schema:
          type: string
        description: ONSITE, TABLE, DELIVERY, or TAKEAWAY
      - name: client_id
        in: query
        required: false
        schema:
          type: string
        description: An existing client of your company
      - name: table_id
        in: query
        required: false
        schema:
          type: string
        description: Only for TABLE orders; find one with list_tables
      - name: address_id
        in: query
        required: false
        schema:
          type: string
        description: Only for DELIVERY orders
      - name: delivery_price
        in: query
        required: false
        schema:
          type: number
        description: Only for DELIVERY orders
      - name: status
        in: query
        required: false
        schema:
          type: string
        description: Send PENDING to skip the INITIATED draft
      - name: idempotency_key
        in: header
        required: false
        schema:
          type: string
        description: Reused on retry to avoid a duplicate order; generated when omitted
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostV1OrdersRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostV1OrdersResponse'
      x-evidence:
        kind: documentation
  /v1/tables:
    get:
      operationId: get_v1_tables
      tags:
      - Tables
      summary: List the company's zones (rooms) and their tables with id, name, qrs (tables/QR points).
      x-source: https://developers.olaclick.app/docs/mcp
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1TablesResponse'
      x-evidence:
        kind: documentation
  /v1/users:
    get:
      operationId: get_v1_users
      tags:
      - Users
      summary: Paginated list of the company's users, with role and account status.
      x-source: https://developers.olaclick.app/docs/mcp
      parameters:
      - name: role
        in: query
        required: false
        schema:
          type: string
        description: 'Comma-separated roles: admin, manager, waiter, rider, cook, sales, cashier'
      - name: active
        in: query
        required: false
        schema:
          type: boolean
        description: true only active users, false only deactivated users; omit for both
      - name: page
        in: query
        required: false
        schema:
          type: number
        description: 'Page number, 1 or greater (default: 1)'
      - name: per_page
        in: query
        required: false
        schema:
          type: number
        description: 'Items per page, 1-100 (default: 20)'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1UsersResponse'
      x-evidence:
        kind: documentation
  /v1/webhooks:
    get:
      operationId: get_v1_webhooks
      tags:
      - Webhooks
      summary: Returns all webhook configurations for your company.
      x-source: https://developers.olaclick.app/docs/api/webhooks-controller-list
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1WebhooksResponse'
      x-evidence:
        kind: documentation
    post:
      operationId: post_v1_webhooks
      tags:
      - Webhooks
      summary: Registers a new webhook URL to receive event notifications.
      x-source: https://developers.olaclick.app/docs/api/webhooks-controller-create
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /v1/webhooks/{id}:
    delete:
      operationId: delete_v1_webhooks_id
      tags:
      - Webhooks
      summary: Removes a webhook subscription.
      x-source: https://developers.olaclick.app/docs/api/webhooks-controller-remove
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteV1WebhooksIdResponse'
      x-evidence:
        kind: documentation
    get:
      operationId: get_v1_webhooks_id
      tags:
      - Webhooks
      summary: Returns a single webhook configuration by id.
      x-source: https://developers.olaclick.app/docs/api/webhooks-controller-get-one
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1WebhooksIdResponse'
      x-evidence:
        kind: documentation
    patch:
      operationId: patch_v1_webhooks_id
      tags:
      - Webhooks
      summary: Partially updates an existing webhook configuration.
      x-source: https://developers.olaclick.app/docs/api/webhooks-controller-update
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PatchV1WebhooksIdResponse'
      x-evidence:
        kind: documentation
components:
  schemas:
    PostOauthTokenRequest:
      type: object
      properties:
        grant_type:
          type: string
          description: The grant type, must be 'client_credentials'
        client_id:
          type: string
          description: The connector's client identifier
        client_secret:
          type: string
          description: The connector's client secret
      required:
      - grant_type
      - client_id
      - client_secret
    PostOauthTokenResponse:
      type: object
      properties:
        access_token:
          type: string
          description: The authentication token for API requests
        token_type:
          type: string
          description: Type of token (typically 'Bearer')
    GetV1CompanyResponse:
      type: object
      properties:
        name:
          type: string
          description: Company name
        description:
          type: string
          description: Company description
        logo:
          type: string
          description: Logo URL
        public_url:
          type: string
          description: Public URL
        language:
          type: string
          description: Language code
        currency:
          type: string
          description: Currency code
        location:
          type: object
          description: Company location
        business_hours:
          type: array
          description: Weekly business hours
        currently_open:
          type: boolean
          description: Whether company is currently open
    GetV1CompanyPaymentMethodsResponse:
      type: object
      properties:
        id:
          type: string
          description: Payment method UUID
        name:
          type: string
          description: Payment method name
        active:
          type: boolean
          description: Whether payment method is active
    GetV1DeliveryPricingResponse:
      type: object
      properties:
        active:
          type: boolean
          description: Whether delivery is active
        pricing_mode:
          type: string
          description: Pricing mode
    GetV1MenuCategoriesResponse:
      type: object
      properties:
        id:
          type: string
          description: Category UUID
        name:
          type: string
          description: Category name
        position:
          type: number
          description: Category position
        type:
          type: string
          description: Category type
        visible:
          type: boolean
          description: Whether category is visible
    GetV1MenuCategoriesIdResponse:
      type: object
      properties:
        id:
          type: string
          description: Category UUID
        name:
          type: string
          description: Category name
        position:
          type: number
          description: Category position
        type:
          type: string
          description: Category type
        visible:
          type: boolean
          description: Whether category is visible
    GetV1MenuKitchensResponse:
      type: object
      properties:
        id:
          type: string
          description: Kitchen UUID
        name:
          type: string
          description: Kitchen name
        default:
          type: boolean
          description: Whether kitchen is default
    GetV1MenuProductsResponse:
      type: object
      properties:
        id:
          type: string
          description: Product UUID
        name:
          type: string
          description: Product name
        description:
          type: string
          description: Product description
        position:
          type: number
          description: Product position
        visible:
          type: boolean
          description: Whether product is visible
        category_id:
          type: string
          description: Category UUID
    GetV1MenuProductsIdResponse:
      type: object
      properties:
        id:
          type: string
          description: Product UUID
        name:
          type: string
          description: Product name
        description:
          type: string
          description: Product description
        position:
          type: number
          description: Product position
        visible:
          type: boolean
          description: Whether product is visible
        category_id:
          type: string
          description: Category UUID
        variants:
          type: array
          description: Product variants
    GetV1MenuProductsIdVariantsResponse:
      type: object
      properties:
        id:
          type: string
          description: Variant UUID
        name:
          type: string
          description: Variant name
        price:
          type: number
          description: Variant price
        original_price:
          type: number
          description: Original price
        currency:
          type: string
          description: Currency code
        sku:
          type: string
          description: SKU
        stock:
          type: number
          description: Stock quantity
        stock_threshold:
          type: number
          description: Stock threshold
        position:
          type: number
          description: Variant position
    PostV1OrdersRequest:
      type: object
      properties:
        service_type:
          type: string
          description: ONSITE, TABLE, DELIVERY, or TAKEAWAY
        client_id:
          type: string
          description: An existing client of your company
        table_id:
          type: string
          description: Only for TABLE orders
        address_id:
          type: string
          description: Only for DELIVERY orders
        delivery_price:
          type: number
          description: Only for DELIVERY orders
        status:
          type: string
          description: Send PENDING to skip the INITIATED draft
        comment:
          type: string
        order_title:
          type: string
        packaging_price:
          type: number
        scheduled_delivery_date:
          type: string
      required:
      - service_type
    PostV1OrdersResponse:
      type: object
      properties:
        id:
          type: string
          description: Order UUID
        public_id:
          type: string
          description: Public order ID
        status:
          type: string
          description: Order status
        service_type:
          type: string
          description: Service type
        total:
          type: number
          description: Order total
    GetV1TablesResponse:
      type: object
      properties:
        id:
          type: string
          description: Zone UUID
        name:
          type: string
          description: Zone name
        qrs:
          type: array
          description: Tables/QR points in the zone
    GetV1UsersResponse:
      type: object
      properties:
        id:
          type: string
          description: User UUID
        name:
          type: string
          description: User name
        role:
          type: string
          description: User role
        active:
          type: boolean
          description: Whether user is active
    GetV1WebhooksResponse:
      type: object
      properties:
        webhook configurations:
          type: string
          description: List of webhook configurations for your company
    DeleteV1WebhooksIdResponse:
      type: object
      properties:
        deleted webhook configuration:
          type: string
          description: The deleted webhook configuration.
    GetV1WebhooksIdResponse:
      type: object
      properties:
        webhook configuration:
          type: string
          description: The requested webhook configuration.
    PatchV1WebhooksIdResponse:
      type: object
      properties:
        webhook configuration:
          type: string
          description: The updated webhook configuration.
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-API-Key
security:
- apiKey: []
tags:
- name: Company
- name: Delivery
- name: Menu
- name: Oauth
- name: Orders
- name: Tables
- name: Users
- name: Webhooks