Authenticate API Requests with HMAC-SHA-256 Signing
Every GitSlotPark API request requires a sign parameter. Learn how to compute it with HMAC-SHA-256 and validate your implementation.
Every request in the GitSlotPark Seamless Wallet API — whether you are calling GitSlotPark or GitSlotPark is calling you — must include a sign parameter in the JSON body. This signature lets each party verify that a request was sent by a legitimate counterpart and has not been tampered with in transit.
The sign value is the HMAC-SHA-256 digest of a concatenated string of the request’s parameters, computed using your secret key. The output is 64 uppercase hexadecimal characters.Formula:
The parameter concatenation order is fixed per endpoint. The correct order is specified in each endpoint’s reference page. If you concatenate parameters in the wrong order your signature will be rejected.
The secret key is associated with your licensee account and is provided by GitSlotPark during onboarding. Your agentID is your Partner ID, also assigned by GitSlotPark.
Follow these rules exactly to produce a valid signature:
Concatenate directly — join parameter values one after another with no separator characters between them.
Use UTF-8 encoding for both the key and the message.
Format amounts to exactly two decimal places — use 12.30, not 12.3 or 12.300. A malformed amount will produce the wrong signature and will also fail server-side validation.
Output in uppercase — the resulting hex string must be all uppercase.
The computed digest is always 64 characters long.
Never send your secret key in a request. It is used only locally to compute the sign value. Store it in a secrets manager or environment variable and keep it out of source control.
Run this test vector in your development environment before making any live API calls. If your output matches exactly, your signing implementation is correct.
GitSlotPark signs every callback request it sends to your service using the same HMAC-SHA-256 algorithm. You should verify the sign parameter on all incoming callback requests to confirm they originate from GitSlotPark. Reject any request where the signature does not match — respond with HTTP 200 and result code 3.