Developers

API Reference

Pull live venue and menu data into your own website or integrations.

Base URL

https://api.jct.rest/v1

Authentication

All requests require a Bearer token. Generate API keys from Settings → Integrations in your jct dashboard.

Authorization: Bearer YOUR_API_KEY

Venues

Retrieve venue profile and operating hours.

GET /venues/{venue_id} { "id": "ven_rusty_fork", "name": "The Rusty Fork", "slug": "rusty-fork-nyc", "location": "New York, NY", "hours": { "mon": "17:00-23:00", "tue": "17:00-23:00" }, "menu_url": "https://therustyfork.jct.rest" }

List all menu sections and items for a venue.

GET /venues/{venue_id}/menu { "sections": [ { "id": "sec_mains", "name": "Mains", "items": [ { "id": "item_burger", "name": "Classic Burger", "price": 18.00, "description": "Grass-fed beef, aged cheddar, brioche", "dietary": ["gluten"], "available": true } ] } ] }

Drinks

List drinks on a venue's menu with pricing and serving sizes.

GET /venues/{venue_id}/drinks?category=beer { "data": [ { "id": "drk_ipa", "name": "Goose Island IPA", "category": "Craft Beer", "abv": 5.9, "price": 8.00, "serving": "330ml" } ] }

Orders

Create and retrieve POS orders. Useful for custom kitchen display or reporting integrations.

GET /venues/{venue_id}/orders?status=open POST /venues/{venue_id}/orders/{id}/close

Webhooks

Subscribe to real-time events: menu.updated, order.created, drink.added.

POST /webhooks { "url": "https://yourrestaurant.com/hooks/jct", "events": ["menu.updated", "order.created"] }

API access is included on Pro and Enterprise plans. See pricing for details.