Endpoint families
Lookups
Resolve Discord IDs, Roblox IDs, verification status, and Premium alt detection.
Bulk lookups
Send arrays of IDs and receive ordered per-item results.
Verification sessions
Create sessions, redirect users, and read completion by polling or SSE.
Writes
Update links, remove links, and delete data in your API-key scope.
Response envelope
Every v2 JSON response uses one shape.- Success
- Error
Envelope fields
HTTP status code mirrored in the response body.
Successful response payload. Present when the request succeeds.
Stable machine-readable error code. Present when the request fails.
Human-readable error message safe to log or show in developer tooling.
Request ID for support, logs, and debugging.
v2 implementation version. Current value is
2.0.0.Active rate-limit context when available.
ISO 8601 timestamp generated by Dock.
Common error codes
| Code | Meaning |
|---|---|
BAD_REQUEST | The request could not be parsed or understood. |
MISSING_PARAMETER | A required query, path, or body value is missing. |
INVALID_PARAMETER | A supplied value has the wrong format. |
INVALID_BODY | The JSON body is missing or invalid. |
INVALID_API_KEY | The API key is missing, invalid, expired, or revoked. |
INVALID_SESSION | The dashboard session is missing or expired. |
FORBIDDEN | The key or session does not have access. |
PREMIUM_REQUIRED | Premium access is required. |
LINK_NOT_FOUND | No matching account link exists. |
SESSION_NOT_FOUND | The verification session does not exist for this key. |
SESSION_EXPIRED | The verification session expired. |
RATE_LIMITED | The key or route is temporarily limited. |
SHARED_IP_RATE_LIMITED | Shared IP or origin abuse protection limited the request. |
BULK_LIMIT_EXCEEDED | The request exceeded a bulk input limit. |
CONFLICT | The request conflicts with existing state. |
INTERNAL_ERROR | Dock could not complete the request. |
Versioning
Use the URL version for API routing:2026-01-01.
v1 migration notes
Responses
Responses
v1 returns route-specific response shapes. v2 always returns
status, data or error, meta, and timestamp.Errors
Errors
v1 error messages can vary by route. v2 uses stable error codes for client
logic.
Resolved data
Resolved data
v2 makes
resolved explicit and defaults it to false. Request
resolved=true only when you need expanded profiles.Bulk
Bulk
v2 bulk endpoints use
POST bodies, preserve input order, and return per-item errors instead of failing the whole request for missing links.v1 remains available for existing integrations. New work should use v2 unless
you are maintaining an older client.