---
title: "Set meeting permission"
method: POST
path: "/meetings/{meeting_id}/permissions"
tags: ["meetings"]
---

# Set meeting permission

`POST /meetings/{meeting_id}/permissions`

## Request

- Base URL: `https://api.timeless.day/v1`
- URL: `https://api.timeless.day/v1/meetings/{meeting_id}/permissions`
- Auth: HTTP bearer

Grant or update access to a meeting you own for a teammate, your team, or anyone with the link. Public access is read-only.

## Path parameters

- `meeting_id` string, required

## Request body

- MeetingPermissionWrite
  - `recipient` union, required
    - AnyoneRecipient
      - `type` 'anyone', required
    - UserRecipient
      - `type` 'user', required
      - `id` string, required
    - TeamRecipient
      - `type` 'team', required
      - `id` string, required
  - `role` 'read' | 'edit', required

## Response `200`

Successful response

- MeetingPermissionGrant
  - `id` string, required
  - `recipient` union, required
    - AnyoneRecipient
      - `type` 'anyone', required
    - UserRecipient
      - `type` 'user', required
      - `id` string, required
    - TeamRecipient
      - `type` 'team', required
      - `id` string, required
  - `role` 'read' | 'edit', required

## Other responses

- `400`: Invalid ID, pagination, recipient, role, or request body
- `401`: Authentication required
- `403`: API access is not available for this account
- `404`: Meeting not found, not owned by you, or recipient not found in your team
- `429`: Rate limit exceeded

## Changes

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

[Operation history](https://skmtc.dev/timeless/apis/timeless-public-api/changes/meetings/:meeting_id/permissions/post.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)
