Skip to main content
curl --request POST \
  --url 'https://partner-platform-url/transaction/reward' \
  --header 'content-type: application/json' \
  --header 'x-api-key: <x-api-key>' \
  --header 'x-signature: <x-signature>' \
  --header 'x-timestamp: <x-timestamp>' \
  --data '{
    "transactionId": "fef840b7-bdcf-4b7b-aa70-67da78d8d0c1",
    "refTransactionId": "ef461780-99e4-4205-8d3c-1d873e6db75b",
    "sessionId": "f1dfc865-584c-4cba-a175-06172b2a41141731504451691"
    "rewardType": "Free Spin",
    "playerId": "18865671",
    "gameId": "G1720767064793",
    "rewardedAmount": 25700000
}'
{
  "status": "RS_OK",
  "transactionId": "fef840b7-bdcf-4b7b-aa70-67da78d8d0c1",
  "balance": 525700000,
}
  POST  /transaction/reward

Functionality

The endpoint called when the player rewarded.
  • The Operator is expected to increase player’s balance by reward amount and return a new balance.
  • bonus reward has refTransactionId which is reference identifier of bonus. Before any altering of player’s balance, Operator has to check that reward wasn’t processed before.
  • jackpot reward has refTransactionId which is reference identifier of jackpot.
Finally, it returns the updated balance, reflecting the result of the reward.

Headers

x-api-key
string
required
A unique identifier associated with operator calling API.
x-signature
string
required
A SHA256 HMAC signature generated using the request body and timestamp. Format: HMAC_SHA256(JSON.stringify(data) + ’|’ + timestamp), signed using the provided secret key.
x-timestamp
string
required
An Unix timestamp (milliseconds) when the request was sent. Ensure the same value is used in signature generation.
content-type
string
required
Must be set to application/json

Request Body

transactionId
string
required
The unique transaction identifier. An action with same transactionId shouldn’t be processed more than once.
refTransactionId
string
required
A reference identifier for the reward transaction.Bonus reward → bonus ID which given to operator at bonus configure api.Jackpot reward → jackpot ID which given to operator at jackpot configure api.
sessionId
string
required
An unique identifier for the session.
rewardType
string
required
Type of reward granted to the player.Allowed Types: jackpot, bonus
playerId
string
required
An unique identifier for the player.
gameId
string
required
An unique identifier for the game.
rewardedAmount
number
required
An amount rewarded to the player.
To maintain precision and avoid floating-point errors, the balance field is processed as an integer value by multiplying the actual amount by 100000.For example, a balance of 12.34567 will be represented as 1234567 in the API.

Response

status
string
required
Code indicates status of the request weather it is succeed or failed. We have listed error codes here
transactionId
string
required
An ID of an action that is generated for each of our calls to the Operator, used to sync OppiGame and Operator sides for debugging purposes. The Operator has to respond with the same transactionId as the one received in request.
balance
number
required
The updated balance of the player.
To maintain precision and avoid floating-point errors, the balance field is processed as an integer value by multiplying the actual amount by 100000.For example, a balance of 12.34567 will be represented as 1234567 in the API.
curl --request POST \
  --url 'https://partner-platform-url/transaction/reward' \
  --header 'content-type: application/json' \
  --header 'x-api-key: <x-api-key>' \
  --header 'x-signature: <x-signature>' \
  --header 'x-timestamp: <x-timestamp>' \
  --data '{
    "transactionId": "fef840b7-bdcf-4b7b-aa70-67da78d8d0c1",
    "refTransactionId": "ef461780-99e4-4205-8d3c-1d873e6db75b",
    "sessionId": "f1dfc865-584c-4cba-a175-06172b2a41141731504451691"
    "rewardType": "Free Spin",
    "playerId": "18865671",
    "gameId": "G1720767064793",
    "rewardedAmount": 25700000
}'
{
  "status": "RS_OK",
  "transactionId": "fef840b7-bdcf-4b7b-aa70-67da78d8d0c1",
  "balance": 525700000,
}