Skip to content
Back to home
Book a call

Error Codes

Failed requests return a JSON envelope with a human-readable error and a stable machine-readable code. Branch on code, not on the message text.

{
"success": false,
"error": "Human-readable message",
"code": "ERROR_CODE"
}

Validation (400)

CodeMeaning
(various)Validation error - see the error message for details
INVALID_ROLEOrg/event role value not in the allowed list (must be UPPERCASE)
INVALID_COMPANY_TYPEcompany_type not in the allowlist
INVALID_SIZE_BANDsize_band not in the allowlist
INVALID_ORG_ID / INVALID_USER_IDUUID format check failed
INSUFFICIENT_PERMISSIONSRole hierarchy violation (e.g. ADMIN cannot promote someone to OWNER)
MISSING_FIELDSRequired body field absent
TOO_EARLY / TOO_LATECheck-in attempted outside the window
NO_TEAMMilestone gate: participant must join a team first
INVALID_EMAIL (v2.0)Participant email missing or malformed
INVALID_NAME (v2.0)Team name fails length / character validation
INVALID_PROBLEM (v2.0)Team problem text exceeds 500 chars
INVALID_STATUS (v2.0)Team recruitingStatus not one of the allowed values
INVALID_FIELDS (v2.0)Mass-assignment attempt on protected team fields
INVALID_JUDGES (v2.0)One or more user IDs lack the JUDGE role
NOT_JUDGE (v2.0)Single assignment target user lacks JUDGE role
TARGET_TRACK_REQUIRED (v2.0)Track move body missing targetTrackId
INVALID_TRACK (v2.0)Target track does not belong to this super event

Authentication & authorization (401 / 402 / 403)

HTTPCodeMeaning
401INVALID_API_KEYKey missing, invalid, revoked, or expired
402EVENT_NOT_PAIDCannot accept registrations until the super event is paid (Stripe Checkout)
403FORBIDDENThe endpoint or resource isn’t available to your key
403INSUFFICIENT_SCOPEKey does not include the required scope
403ORGANIZER_REQUIREDManual check-in requires an organizer key
403ADMIN_REQUIREDOperation requires OWNER or ADMIN org role
403NOT_ACCEPTEDRegistration status is not accepted
403PERMISSION_DENIEDOperation requires a specific role
403NOT_ORG_MEMBERCaller not a member of the target org

Not found (404)

CodeMeaning
INVALID_TOKENCheck-in token not found
POINT_NOT_FOUNDCheck-in point not found
USER_NOT_FOUNDTarget user does not exist in BuilderBase
REG_NOT_FOUNDRegistration not found
ORG_NOT_FOUND / EVENT_NOT_FOUND / SUPER_EVENT_NOT_FOUNDResource not found
TEAM_NOT_FOUND (v2.0)Team does not exist or has been deleted
TRACK_NOT_FOUND (v2.0)Track not in this super event
ASSIGNMENT_NOT_FOUND (v2.0)Judge assignment ID does not exist
BUILDER_NOT_FOUND (v2.0)Participant has no accepted super-event registration

Conflict (409)

CodeMeaning
DUPLICATE_MEMBERUser is already a member of this org
REGISTRATION_CLOSED (v2.0)Super event registration is closed
MAX_PARTICIPANTS_REACHED (v2.0)Cap hit; body includes acceptedCount + maxParticipants
NO_TRACKS (v2.0)Super event has no tracks (invite FK requirement)
(no code)Duplicate (already registered / duplicate invite / duplicate check-in)

Rate limit & server (429 / 500)

HTTPCodeMeaning
429RATE_LIMIT_EXCEEDEDSee Retry-After and X-RateLimit-* headers (Rate Limits)
500(no code)Internal error - retry with exponential backoff