WAKATODOCS

Wakato Pass

Space MCP tools in the Wakato Pass scope (pass). Reach these with a wks_live_ key over space-mcp or space-api.

Tools in the pass scope, callable over space-mcp (tools/call) or space-api (REST) with a wks_live_* key that grants pass.

adjust_pass_balance

Scope: pass:write

Add or deduct points/stamps/value on a customer's card. Target by install_id, or by template_id + contact_email/contact_id. delta may be negative (never below zero). Lands in the pass ledger like every other balance change.

ParameterTypeRequiredDescription
install_idstring
template_idstring
contact_emailstring
contact_idstring
deltanumberyes
reasonstring

create_pass_template

Scope: pass:write

Create a Wakato Pass template customers can add to their account via the returned /card/<code> link. pass_type: loyalty (points balance), punch (stamps toward one reward), membership (tier + validity), gift_card (stored value), appointment (shows the contact's next booking). Earn rules: earn_per_scan awards on staff scan; for anything else (e.g. +10 points per booking) create an automation with the adjust_pass_balance action. Starts as draft — set status:'active' (or update later) to make it installable.

ParameterTypeRequiredDescription
namestringyese.g. "Bella's Coffee Loyalty".
pass_typeloyalty | punch | membership | gift_card | appointmentyes
descriptionstring
configobjectPer type: loyalty {points_label}; punch {stamps_required}; membership {tiers[], default_tier, validity_days}; gift_card {currency}; appointment {booking_page_id}. Any type may also set {show_next_booking: true} to overlay the holder's next booking on the card, plus {booking_page_id} to scope it (and power the Book button).
rewardsobject[][{title, cost, method}] — method 'staff_scan' (redeemed at the counter) or 'self_code' (customer self-redeems).
brandobject{ bg_color, text_color, logo_url } for the card face.
earn_per_scannumberPoints/stamps per staff scan (default 1 for loyalty/punch, 0 otherwise).
scan_cooldown_minutesnumberMinimum minutes between scans of the same card (default 1).
allow_new_contactsbooleanfalse = invite-only (installer must already be a contact).
statusdraft | active

get_pass_template

Scope: pass:read

Get one pass template with its config, rewards, active holder count, and the public install link (/card/<code>) customers use to add the card.

ParameterTypeRequiredDescription
template_idstringyes

list_pass_holders

Scope: pass:read

List customers holding cards in this space (joined with their contact name/email), with balance, tier, and validity. Optional template_id filter.

ParameterTypeRequiredDescription
template_idstring
limitnumber
offsetnumber

list_pass_templates

Scope: pass:read

List the space's Wakato Pass templates (loyalty cards, punch cards, memberships, gift cards, appointment cards customers add to their account). Call before create_pass_template to reuse an existing one.

ParameterTypeRequiredDescription
statusdraft | active | archived
limitnumber

update_pass_template

Scope: pass:write

Edit a pass template: rules (earn_per_scan, scan_cooldown_minutes, config), rewards (replaces the whole array), brand, description, or status (draft/active/archived — archived cards stop scanning).

ParameterTypeRequiredDescription
template_idstringyes
namestring
descriptionstring
configobject
rewardsobject[]
brandobject
earn_per_scannumber
scan_cooldown_minutesnumber
allow_new_contactsboolean
statusdraft | active | archived

On this page