Base URLs
See Environments for how the two differ and how to get staging credentials.
Authentication
Requests are authenticated with an API key sent as a bearer token:Way-Brand-Id + Way-Secret-Key headers keep working - see Legacy authentication.
If you manage multiple brands, one organization key covers all of them: most brand-scoped endpoints accept an organization key as well as a brand key. On those endpoint pages, use the dropdown in the Authorizations section to switch between the two. An organization key authorizes every brand in the organization but does not name one, so each endpoint’s description says how that request is scoped, and where a
Way-Brand-Id header is required.Pagination
List endpoints return items alongsidemeta and links objects:
page and limit query parameters to page through results.
Amounts and currency
Monetary fields are expressed in major units of the brand’s currency:150 means $150.00 for a USD brand, and decimals are allowed (150.75). This applies to price tiers, advertisedPrice/startingPrice, the payment intent’s totalNetAmount, booking amounts from Get bookings, and refunds.
Amounts in Stripe objects (payment intents, receipts) are always in Stripe’s minor units - don’t compare them 1:1 with Way amounts.
API versions
Endpoints are versioned in the URL path (/v1, /v2, /v3). Higher versions supersede lower ones per endpoint, not across the whole API - most of the surface is /v1 and fully supported. Where a newer version exists, the older endpoint is marked deprecated on its reference page with a link to its replacement (for example, Get all listings replaces the v2 listings endpoints). Deprecated endpoints keep working, but new integrations should use the newest version of each endpoint.