API v2 overview
Build server-side integrations against the supported Clan Labs API v2 surface.
Last updatedAPI v2 is the public integration surface for Clan Labs. It exposes 39 documented operations for members, ranks, medals, qualifications, blacklists, warnings, suspensions, and events.
Base URL: https://v3.api.clanlabs.co
Every /v2 request requires a current API key and the community’s Clan ID. API access is a paid-plan feature; API-driven rank management specifically requires Pro.
Make your first request
Create a read-only key in Settings → API Keys, then call the member list from a trusted server:
curl --request GET \
--url 'https://v3.api.clanlabs.co/v2/members?limit=1' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'X-Clan-Id: COMMUNITY_ID'For a Roblox experience, put YOUR_API_KEY in the Creator Hub secrets store as CLAN_LABS_API_KEY, enable HTTP requests, and run the request from a server Script.
Never call API v2 from browser JavaScript or a Roblox LocalScript, and never hard-code the key in experience source code. Web integrations should use a server-side secret manager. Roblox integrations should use the Creator Hub secrets store through HttpService:GetSecret().
Endpoint groups
Read profiles and manage progression, ranks, medals, qualifications, and suspensions.
Read guide ConfigurationRead community ranks, medals, and qualification definitions.
Read guide ModerationManage user or group blacklists and member warning records.
Read guide EventsCreate, announce, finish, cancel, and inspect events.
Read guideContract and conventions
- Successful JSON responses wrap the result in
dataand can includemetafor pagination. - Errors use
error.code,error.message, and optionalerror.details. - Input is validated against the documented path, query, and JSON schemas.
- Each endpoint declares one required API-key scope and one community feature.
- Limits are configurable. A
429response suppliesRetry-Afterand reset details. - There is no global idempotency-key contract. Reconcile state before retrying an uncertain write.
The endpoint pages are generated from the maintained API v2 schema. Download the exact contract at OpenAPI JSON.
Roblox player identifiers
Routes with {userId} accept a global Roblox user ID, or a Roblox username when ?by=username is present. Prefer usernames for calls originating from a Roblox experience: Roblox can present scoped user identifiers for players new to that experience, while Player.Name remains the actual username.
Continue with Authentication and API keys and scopes.