Glossary

Key terms and concepts used throughout the Argon Bot API.

Core Concepts

Space
A server or community in Argon. Equivalent to a "guild" or "server" in other platforms. Contains channels, members, and archetypes. Every bot is added to one or more spaces.
Channel
A communication endpoint within a space. Types: text (messages), voice (audio streaming), announcement (broadcast-only). Each channel has a unique ID and belongs to a space.
Archetype
A role assigned to space members. Controls permissions, display color, and mentionability. Members can have multiple archetypes. Equivalent to "roles" in other platforms.
Member
A user (or bot) who has joined a space. Has a userId, display name, username, and a list of assigned archetype IDs.

Authentication & Security

Bot Token
A secret string used to authenticate API requests. Passed via Authorization: Bot <token> header or as a path segment: /api/bot/<token>/.... Never share your token publicly.
Verified Bot
A bot reviewed and approved by Argon. Gets higher rate limits, access to privileged APIs (calls, voice egress), and a verified badge. Apply through the Developer Console.
Permission
A capability required to call certain endpoints. Examples: SendMessages, ManageChannels, KickMembers. Permissions are granted via archetypes assigned to the bot.

Real-time

SSE (Server-Sent Events)
A unidirectional streaming protocol over HTTP. Bots open a persistent GET /IEvents/v1/Stream connection and receive JSON events in real time. Supports automatic reconnection via Last-Event-ID.
Intent
A bitmask filter that controls which events a bot receives on its SSE connection. Each intent enables a category of events (e.g., Messages, Voice, Members). Some intents are privileged and require verification.
Privileged Intent
An intent that requires explicit approval. Examples: Members (member join/leave/update) and Presence (online status changes). Requested during bot verification.

Data & IDs

File ID
A UUID referencing an uploaded file (image, audio, document). Used in message entity attachments. File IDs are opaque — use the file API to upload and retrieve content.
Message ID
A monotonically increasing int64 (snowflake) identifying a message within a channel. In JavaScript, use BigInt since these values exceed Number.MAX_SAFE_INTEGER.
Random ID
A client-generated int64 used for message deduplication. If the server receives a message with the same random ID from the same bot, it returns the existing message instead of creating a duplicate.

API Versioning

Stable Contract
An API interface version whose surface (routes, types, fields) is guaranteed not to change. Protected by a SHA-256 contract hash. Breaking changes require a new version number.
Draft Contract
An experimental API interface version subject to change without notice. Identified by a date-based version number (e.g., v20260401). No contract hash — may be modified or removed.
Contract Hash
A SHA-256 digest of an interface's complete API surface (routes, HTTP methods, request/response types and their fields). The server verifies the hash at startup and refuses to start if the surface has changed unexpectedly.