Interact with KitchenOwl APIs (login, token handling, REST/GraphQL calls, and shopping-list read/update) through a reusable CLI script. Use when the user ask...
Use scripts/kitchenowl-api.sh for KitchenOwl operations without relying on the web UI.
curljqSupported environment variables:
KITCHENOWL_URL (e.g. https://kitchenowl.example.com) [preferred]KITCHENOWL_TOKEN (Bearer token; access token or long-lived token)KITCHENOWL_REFRESH_TOKEN (optional)KITCHENOWL_BASE_URL (legacy compatibility)# 1) Probe useful API endpoints
{baseDir}/scripts/kitchenowl-api.sh probe --base-url https://kitchenowl.example.com
# 2) Login (saves tokens in ~/.config/kitchenowl-api/session.json)
{baseDir}/scripts/kitchenowl-api.sh login \
--base-url https://kitchenowl.example.com \
--username USERNAME \
--password 'PASSWORD' \
--device openclaw
# 3) Generic authenticated REST call
{baseDir}/scripts/kitchenowl-api.sh request GET /api/user
# 4) REST call with JSON body
{baseDir}/scripts/kitchenowl-api.sh request POST /api/auth/llt \
--json '{"device":"openclaw-llt"}'
# 5) GraphQL query (if available on the instance)
{baseDir}/scripts/kitchenowl-api.sh graphql \
--query '{ __typename }'
probe.login (if no valid token is available).request against shopping-list endpoints of the target instance.request GET /api and/or check instance docs./api -> http://localhost/api/).--base-url or fix proxy settings server-side.~/.config/kitchenowl-api/session.json.ZIP package — ready to use