๐ŸŽ‰ New Welcome to reservie โ€” V2 is now live and available for use. Get started โ†’

Passes

Updated Feb 25, 2026 2 min read

Retrieve the pass catalogue โ€” credit packages available for purchase, pricing, validity, and configuration.

The Passes API returns the pass catalogue โ€” the credit packages available for purchase. For customer-scoped pass purchases, see Customers โ€” Passes.

All endpoints require the passes:read scope.


List passes

GET /passes

Returns all active passes for the company. Deleted passes are excluded.

No pagination โ€” passes are a small catalogue.

Example response

{
  "data": [
    {
      "id": "pass_5",
      "type": "pass",
      "name": "10-Class Pass",
      "description": "Valid for 10 classes of any type",
      "base100_price": 5000,
      "credits": 10,
      "start_mode": "ON_PURCHASE",
      "validity": {
        "period": 3,
        "unit": "MONTHS"
      },
      "subscriptions_only": false,
      "purchase_limit": null,
      "created_at": "2025-01-15T10:00:00"
    }
  ]
}

Get a single pass

GET /pass/{id}

Retrieve a single pass by ID. Returns the pass even if deleted (when requested by ID explicitly).

Path parameters

ParameterTypeDescription
idstringPass ID (e.g. pass_5)

Example response

{
  "data": {
    "id": "pass_5",
    "type": "pass",
    "name": "10-Class Pass",
    "description": "Valid for 10 classes of any type",
    "base100_price": 5000,
    "credits": 10,
    "start_mode": "ON_PURCHASE",
    "validity": {
      "period": 3,
      "unit": "MONTHS"
    },
    "subscriptions_only": false,
    "purchase_limit": 2,
    "created_at": "2025-01-15T10:00:00"
  }
}

Error responses

StatusCondition
403Missing passes:read scope
404Pass ID does not exist for this company

Active purchases for a pass

GET /pass/{id}/packages

List all active, non-expired pass purchases for a given pass template, including the customer who owns each purchase and their remaining credits.

Path parameters

ParameterTypeDescription
idstringPass ID (e.g. pass_5)

Example response

{
  "data": {
    "pass_id": "pass_1",
    "pass_name": "Gold member",
    "active_passes": [
      {
        "id": "pkg_2291",
        "type": "pass_purchase",
        "customer": {
          "id": "cust_1068",
          "type": "customer",
          "firstname": "Jane",
          "lastname": "Smith",
          "email": "jane@example.com"
        },
        "credits_total": 999,
        "credits_remaining": 996,
        "starts": "2025-03-24T15:59:21",
        "expires": "2026-03-24T08:00:00",
        "created_at": "2025-03-24T15:59:21"
      }
    ]
  }
}

Pass purchase fields

FieldTypeDescription
idstringPurchase ID (prefixed with pkg_)
typestringAlways "pass_purchase"
customerobjectCustomer who owns the purchase
customer.idstringCustomer ID (prefixed with cust_)
credits_totalnumberTotal credits allocated on the pass
credits_remainingnumberCredits remaining (total minus event bookings and video purchases)
startsstring or nullWhen the pass validity started
expiresstring or nullExpiry datetime, or null if no expiry
created_atstringISO 8601 datetime

Only active purchases are returned โ€” deleted, voided, and expired purchases are excluded.

Error responses

StatusCondition
403Missing passes:read scope
404Pass ID does not exist for this company

Field reference

FieldTypeDescription
idstringPrefixed pass ID (e.g. pass_5)
typestringAlways "pass"
namestringPass name
descriptionstringPass description
base100_pricenumberPrice in smallest currency unit (e.g. 5000 = 50.00)
creditsnumberNumber of credits included in the pass
start_modestringWhen the pass validity begins: "ON_PURCHASE" or "ON_FIRST_EVENT"
validity.periodnumberValidity duration
validity.unitstringValidity unit: "DAYS", "MONTHS", or "YEARS"
subscriptions_onlybooleanIf true, pass can only be purchased by subscribers
purchase_limitnumber or nullMaximum purchases per customer, or null if unlimited
created_atstringISO 8601 datetime

Caching

All endpoints are cached for 5 minutes. See Scopes, Rate Limits, Caching & Errors for details.