---
title: "Step into a room with an invite (open to the innernet team for now)"
method: POST
path: "/v1/rooms/join"
tags: ["rooms"]
---

# Step into a room with an invite (open to the innernet team for now)

`POST /v1/rooms/join`

## Request

- Base URL: `https://innernet.live/api`
- URL: `https://innernet.live/api/v1/rooms/join`
- Auth: HTTP bearer

Rooms are open to the innernet team for now: for anyone else this answers 403 `rooms_not_open`, before the invite is read. REST only — joining a room is a person's own act, so there is no MCP tool. Requires the `write` scope. Pass the invite `token` (or the invite link) a room owner sent. The token is the authorization, as on the web; an invite made for one address only works for that account. a room holds 4 people on the free plan, its owner included. to bring in more, the team plan is opened for it (409 `room_full`). Joining a room you already stand in is a 200 with `already: true`.

## Request body

- object
  - `token` string, required: The invite token, or the link that carries it.

## Response `200`

You stand in the room

- object
  - `ok` boolean
  - `room` object
    - `id` string
    - `slug` string
    - `name` string
  - `role` 'editor' | 'viewer'
  - `already` boolean

## Other responses

- `400`: Error
- `401`: Error
- `403`: Error — rooms are not open to this person yet (`rooms_not_open`: open to the innernet team for now), the invite is for another account (`wrong_account`; the address is masked) or the key lacks the `write` scope
- `404`: Error — no such invite, or it was taken back or has expired (`not_found`)
- `409`: Error — the room is full on the free plan (`room_full`)
- `429`: Error

---

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