Room v1¶
Source schema: doc/schemas/room.v1.schema.json
Durable room opening payload carried inside an Agora record envelope. The Agora envelope owns record id, topic, author and signature; this payload owns only room-domain fields.
Governing Basis¶
Project Lineage¶
Fields¶
| Field | Required | Shape | Description |
|---|---|---|---|
schema/v |
yes |
const: 1 |
|
room/id |
yes |
ref: #/$defs/room_id |
|
opener/subject |
yes |
ref: #/$defs/subject |
|
authority/subject |
yes |
ref: #/$defs/subject |
|
policy/ref |
yes |
string | |
seq/no |
yes |
integer | |
created-at |
yes |
string | |
expires-at |
no |
string | |
source/ref |
no |
string | |
extensions |
no |
ref: #/$defs/extensions |
Definitions¶
| Definition | Shape | Description |
|---|---|---|
room_id |
string | |
subject |
object | |
grant |
enum: speak, vote, answer, observe, actuate, moderate, delegate |
|
extensions |
object | |
| ## Field Semantics |
schema/v¶
- Required:
yes - Shape: const:
1
room/id¶
- Required:
yes - Shape: ref:
#/$defs/room_id
opener/subject¶
- Required:
yes - Shape: ref:
#/$defs/subject
authority/subject¶
- Required:
yes - Shape: ref:
#/$defs/subject
policy/ref¶
- Required:
yes - Shape: string
seq/no¶
- Required:
yes - Shape: integer
created-at¶
- Required:
yes - Shape: string
expires-at¶
- Required:
no - Shape: string
source/ref¶
- Required:
no - Shape: string
extensions¶
- Required:
no - Shape: ref:
#/$defs/extensions
Definition Semantics¶
$defs.room_id¶
- Shape: string
$defs.subject¶
- Shape: object
$defs.grant¶
- Shape: enum:
speak,vote,answer,observe,actuate,moderate,delegate
$defs.extensions¶
- Shape: object