← Back to Skills Marketplace
onokje

WOL catering api

by Martin Schimmel · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
46
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install wol-catering-api
Description
Access the Wake-up On LAN catering API to list menu items, place orders by product ID and quantity, and view order history with account balance.
README (SKILL.md)

WoL Catering API

Interact with the Wake-up On LAN catering system via its REST API using curl.

Step 1 — Resolve credentials

Run these two shell commands to check for environment variables:

echo "${WOL_API_TOKEN}"
echo "${WOL_BASE_URL}"
  • If WOL_API_TOKEN is empty, ask the user:

    "Please paste your API token, or configure the WOL_API_TOKEN environment variable. You can generate one at /user/api-tokens on the WOL site."

  • If WOL_BASE_URL is empty, asume https://wollan.nl as the base url.

Store the resolved values as TOKEN and BASE_URL for use in the commands below.

Step 2 — Dispatch on user intent

Look at $ARGUMENTS and the user's message to determine which action to take.


List products / show the menu

Trigger: $ARGUMENTS contains products, or the user asks what is available / what's on the menu.

curl -s \
  -H "Authorization: Bearer $TOKEN" \
  "$BASE_URL/api/v1/catering/products"

Present the result grouped by category. For each product show:

  • Name
  • Price formatted as €X.XX (response values are in euro cents — divide by 100)
  • Stock status (inStock / out of stock)
  • Product ID (the user needs this to place an order)

Place an order

Trigger: $ARGUMENTS contains order, or the user says they want to order something.

Parse items from $ARGUMENTS in the format productId:quantity,... (e.g. order 3:2,5:1 means product 3 qty 2, product 5 qty 1). If no items are provided in $ARGUMENTS, ask the user which products and quantities they want (show the menu first if needed). Assume a quantity of 1 if the user provides a product or list of products without quantities.

Build the JSON body and POST:

curl -s -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"items": [{"productId": PRODUCT_ID, "quantity": QUANTITY}]}' \
  "$BASE_URL/api/v1/catering/orders"

On 201 Created: show a confirmation with the order ID, items, and total cost (sum of quantity × productPrice for all items, formatted as €X.XX).


View order history and account balance

Trigger: $ARGUMENTS contains history, is empty, or the user asks about their orders / balance.

curl -s \
  -H "Authorization: Bearer $TOKEN" \
  "$BASE_URL/api/v1/catering/orders"

Present the account summary as a table:

Amount
Total spent €X.XX
Total paid €X.XX
Balance (owed) €X.XX
Pending (in progress) €X.XX

Then list each order with its ID, date, status, and items. Only show the detailed order list if the user asks for it.

Order status meanings:

  • accepted — received, being prepared
  • waiting — queued behind other orders
  • ready — ready for pick-up
  • complete — picked up / done
  • cancelled / rejected — not fulfilled

Error handling

HTTP status Meaning Action
401 Unauthorized Token invalid or expired Ask the user to generate a new token at /user/api-tokens and set WOL_API_TOKEN
403 Forbidden Not registered / not paid for the active event, User needs to register for the active event and pay on the WOL site
422 Unprocessable Entity Invalid product ID, quantity \x3C 1, or out of stock, or ordering has been disabled by crew Check the error message: if it mentions "disabled by crew", inform the user that ordering is temporarily paused and they should try again later; If out of stock: Inform the user that the product is out of stock and suggest an alternative product from the same category if available. If other message: Show the error message from the response; suggest running the products command to check availability
503 Service Unavailable No active catering event configured Inform the user the catering system has no active event; contact the site admin
500 Internal server error Something is wrong with the service, nothing the user can fix. Inform the user that there is a problem with the service, this is nothing the user can fix; contact the site admin

Notes

  • All monetary values in API responses are in euro cents. Always divide by 100 before displaying (250€2.50).
  • The curl -s flag suppresses progress output. Pipe through | python3 -m json.tool or similar if you want to inspect raw JSON.
  • Tokens are managed at /user/api-tokens (web UI, requires login). Each token can have a name and optional expiry date.
Usage Guidance
Review this skill carefully before installing. Only use it with the official WOL API endpoint, avoid pasting or exposing your raw API token when possible, and manually confirm order details before allowing the agent to place an order.
Capability Analysis
Type: OpenClaw Skill Name: wol-catering-api Version: 1.0.0 The skill is a legitimate integration for the Wake-up On LAN (WOL) catering API, allowing users to browse menus and place orders via curl. It uses standard environment variables (WOL_API_TOKEN) for authentication and interacts with a specific domain (wollan.nl). No indicators of malicious intent, data exfiltration, or unauthorized execution were found in SKILL.md or _meta.json.
Capability Assessment
Purpose & Capability
The stated purpose is coherent, but the order workflow directly POSTs to the orders endpoint after parsing product IDs and quantities, which can affect the user's catering account balance.
Instruction Scope
The visible instructions do not require a final user confirmation before submitting an order, and they default unspecified quantities to 1.
Install Mechanism
There is no install script or code, but the registry metadata says no required env vars or primary credential while SKILL.md declares and uses curl, WOL_API_TOKEN, and WOL_BASE_URL.
Credentials
The skill instructs the agent to echo the API token and send it as a bearer token to a configurable BASE_URL, which is broader and less safe than necessary.
Persistence & Privilege
No persistence or background behavior is shown, but the token grants account-level API authority to read order history/balance and place orders.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install wol-catering-api
  3. After installation, invoke the skill by name or use /wol-catering-api
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
- Initial release of the wol-catering-api skill for interacting with the Wake-up On LAN (WOL) catering system. - Supports listing products/menu, placing orders, and viewing order history and account balance via REST API using curl. - Automatically checks and resolves required API credentials from environment variables. - Provides clear error handling for all major HTTP response codes, with user guidance for common issues. - Formats and presents monetary values and order details in a user-friendly way.
Metadata
Slug wol-catering-api
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is WOL catering api?

Access the Wake-up On LAN catering API to list menu items, place orders by product ID and quantity, and view order history with account balance. It is an AI Agent Skill for Claude Code / OpenClaw, with 46 downloads so far.

How do I install WOL catering api?

Run "/install wol-catering-api" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is WOL catering api free?

Yes, WOL catering api is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does WOL catering api support?

WOL catering api is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created WOL catering api?

It is built and maintained by Martin Schimmel (@onokje); the current version is v1.0.0.

💬 Comments