Skip to main content
Every response from the GitSlotPark API — and every response your callback service returns — uses the same result code convention. The HTTP status is always 200 OK. The actual outcome is communicated in the JSON body through a result integer and a human-readable message string. Never rely on the HTTP status to detect errors; always inspect the result field.

Response structure

A successful response and an error response share the same shape. The result field is the authoritative indicator of what happened. Success response:
{
  "result": 0,
  "message": "Success",
  "balance": 150.00
}
Error response:
{
  "result": 6,
  "message": "Insufficient funds"
}
Your callback service must also follow this convention. Always return HTTP 200 with a JSON body. Use the result field to report business errors such as insufficient funds or unknown users — never return a 4xx or 5xx status for business logic failures.

Result codes

CodeNameDescription
0SuccessThe operation completed successfully.
1General errorAn unexpected error occurred. Check the message field for details.
2Wrong input parametersOne or more request parameters are invalid or missing. Check the message field for details.
3Invalid signThe sign does not match. Verify your secret key and parameter concatenation order.
4Invalid agentThe agentID is unknown or has been disabled. Contact GitSlotPark if your agent is active.
5User not foundThe userID does not exist in your system.
6Insufficient fundsThe player does not have enough balance for the requested withdrawal.
7Invalid API tokenThe API token is missing, expired, or incorrect.
8Transaction not foundThe referenced transactionID cannot be found.
9Already rolled backThe specified transaction was already rolled back.
11Duplicate transactionA transaction with this transactionID was already processed successfully.

Troubleshooting common codes

Code 3 — Invalid sign

An Invalid Sign error means the sign value in your request does not match what the receiving server computed independently. Start with these checks:
  1. Confirm you are using the correct secret key for the agentID in the request.
  2. Verify you are concatenating parameters in the exact order documented for the endpoint — not alphabetically, not by insertion order.
  3. Ensure amount is formatted to exactly two decimal places before concatenating (12.30, not 12.3).
  4. Confirm your output is uppercase hex, 64 characters long.
Use the test vector in the signing guide to validate your implementation in isolation before debugging a live call.

Code 6 — Insufficient funds

Your callback service should return code 6 when a Withdraw request arrives but the player’s balance is too low to cover the bet amount. Do not apply a partial debit — either the full amount is available or you return this code.
Consider adding balance logging around withdrawal callbacks. When a player reports a discrepancy, a log of the balance before and after each callback makes the investigation much faster.

Code 11 — Duplicate transaction

GitSlotPark may retry a callback if your server does not respond in time or returns a non-200 status. When a retry arrives, the transactionID is identical to the original request.
Do not process a duplicate transaction a second time. Doing so will debit or credit the player’s balance twice.
When you receive a callback with a transactionID that you have already successfully processed:
  1. Look up the original transaction in your records.
  2. Return result code 0 (Success) with the player’s current balance — not the balance from the time of the original transaction.
This allows GitSlotPark to confirm the transaction was processed and move on without any double-application of funds.