Seamless
JDB Platform API
Functions
Free Spin Reward
Action 72: Create Free Spin Reward Event

Action 72:Create Free Spin Reward Event

Function Description

  • Free Spin Reward Event cannot be modified after creation, including the type, times, bonusChips, chipsMultiplier, startTime and endTime
  • The minimum withdrawal must be less than or equal to the maximum withdrawal.
  • The end time must be later than the current time.
  • If the players field is provided, players will be bound upon creation.
    • To avoid long API execution times, each call is limited to 50,000 player accounts. Use Action 74 to add more.
  • If the eventId field is provided, it will be used to create the event with the specified ID following the rule: 1 to 50 characters consisting of letters, digits, or underscores (_). If not provided, the system will generate one automatically.
  • If eventId is returned, it indicates successful creation of free spin reward event
  • Whether player binding succeeds or not does not affect the creation of the free spin reward event
  • About Free Spin Reward Single Bet Amount :
    • Since the bet options of each currency houses, agents, and games are different, the system will automatically select Matched Bet Amount(the closest bet amount that does not exceed the specified value).
      For instance, the bet options for Game A are 1, 5, 15, 20, 30, while the bet options for Game B are 1, 5, 20, 25, 30.
      bet is set as 25, when the player joins one of the games, the bet amount will vary as the following:
      The Matched Bet Amount in Game A will be 20.
      The Matched Bet Amount in Game B will be 25.
      Therefore, bet must be greater than the minimum bet amount for all specified games.
    • When creating a Feature Game, the system will check whether
      Matched Bet Amount × Feature Game Multiplier does not exceed the Maximum Feature Game Bet Limit.

      (You can use the query service provided by Action 49: Query Game List to retrieve the Feature Game Multiplier and the Maximum Feature Game Bet Limit.)
      • Example:
        Game A bet options: 1, 5, 15, 20, 30
        Game B bet options: 1, 5, 20, 25, 30
        Game A feature multiplier = 50, Game B feature multiplier = 100
        Maximum Feature Game Bet limit for both Game A and Game B = 2000
        When Feature Game bet is set to 25 to create a Feature Game:
        Game A Matched Bet Amount is 20.
        Game B Matched Bet Amount is 25.
        Game A Matched Bet Amount × Feature Multiplier = 20 × 50 = 1000
        Game B Matched Bet Amount × Feature Multiplier = 25 × 100 = 2500
        Since Game B’s Matched Bet Amount × Feature Multiplier exceeds the Maximum Feature Game Bet Limit (2500 > 2000),
        neither Game A nor Game B can be created.
  • About the Bonus Chips Free Spin Reward Game
    • Both bonusChips and chipsMultiplier parameters are required. The system will calculate the Required Turnover by multiplying bonusChips and chipsMultiplier.
    • Players can use bonusChips to place bets, and each bet will accumulate turnover. If the player's accumulated turnover reaches the Required Turnover, they can withdraw the remaining bonusChips.
    • For instance,
      • bonusChips are set to 100, and the chipsMultiplier is set to 2.5, so the Required Turnover is 250. When the player accumulates a turnover of 250 and the remaining bonusChips are 30, the withdrawal amount will be 30.

Parameter


ParameterFormatMandatoryDescription
actionIntegerY72
tsLongYCurrent system time
parentString(50)YAgent ID
eventIdString(50)NEvent ID
nameString(70)YFree Spin Reward Name
startTimeStringYFree Spin Reward Evnet Start Time (Only conforming to the following format in ISO-8601)
yyyy-MM-ddTHH:mm:ss.sss+|-hh:mm
endTimeStringYFree Spin Reward Evnet End Time (Only conforming to the following format in ISO-8601)
yyyy-MM-ddTHH:mm:ss.sss+|-hh:mm
machineTypesInteger ArrayYMachine Type
See Game List (4.2) in appendix
typeStringYFree Spin Reward Type
NORMAL: Free spin for Base Game
FEATURE: Free spin for Feature Buy
BONUSCHIPS: Bonus Chips Game
minWithdrawalStringYMinimum Withdrawal Amount
Can be set to -1 to indicate no limit, i.e. no minimum withdrawal amount restriction.
maxWithdrawalStringYMaximum Withdrawal Amount
Can be set to -1 to indicate no limit, i.e. no maximum withdrawal amount restriction.
transactionIdString(36)YRequest Identifier
To ensure that even if the request did not successfully return the eventId, but the creation was successful, if the same request identifier is brought in, it will no longer create event again and return the eventId of the already created event. On the contrary, if the request identifier brought in has not yet successfully created, then create with this request identifier and return the eventId
playersString ArrayNPlayer ID List (Optional fields, maximum of 50,000 entries per request.)
mysteryTypeStringNMystery types
NONE: None (default)
BLINDBOX: Blind box In Development
autoCreatePlayerEnabledBooleanNAutomatically create player account
true: Enabled. When this feature is enabled, the players field is limited to 1 entry, and the system will automatically create an account for the player.
false: Disabled (default)

