Skip to content

Understory API (0.1.0)

This is the reference documentation for the Understory API. Here you can find detailed information about the API endpoints, request and response formats, and authentication methods.

For more general information, go to Documentation.

Preview

You’re exploring an early preview of the Understory API documentation. Take a look around and see what’s available.

Want to help us test and improve it? Share your feedback by clicking the chat icon in the bottom right. We’d love to hear your thoughts!

Download OpenAPI description
Overview
License
Languages
Servers
https://api.understory.io/

Booking

This is an early version of the Bookings API specification.

Most of these APIs are available in production for testing. Endpoints marked as "Preview" are not yet available in production.

Breaking changes might be introduced, but the overall specification is close to stable.

Operations

Experience

This is a preview of the Experience API specification.

The API is not yet available in production.

Operations

Event Availability

Query availability for events.

Event availability is a computed value based on a number of parameters, including:

  • Event capacity and current reservations
  • Resources linked to tickets and bookings (e.g., bikes, kayaks, equipment)
  • Booking cut-off time

The availability response includes both an overall availability status and a breakdown of individual constraints, allowing you to understand exactly what factors are limiting availability for a given event.

Operations

Request

Get the availability for a single event.

Returns availability information including remaining seats and constraints.

Security
OAuth2
Path
eventIdstringrequired

The unique identifier of the event.

curl -i -X GET \
  'https://api.understory.io/v1/event-availabilities/{eventId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
event_idstringrequired

The unique identifier of the event.

availablebooleanrequired

Whether the event is available for booking. This is false if any constraint makes the event unavailable.

constraintsArray of SeatsLimitConstraint (object) or BookingLimitConstraint (object) or BookingCutoffTimeConstraint (object) or TicketLimitConstraint (object)(AvailabilityConstraint)required

List of constraints that affect availability. Each constraint represents a different factor limiting availability.

One of:

Constraint based on available seats for the event.

typestringrequired
Value"SEATS_LIMIT"
availablebooleanrequired

Whether this constraint allows booking.

remainingintegerrequired

Number of seats remaining.

Response
application/json
{ "event_id": "string", "available": true, "constraints": [ {} ] }

Request

Get availability for events belonging to an experience.

Returns a paginated list of event availability information. Use the cursor parameter to paginate through results.

Security
OAuth2
Query
experienceIdstringrequired

The unique identifier of the experience to query events for.

fromstring(date-time)

Filter events starting from this timestamp (inclusive). RFC 3339 format (e.g., 2025-10-09T08:00:00Z).

tostring(date-time)

Filter events up to this timestamp (exclusive). RFC 3339 format (e.g., 2025-10-10T18:00:00Z).

cursorstring

Pagination cursor for fetching the next page of results. An empty string or omitted value indicates the start of the list.

limitinteger(int32)[ 1 .. 100 ]

Maximum number of items to return per page. Defaults to 50, maximum 100.

Default 50
curl -i -X GET \
  'https://api.understory.io/v1/event-availabilities?experienceId=string&from=2019-08-24T14%3A15%3A22Z&to=2019-08-24T14%3A15%3A22Z&cursor=string&limit=50' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
itemsArray of objects(EventAvailability)required

Availability information for events matching the query.

event_idstringrequired

The unique identifier of the event.

availablebooleanrequired

Whether the event is available for booking. This is false if any constraint makes the event unavailable.

constraintsArray of SeatsLimitConstraint (object) or BookingLimitConstraint (object) or BookingCutoffTimeConstraint (object) or TicketLimitConstraint (object)(AvailabilityConstraint)required

List of constraints that affect availability. Each constraint represents a different factor limiting availability.

One of:

Constraint based on available seats for the event.

typestringrequired
Value"SEATS_LIMIT"
availablebooleanrequired

Whether this constraint allows booking.

remainingintegerrequired

Number of seats remaining.

nextstring

The cursor for the next page. An empty string or no value indicates the end of the list.

Response
application/json
{ "items": [ {} ], "next": "string" }

Event

This is a preview of the Events API specification.

The API is not yet available in production.

Operations

Grow

This is a collection of endpoints related to Understory Grow.

Operations

Test

These endpoints are for testing purposes only.

You can use them to verify that your integration authentication works as intended.

Operations