Docs

List booking types

Preview· P9
GET/booking-types

Returns your booking types (the kinds of meeting people can book), sorted by name. With a publishable key, only public booking types are returned.

Each public booking type carries a public_form: the intake questions an attendee answers, taken from the visit form of its visit_type without the fields your staff fill in. A booking widget renders these.

Scope: bookings:read · Plan: Pro and Enterprise in live mode; every plan in test mode. Publishable keys: allowed (public booking types only).

Authorization

AuthorizationBearer <token>

Send Authorization: Bearer <token> on every request. The token is one of:

PrefixWhat it isWhere it may be used
agoo_sk_live_Secret key, live modeYour servers only
agoo_sk_test_Secret key, test modeYour servers only
agoo_pk_live_Publishable key, live modeBrowsers and apps: create pre-registrations and bookings, read public booking types (with their intake questions) and their free slots, read the visit types open for pre-registration with their public forms. Never lists people.
agoo_pk_test_Publishable key, test modeAs above, in test mode

Admins create keys in Console → Developers → API keys and choose each key's scopes. A key is shown once. Never put a secret key in a URL, a browser or a mobile app.

In: header

Scope: bookings:read

Query Parameters

limit?integer

How many items to return, from 1 to 100.

Range1 <= value <= 100
Default25
cursor?string

The next_cursor from the previous page. Leave it out for the first page.

Lengthlength <= 512
site_id?string

Only booking types held at this site.

Match^site_[0-7][0-9a-hjkmnp-tv-z]{25}$
Example"site_01kjpt3yw0fz0v414608h9x65s"
host_id?string

Only booking types this person takes.

Match^person_[0-7][0-9a-hjkmnp-tv-z]{25}$
Example"person_01kjsesxm0e4zbyvkr7bcfxbfg"

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X GET "https://example.com/booking-types?limit=25"
{  "data": [    {      "id": "btype_01kn44arm0eya81713cpbnfbpq",      "name": "Meet Treasury",      "slug": "meet-treasury",      "description": "A 30-minute meeting with the Treasury team at Ridge HQ.",      "duration_minutes": 30,      "meeting_kind": "in_person",      "visit_type": "meeting",      "site_id": "site_01kjpt3yw0fz0v414608h9x65s",      "host_ids": [        "person_01kjsesxm0e4zbyvkr7bcfxbfg"      ],      "requires_confirmation": false,      "confirmation_window_hours": 24,      "visibility": "public",      "public_form": {        "version": 2,        "schema": {          "$schema": "https://json-schema.org/draft/2020-12/schema",          "type": "object",          "properties": {            "vehicle_plate": {              "type": "string",              "title": "Vehicle number plate",              "maxLength": 12            },            "bringing_laptop": {              "type": "boolean",              "title": "Bringing a laptop?"            }          },          "additionalProperties": false        }      },      "time_zone": "Africa/Accra",      "created_at": "2026-04-01T09:00:00Z",      "updated_at": "2026-09-02T11:20:00Z"    },    {      "id": "btype_01kqs3efm0emma1643wwgmw0jc",      "name": "New client consultation",      "slug": "new-client-consultation",      "description": "A 45-minute first meeting with a relationship manager at Ridge HQ. The host confirms each request.",      "duration_minutes": 45,      "meeting_kind": "in_person",      "visit_type": "meeting",      "site_id": "site_01kjpt3yw0fz0v414608h9x65s",      "host_ids": [        "person_01kjsesxm0e4zbyvkr7bcfxbfg"      ],      "requires_confirmation": true,      "confirmation_window_hours": 24,      "visibility": "public",      "public_form": {        "version": 2,        "schema": {          "$schema": "https://json-schema.org/draft/2020-12/schema",          "type": "object",          "properties": {            "vehicle_plate": {              "type": "string",              "title": "Vehicle number plate",              "maxLength": 12            },            "bringing_laptop": {              "type": "boolean",              "title": "Bringing a laptop?"            }          },          "additionalProperties": false        }      },      "time_zone": "Africa/Accra",      "created_at": "2026-05-04T09:00:00Z",      "updated_at": "2026-05-04T09:00:00Z"    }  ],  "next_cursor": null,  "has_more": false}