When type = NORMAL

FieldTypeRequiredDescription
betStringYFree Spin Reward Bet Amount per Spin
The system will automatically select the Matched Bet Amount (the closest value that does not exceed the specified amount).
timesStringYFree Spin Reward Times

When type = FEATURE

FieldTypeRequiredDescription
betStringYFree Spin Feature Reward Bet Amount per Spin
The system will automatically select the Matched Bet Amount (the closest value that does not exceed the specified amount).
Matched Bet Amount × Feature Game Multiplier must not exceed the Maximum Feature Game Bet Limit.
timesStringYFree Spin Reward Times

when type is BONUS

ParameterFormatMandatoryDescription
bonusChipsStringYBonus Chips
chipsMultiplierStringYChips Multiplier

Example

{
  "action": 72,
  "ts": 1711555200000,
  "parent": "testag",
  "eventId": "event_001",
  "name": "TEST EVENT NAME",
  "startTime": "2024-07-22T04:05:33.000+01:00",
  "endTime": "2024-07-22T04:05:33.000+01:00",
  "machineTypes": [
      14077,
      14085
  ],
  "bet": "2.000",
  "times": 10,
  "type": "NORMAL",
  "minWithdrawal": "10.000",
  "maxWithdrawal": "100.000",
  "transactionId": "testtransactionId00001",
  "players": [
      "player1",
      "player2"
  ],
  "mysteryType": "NONE"
}
{
  "action": 72,
  "ts": 1711555200000,
  "parent": "testag",
  "eventId": "event_001",
  "name": "TEST BONUS CHIPS EVENT NAME",
  "startTime": "2024-07-22T04:05:33.000+01:00",
  "endTime": "2024-07-22T04:05:33.000+01:00",
  "machineTypes": [
      14041,
      14087
  ],
  "bonusChips": "100.000",
  "chipsMultiplier": "2.50",
  "type": "BONUSCHIPS",
  "minWithdrawal": "10.000",
  "maxWithdrawal": "100.000",
  "transactionId": "testtransactionId00001",
  "players": [
      "player1",
      "player2"
  ],
  "mysteryType": "NONE"
}

Return Results

ParameterFormatDescription
statusString(4)Success: 0000

Error: See Error Codes in Appendix
No Data: 0000
dataJSON ObjectThe failed bind player ID returned data will be listed in the following table.
err_textString(255)Error message

Data Object

ParameterFormatDescription
eventIdString(50)Free Spin Reward Event ID
failedBindingPlayersArray of StringThe failed bind player ID list
notExistedPlayersArray of StringThe non-existent player ID list

Operation Sample

// Http Request
http://{API_Address}/apiRequest.do?dc=jb1&x=y1wayxScczy6ABfElfaVwb5CdfHxBN_JGtxyBSvpohLQakP8M2QSetJNojJBzvnrVChhq8YWWgBTdGeXFTH4vSNQQ66epf4NqYeQ-6bJ15pvHctQjQevulv7GHqOifuju_gY0H54FfVdQc9D5tKh1AZ-9KDh9dwcGSszZxU7JOOoHdYITlCO5LhvGmHxPBwZ
 
// Http Response (success)
{
    "status": "0000",
    "data": {
        "eventId": "event_001",
        "failedBindingPlayers": [
            "failed1", "failed2"
        ],
        "notExistedPlayers": [
            "not_exist1", "not_exist2",
        ]
    }
}
 
// Http Response (failed)
1. If necessary parameters are not provided or not meet requirement, for example: name, then:
{
    "status": "8000",
    "err_text": "The parameter of input error, please check your parameter is correct or not. parameter:name is required"
}