155API

Error Codes

All error status codes used in the 155.io API


This page lists all error status codes used across the API.

Security Errors

StatusDescription
INVALID_SIGNATURERequest signature validation failed. Check your signing implementation.

System Errors

StatusDescription
EXTERNAL_SERVICE_TIMEOUT_ERRORRequest to external service timed out. Retry the request.

155.io API Errors

Errors returned by our endpoints.

/game/games

StatusHTTP CodeDescription
UNKNOWN_OPERATOR404No operator exists for the provided operatorId

/game/free-bets/rewards

StatusHTTP CodeDescription
VALIDATION_ERROR400Invalid request (missing required fields, invalid format)
FREEBETS_NOT_ENABLED400Freebets feature not enabled for your operator. Contact us to enable.
PLAYER_NOT_FOUND404Player with the provided clientPlayerId does not exist
REWARD_ALREADY_EXISTS409A reward with this clientRewardId already exists
UNKNOWN_ERROR500Internal server error

Operator API Errors

Errors you should return from your endpoints. All operator API responses must use HTTP 200 with the error status in the JSON body.

Always return HTTP 200, even for error responses. Our system checks the HTTP status code and treats any non-200 response as a transport-level failure, which may trigger retries or rollbacks before the response body is parsed.

/balance

StatusDescription
SESSION_EXPIRED_ERRORPlayer session has expired
PLAYER_NOT_FOUND_ERRORPlayer does not exist
SESSION_NOT_FOUND_ERRORSession does not exist
UNKNOWN_ERRORAny other error

/bet

StatusDescription
INSUFFICIENT_BALANCE_ERRORPlayer does not have enough balance for this bet
DUPLICATE_TRANSACTION_ERRORTransaction ID already exists (idempotency)
BONUS_ERRORBet does not pass bonus rules
BET_LIMIT_REACHED_ERRORPlayer has reached their betting limit
VALIDATION_ERRORMissing or invalid mandatory fields
UNKNOWN_ERRORBet could not be registered

/win

StatusDescription
DUPLICATE_TRANSACTION_ERRORTransaction ID already exists (idempotency)
VALIDATION_ERRORMissing or invalid mandatory fields
UNKNOWN_ERRORWin could not be registered

/rollback

StatusDescription
DUPLICATE_TRANSACTION_ERRORTransaction ID already exists (idempotency)
VALIDATION_ERRORMissing or invalid mandatory fields
UNKNOWN_ERRORRollback could not be processed

Any status not listed above is treated the same as UNKNOWN_ERROR.

Freebet Usage Errors

These internal errors may occur when a player attempts to use a freebet. They are handled by 155.io and the player will see an appropriate message.

CodeErrorDescription
16010FREEBET_INSUFFICIENT_AMOUNTFreebet amount is less than the minimum bet requirement
16011FREEBET_NOT_APPLICABLE_FOR_GAMEFreebet is restricted to specific games and cannot be used on this game
16012FREEBET_CURRENCY_MISMATCHFreebet currency does not match the game/bet currency
16013FREEBETS_NOT_ENABLEDFreebets are not enabled for this operator

Error Response Format

All error responses should include the status field and echo back the requestId and clientPlayerId:

{
  "status": "ERROR_CODE_HERE",
  "requestId": "original-request-id",
  "clientPlayerId": "player-id"
}

All responses must be signed with the X-Marbles-Signature header, including error responses.

On this page