Skip to content
Billzova Developers

Concepts

Authentication & keys

Secret keys, test mode, scopes, IP locks and revoking.

Every request (except public tracking) needs a key in the Authorization header:

http
Authorization: Bearer bz_live_sk_3kX…

Kinds of keys

PrefixModeWhat happens
bz_live_sk_LiveReal orders and bookings reach the restaurant.
bz_test_sk_TestEvery check and price is real, but orders and bookings never reach the kitchen. Test ids start with test_.

How keys are protected

  • Billzova stores only a SHA-256 hash — nobody, including us, can read a key after it is created.
  • Keys are accepted only in the header. A key in a URL is refused (URLs end up in logs).
  • Revoke a key in the dashboard and it stops working within seconds.
  • Optionally lock a key to IP addresses — calls from anywhere else get IP_NOT_ALLOWED.
  • Every call is logged with its request id; owners see usage per key in the dashboard.

Scopes

ScopeAllows
restaurant:readRestaurant info, hours, status
menu:readThe menu
orders:writeQuote, place and cancel orders
orders:readRead and list orders
reservations:readAvailability, read bookings
reservations:writeBook and cancel

New keys get all scopes unless you choose fewer. A call outside the key's scopes gets SCOPE_MISSING.