---
title: "GET /events"
method: GET
path: "/events"
tags: ["Events"]
---

# GET /events

`GET /events`

## Request

- Base URL: `https://api.aisle.wedding/v1`
- URL: `https://api.aisle.wedding/v1/events`
- Auth: HTTP bearer

## Query parameters

- `type` string[]
- `visibility` string[]
- `limit` integer
- `cursor` string

## Response `200`

A cursor-paged collection.

- object
  - `data` Event[], required
    - `id` string, required
    - `name` string, required
    - `type` 'welcome_dinner' | 'ceremony' | 'reception' | 'brunch' | 'rehearsal' | 'cocktail_hour' | 'after_party' | 'activity' | 'other', required
    - `starts_at` string, date-time, required: An instant, not a wall clock. Format it in the wedding's `timezone` from `GET /wedding`, never in the reader's zone.
    - `ends_at` string, date-time, nullable, required: An instant, not a wall clock. Format it in the wedding's `timezone` from `GET /wedding`, never in the reader's zone.
    - `all_day` boolean, required: True for an all-day item, such as a travel day: it has a day and no time. `starts_at` is then the start of its first day in the wedding's `timezone` and `ends_at`, when set, the start of its last day; show the days, never midnight. On a write, any time sent with the days is dropped. Defaults to false.
    - `venue` object, required
      - `name` string, nullable
      - `address` string, nullable
      - `latitude` string, nullable
      - `longitude` string, nullable
    - `description` string, nullable, required
    - `images` string[], required
    - `dress_code_id` string, nullable, required
    - `meal_selection` object, required
      - `enabled` boolean
      - `deadline` string, date-time, nullable: An instant, not a wall clock. Format it in the wedding's `timezone` from `GET /wedding`, never in the reader's zone.
      - `options` object[]
        - `id` string, required
        - `name` string, required
        - `description` string
        - `dietary_tags` string[]
    - `ticket` object, required
      - `required` boolean
      - `price` string, nullable
      - `pay_later` boolean: When true, an attending reply is recorded before the ticket is paid and the ticket stays owed. When false, an attending reply to a ticketed event waits for a completed ticket payment.
    - `rsvp` object, required
      - `asks_separately` boolean
      - `options` object[], nullable
        - `id` string, required
        - `label` string, required
        - `counts_as` 'attending' | 'maybe' | 'declined', required
    - `visibility` 'public' | 'invite_only' | 'internal', required
    - `audience_tags` string[], required
    - `audience_property_ids` string[], required
    - `transport_note` string, nullable, required
    - `transport_legs` object[], required
      - `id` string, required
      - `location` string, required
      - `time` string, date-time, nullable, required: An instant, not a wall clock. Format it in the wedding's `timezone` from `GET /wedding`, never in the reader's zone.
      - `note` string, nullable, required
      - `audience_tags` string[], required
      - `audience_properties` string[], required
      - `audience_undecided` boolean
    - `sort_order` integer, required
    - `seating_not_required` boolean, required
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
  - `has_more` boolean, required
  - `next_cursor` string, nullable, required

## Other responses

- `400`: The request itself could not be read, such as a body that is not a JSON object. A field we refuse is validation_failed instead.
- `401`: The API key is missing, malformed, or no longer valid.
- `402`: The operation requires an active Aisle membership for this wedding.
- `403`: The key is valid but not permitted to do this.
- `404`: No such resource inside the key's wedding.
- `409`: The request collided with the current state of the resource.
- `415`: A request body must be sent as application/json.
- `422`: The request was well-formed but a field was not acceptable. Every field at fault is named in error.details.
- `429`: Too many requests. Retry after the time given in Retry-After.
- `500`: Something went wrong on our side.

---

[API](https://skmtc.dev/aisle/apis/aisle-api.md) · [All operations](https://skmtc.dev/aisle/apis/aisle-api/llms.txt) · [OpenAPI document](https://skmtc.dev/aisle/apis/aisle-api/revisions/689a2f2420cc?raw)
