Voznest Forge

Workspace

WorkspaceProjects

Development

DocsAPI ReferenceSDKsEmbed StudioChangelog
  1. Forge
  2. /Docs

Start here

Getting StartedQuickstartPlatform ConceptsEnvironments

Build

ProjectsIdentityAgentsGatewayCapabilitiesPermissions ReferenceInstallationsLive activity

Commands & interactions

CommandsContext-menu CommandsInteractionsComponentsModals (Forms)Activities (Embedded Apps)

Acting in hubs

MessagesEmbedsEmbeds v2 (Blocks)Embeds v3Incoming WebhooksHub Management APIEvent StreamDelivery

Sign in with Voznest

AccessOpenID Connect

API

APIAuthenticationErrorsRate LimitsSecurity

Publish & operate

App Market & ListingTemplates & SandboxObservability & Team Tools

Tools

SDKsExamplesFAQ & TroubleshootingReference

Build

Agents

Automated identities, tokens and the gateway.

An agent is an account with the APP badge. It can be in many hubs at once and acts through a managed role that holds the capabilities granted at install time. The first Production agent is the project's primary agent; it is the one installed from the App Market.

Tokens

Agent tokens start with qag_ and authenticate with Authorization: Bot <token>. Only a hash is stored: the value appears once, when the agent is created or the token rotated. Rotating disconnects the agent immediately; revoking leaves it without a token until you issue a new one.

Gateway

Agents receive realtime events over Socket.IO at the API origin. Every event arrives as { t, d } on the event channel.

ts
import { io } from "socket.io-client";const gateway = io("https://api.voznest.com", { auth: { token: `Bot ${process.env.VOZNEST_BOT_TOKEN}` }, transports: ["websocket"] });gateway.on("event", ({ t, d }) => console.log(t, d));
INTERACTION_CREATE

Bots only: a member used one of your commands or clicked a button/menu. Answer with the token within 5 seconds.

COMMANDS_UPDATE

The command list of an app installed in the hub changed.

MESSAGE_CREATE

A message was sent in a channel, thread or DM you can read.

MESSAGE_UPDATE

A message was edited, pinned or its poll changed.

MESSAGE_DELETE

A message was deleted.

REACTION_ADD / REACTION_REMOVE

Someone reacted to a message.

TYPING_START

A user started typing (not persisted).

PRESENCE_UPDATE

A user's status or activity changed.

CHANNEL_CREATE / UPDATE / DELETE

Channels and categories changed.

CHANNELS_REORDER

Channel positions or categories changed.

ROLE_CREATE / UPDATE / DELETE

Roles changed in a hub.

MEMBER_ADD / UPDATE / REMOVE

Members joined, changed or left.

SERVER_CREATE / UPDATE / DELETE

A hub became available, changed or was removed.

THREAD_CREATE / THREAD_UPDATE

Threads and forum posts changed.

EVENT_CREATE / UPDATE / DELETE

Scheduled events changed.

VOICE_STATE_UPDATE

Voice channel participants or their mute/video state changed.

READ_STATE_UPDATE

Your read position or mention count changed.

NOTIFICATION_CREATE

A new inbox notification for the connected user.

Configuration per environment

An agent reads the plain configuration of its own environment (set in Environments):

ts
const { data } = await fetch("https://api.voznest.com/api/v1/developer/agent/config", { headers: { Authorization: `Bot ${token}` } }).then((r) => r.json());// { environment: "staging", config: { LOG_LEVEL: "debug" } }
PreviousIdentityNext Gateway