For the complete documentation index, see llms.txt. This page is also available as Markdown.

Waivers

Adds waiver templates and waiver submission fields to booking flows.

To use this capability, add octo/waivers to your Octo-Capabilities header.

This capability adds waiver definitions to products and adds waiver submission/status fields to booking write and booking response objects.

Routes

Product waiver fields are returned on:

  • GET /products

  • GET /products/{productId}

Booking waiver write fields are accepted on:

  • POST /bookings

  • PATCH /bookings/{uuid}

Waiver status fields are returned on booking objects and booking unit-item objects in booking responses.

Behaviour

  • product.waiverPer determines where waiver inputs must be submitted.

  • When waiverPer is BOOKING, submit waiver fields on the top-level booking request body.

  • When waiverPer is UNIT, submit waiver fields on each unitItems[] object.

  • waiver.content is markdown and can include field tags such as -First Name-=__ or -Email-=__("type":"email").

  • Every field parsed from waiver.content is returned in waiver.fields[].

  • You can render those fields inline in the waiver form content, or render them separately using waiver.fields[].

  • inputType: "signature" should be rendered as a signature box.

  • inputType: "country" should be rendered as a country dropdown.

  • For country, submit the selected value as an ISO 3166-1 alpha-2 code (for example GB, US).

  • Standard waiver submission requires waiverId and waiverFieldValues.

  • waiverFile is optional and can be sent at booking level or unit-item level. Use a PDF data URI (data:application/pdf;base64,...) if you want to save a rendered waiver copy.

  • If waiverId is sent at the wrong level, the API returns WAIVER_ON_BOOKING_ONLY or WAIVER_ON_TICKET_ONLY.

  • waiverId must match one of product.waivers[]; otherwise the API returns INVALID_WAIVER_ID.

  • waiverFieldValues must be an array and each record must include fieldId.

  • waiversComplete indicates whether waiver requirements are complete for the booking/unit item.

Schema Additions (JSON)

These are additive fragments showing only fields introduced by this capability.

Product

BookingWriteRequest

BookingWriteRequest (Offline/In-Person)

BookingUnitItemWriteRequest

Booking

BookingUnitItem

Last updated