Files
neoirc/schema/numerics/322.json
T
sneak 83a3245d5d
check / check (push) Waiting to run
Make the schema files match the server (closes #218)
Each file in schema/ now describes what the HTTP API on next sends and
accepts. A numeric reply has its name in command and its number in code.
body is always an array of strings. MODE, KICK and JOIN carry their
values in body, and TOPIC needs a non-empty body. PING takes no token,
and its PONG is the HTTP response. A channel name is limited to 63
characters, and the leading # is optional from a client.

PUBKEY.json is deleted, since the server has no such command. The
section of schema/README.md that listed the differences is removed,
and the sentences it made false are corrected.

Model: opus-5-5
2026-11-02 04:47:22 +00:00

65 lines
1.4 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://sneak.berlin/go/neoirc/schema/numerics/322.json",
"title": "322 RPL_LIST",
"description": "One channel in the answer to LIST. The answer has one per channel, except a secret channel, one with mode +s, that the user is not on. RFC 1459 §6.2.",
"$ref": "../message.json",
"properties": {
"command": {
"const": "RPL_LIST"
},
"code": {
"const": 322
},
"from": {
"type": "string",
"description": "The server name."
},
"to": {
"type": "string",
"description": "The user's nick."
},
"params": {
"type": "array",
"items": {
"type": "string"
},
"description": "The channel name and its number of members.",
"minItems": 2,
"maxItems": 2
},
"body": {
"type": "array",
"items": {
"type": "string"
},
"description": "One string: the channel's topic, empty when it has none.",
"minItems": 1,
"maxItems": 1
}
},
"required": [
"command",
"code",
"from",
"to",
"params",
"body"
],
"examples": [
{
"command": "RPL_LIST",
"code": 322,
"from": "neoirc",
"to": "alice",
"params": [
"#general",
"12"
],
"body": [
"General discussion"
]
}
]
}