Events
Schedule, retrieve, and manage events within tours
Events are the schedulable units inside a tour. Each event has a date, a location, a status, and collections of team members, guests, vehicles, and expenses.
Resource overview
GET
/api/eventsAPI key · SessionPOST
/api/eventsAPI key · SessionGET
/api/events/{id}API key · SessionPATCH
/api/events/{id}API key · SessionDELETE
/api/events/{id}API key · SessionList events
GET
/api/eventsAPI key · SessionQuery parameters
| Name | Type | Required | Description |
|---|---|---|---|
page | integer | Optional | 1-based page number. Default: 1 |
limit | integer | Optional | Page size. Capped at 100. Default: 10 |
status | string | Optional | Comma-separated subset of `pending`, `confirmed`, `in_progress`, `completed`. |
tourId | string | Optional | Filter to events on a specific tour. |
Response
200
{
"data": [
{
"id": "event-uuid",
"name": "Annual Conference",
"date": "2026-06-15T09:00:00Z",
"location": "Convention Center",
"status": "confirmed",
"tourId": "tour-uuid",
"creator": { "id": "user-uuid", "name": "John Doe", "email": "john@example.com" },
"_count": { "eventGuests": 50, "vehicles": 3, "expenses": 12 }
}
],
"total": 150,
"page": 1,
"limit": 10,
"totalPages": 15
}See Pagination for the envelope contract.
Create event
POST
/api/eventsAPI key · Session| Name | Type | Required | Description |
|---|---|---|---|
name | string | Required | Event name. |
tourId | string | Required | Parent tour ID. |
date | string (ISO 8601) | Required | Event start, in UTC. |
location | string | Optional | Venue or address. |
description | string | Optional | Free-form description. |
teamMembers | TeamMember[] | Optional | Optional initial team roster. |
201
{
"id": "event-uuid",
"name": "Team Building Event",
"date": "2026-07-20T10:00:00Z",
"status": "pending",
"tourId": "tour-uuid",
"createdBy": "user-uuid"
}Get event
GET
/api/events/{id}API key · SessionReturns the event with its tour, vehicles, eventGuests, expenses, and
teamMembers arrays embedded.
Update event
PATCH
/api/events/{id}API key · SessionPass only the fields you want to change. Returns the updated event object.
Delete event
DELETE
/api/events/{id}API key · Session200
{ "success": true }Sub-resources
| Method | Endpoint | Description |
|---|---|---|
GET / POST | /api/events/{id}/team | List or add team members |
GET / PATCH / DELETE | /api/events/{id}/team/{memberId} | Manage one team member |
GET / POST | /api/events/{id}/guests | List or assign guests |
GET / PATCH / DELETE | /api/events/{id}/guests/{eventGuestId} | Manage one event-guest |
POST | /api/events/{id}/guests/{eventGuestId}/vehicle | Assign a vehicle to that guest |
GET / POST | /api/events/{id}/vehicles | List or attach vehicles |
GET / POST | /api/events/{id}/expenses | List or log expenses |