Skip to content

Error Code Reference

This document is auto-generated from the ErrorCode enum in @rbx/shared-types.

Error Code Ranges

  • 0xxx: General errors (unknown, unspecified)
  • 1xxx: Validation errors (schema, bounds, types)
  • 2xxx: Business logic errors (cooldowns, state, resources)
  • 3xxx: Protocol errors (version mismatch, compatibility)
  • 4xxx: Authorization errors (permissions, sessions)
  • 5xxx: Internal errors (server issues, timeouts)

General Errors (0xxx)

Code Name Description
0 Unknown No description

Validation Errors (1xxx)

Code Name Description
1001 InvalidPayload No description
1002 PayloadTooLarge No description
1003 MissingField No description
1004 InvalidType No description
1005 OutOfBounds No description

Business Logic Errors (2xxx)

Code Name Description
2001 RateLimited No description
2002 Cooldown No description
2003 InvalidState No description
2004 NotFound No description
2005 AlreadyExists No description
2006 InsufficientResources No description
2007 FeatureDisabled No description

Protocol Errors (3xxx)

Code Name Description
3001 ProtocolMismatch No description
3002 ClientOutdated No description
3003 ServerOutdated No description

Authorization Errors (4xxx)

Code Name Description
4001 Unauthorized No description
4002 Forbidden No description
4003 SessionExpired No description

Internal Errors (5xxx)

Code Name Description
5001 InternalError No description
5002 ServiceUnavailable No description
5003 Timeout No description
5004 DataStoreFailed No description

Adding New Error Codes

  1. Add the error code to the ErrorCode enum in packages/shared-types/src/index.ts
  2. Follow the range conventions above
  3. Never reuse or change existing codes (breaking change)
  4. Regenerate this document:
node tools/generate-error-catalog.mjs > docs/reference/error-codes.md

Last updated: 2026-02-06