---
title: "List upcoming meetings"
method: GET
path: "/meetings/upcoming"
tags: ["meetings"]
---

# List upcoming meetings

`GET /meetings/upcoming`

## Request

- Base URL: `https://api.timeless.day/v1`
- URL: `https://api.timeless.day/v1/meetings/upcoming`
- Auth: HTTP bearer

Returns a paginated list of upcoming meetings from the authenticated user's connected calendar, ordered by start time. These are scheduled calendar events that have not yet started — distinct from the recorded meetings returned by `GET /meetings`.

## Query parameters

- `within_hours` integer, nullable
- `cursor` string, nullable
- `limit` integer

## Response `200`

A paginated list of upcoming meetings.

- PaginatedResponseUpcomingMeeting
  - `data` UpcomingMeeting[], required
    - `id` string, required: Calendar event ID.
    - `title` string, required: Event title.
    - `start_time` string, date-time, required: Scheduled start time (ISO 8601).
    - `end_time` string, date-time, nullable, required: Scheduled end time (ISO 8601). May be `null` if the event has no defined end.
    - `meeting_url` string, nullable, required: Join URL for the video call, or `null` if the event has none.
    - `participants` EventParticipant[], required: Invited participants.
      - `name` string, nullable, required: Participant name, if known.
      - `email` string, required: Email address.
      - `organizer` boolean, required: Whether this participant is the event organizer.
      - `response_status` string, nullable, required: The participant's RSVP status (e.g., `accepted`, `declined`, `tentative`, `needsAction`).
    - `organizer` EventParticipant, required
      - `name` string, nullable, required: Participant name, if known.
      - `email` string, required: Email address.
      - `organizer` boolean, required: Whether this participant is the event organizer.
      - `response_status` string, nullable, required: The participant's RSVP status (e.g., `accepted`, `declined`, `tentative`, `needsAction`).
    - `created_at` string, date-time, required: When the calendar event was created (ISO 8601).
  - `next_cursor` string, nullable, required: Cursor for the next page. `null` if no more results.
  - `has_more` boolean, required: Whether more results exist beyond this page.

## Other responses

- `401`: Authentication required.
- `422`: Validation Error

## Changes

- **2026-11-03** `10a43448b654`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/timeless/apis/timeless-public-api/changes/meetings/upcoming/get.md)

---

[API](https://skmtc.dev/timeless/apis/timeless-public-api.md) - [All operations](https://skmtc.dev/timeless/apis/timeless-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/timeless/apis/timeless-public-api/revisions/10a43448b654?raw)
