Menu JSON API

Checkle provides an API for your menu data that can go directly to your site for the most control on the look and feel of your menu.

API Overview

Checkle provides a JSON API for your menu data, giving you full control over the display and styling of your menu on your website.

The base API endpoint is: https://checkle.menu/api/menus

Obtaining your Venue ID and API Key

  • Venue ID: You can find your venueId in the URL of the Checkle web app after /v/. For example, in the URL https://app.checkle.net/v/-N5kKyjcTBJA3IceG-U9, the venueId is -N5kKyjcTBJA3IceG-U9.
  • API Key: Your API Key can be found in your Account Settings.

Screenshot showing where to find the venue ID in the Checkle web app URL.


Fetch Menus - GET

To retrieve menu data, use the GET method.

Required Query Parameter

  • venueId: Your unique venue identifier.

Example

https://checkle.menu/api/menus?venueId=-N5kKyjcTBJA3IceG-U9

Optional Query Parameter

  • menuIds: To pull specific menus, use the id from the menu data. This parameter can accept one or several menu IDs, separated by commas.

Example with menuIds

https://checkle.menu/api/menus?venueId=-NBaa5Pf7OAHE9MW_K0u&menuIds=-O6uaCMrD3UVsyDrBckx,-O6uT_ZeLUieT9-iFcBa

Update Menus - PUT

To update existing menu data, use the PUT method.

Required Query Parameters

  • venueId: Your unique venue identifier.
  • key: Your API key.

Request Body

Include a menus array in the body of the request, containing the menu objects to be updated.

Example

https://checkle.menu/api/menus?venueId=${venueId}&key=${apiKey}
{
    "menus":
        [
          {
            id: '123',
            name: 'Dinner Menu',
            type: 'structured',
            order: 0,
            published: true,
            sections: [
              {
                id: '123',
                name: 'Appetizers',
                order: 0,
                items: [...]
              }
            ]
          }
        ]
  }

Create Menu - POST

To create a new menu, use the POST method.

Required Query Parameters

  • venueId: Your unique venue identifier.
  • key: Your API key.

Request Body

Include a menu object in the body of the request, containing the details of the new menu.

Example

https://checkle.menu/api/menus?venueId=${venueId}&key=${apiKey}
{
    "menu": {
        "name": "Menu",
        "description": "",
        "disclaimer": "",
        "sections": [
            {
                "name": "LIMITED TIME OFFER",
                "order": "0",
                "description": "",
                "items": [
                    {
                        "name": "SICILIAN PIZZA SANDWICH!!!",
                        "description": "CAPOCOLLO, SALAMI & SLICED",
                        "cost": {
                            "price": "$12.09",
                            "type": "PRICE"
                        },
                        "dietaryRestrictions": [],
                        "photo": null,
                        "featuredItem": false,
                        "allergens": [],
                        "active": true
                    }
                ]
            }
        ]
    }
}

Delete Menu - DELETE

To delete an existing menu, use the DELETE method.

Required Query Parameters

  • venueId: Your unique venue identifier.
  • key: Your API key.
  • menuId: The ID of the menu to be deleted.

Example

https://checkle.menu/api/menus?venueId={venueId}&key={apiKey}&menuId={menuId}

---

*Written by Cole Rickles*
Still stuck? Ask the assistant in the corner, or email support.