Skip to main content
The Technified API lets you wire your own services into a guild’s data: Roblox game servers, custom dashboards, or internal tools. This reference covers the endpoints you can call with a guild API key. Dashboard-only routes that require a logged-in session are not listed here.
If you run the Roblox integration, you do not need to call this API yourself. The plugin already handles verification lookups, ban and mute checks, and sync. This API is for builders wiring Technified into their own systems.

Base URL

Every path in this reference is appended to that prefix.

Authentication

You authenticate with a guild API key. A key is bound to one guild, so it can only read and write that guild’s data.

Get a key

1

Open the dashboard

Go to technified.xyz/dashboard and pick your server.
2

Create a key

Open Settings > API Keys, click Create API Key, and copy it right away. It is shown only once.
A key looks like technified_<guildId>_<random>. You can have up to 10 active keys per guild. Keep keys server-side. Never embed them in Roblox client scripts, browser code, or git. See API Keys for management.

Send the key

The API accepts the key in any of three header formats. Use whichever your HTTP client makes easiest.

Which guild the call targets

Your key has a guild ID baked into it. How you point a request at that guild depends on the endpoint: If the guild in your key does not match the guild you are targeting, the API returns 403.

Scopes

Every key created from the dashboard is scoped: it can only call the endpoints you granted it. Scopes are resource:action pairs. Grant the smallest set your integration needs. A :write scope implies the matching :read scope for the same resource.
Keys created before scoping keep full access to every endpoint. Editing such a key in the dashboard applies scopes to it. Keys installed by the Roblox integration quick-install request every scope automatically, so the plugin keeps working.
When a key is missing the scope an endpoint needs, the API returns 403 with an insufficient_scope detail:

Check a key’s scopes

Returns the guild, prefix and granted scopes for the calling key, so a client can discover what it is allowed to do. scopes is null for a legacy full-access key.

Key controls

Beyond scopes, each key can carry optional guards, all managed under Settings > API Keys:
  • Expiry: a date after which the key is rejected with 401 API key has expired.
  • Rate limit: a per-key requests-per-minute cap, applied on top of the per-category limits.
  • IP allowlist: restrict the key to specific IPs or IPv4 CIDR ranges. Requests from any other address get 403.

Response shape

Every successful response uses this envelope:
Errors use a matching shape, with optional details:
See Errors for the full list of status codes.

Quick example

Check whether a Roblox user is banned in your guild.
Response

Conventions

  • Request and response bodies are JSON.
  • Discord IDs are stringified snowflakes, for example "123456789012345678".
  • Roblox user and group IDs are numbers.
  • Timestamps in stored records are Unix seconds unless noted otherwise.
  • :identifier in moderation paths accepts a Roblox user ID.

Where to go next

Lookup

Resolve verification links between Discord and Roblox.

Moderation

Check ban and mute status, manage Roblox punishments, and read logs.

Members

List members and verified users for a guild.

Bindings

Read and manage role bindings.

Shield

Check users against the Shield flagged list.

Rate limits

Per-category quotas and the 429 response.

Errors

Status codes and how to recover.