Pragmatic Integration Api Specification Old
Pragmatic Integration Api Specification Old
API specification
9-Dec-14 Iryna 3.1 API will support player id within Operator system
system for Option 2 (A
(Authenticate
uthenticate
method + player auto-registration) and within Pragmatic Play system for
Option 1 (StartGame method, compatible with the v2).
29-Jan-15 Iryna 3.2 If player is not authenticated, 404 error will not appear anymore.
13-Aug-15 Iryna Sh. 3.11 UserId type changed to String instead of Long (http API only).
16-Sep-15 Iryna Sh. 3.12 Free rounds bonus API -> Added GetPlayersFRB method (available only for http
service)
21-Sep-15 Iryna Sh. 3.13 Added aspectR
aspectRatio
atio and demoG
demoGameAvaila
ameAvailable
ble fields to Integratio
Integration
n API ->
GetCasinoGames method.
21-Sep-15 Iryna Sh. 3.14 Added new
new History API (HTTP service).
29-Sep-15 Iryna Sh. 3.15 Updated the list of error codes for Free Rounds Bonus Http service.
Expiration date type has been replaced by Long (timestamp in sec.)
30-Sep-15 Iryna Sh. 3.15 FR Bonus Http service -> Expiration date is mandatory, 30 days max.
Added originalSessi
originalSessionID
onID (SO
(SOAP),
AP), originalRo
originalRoundID
undID (http service) tto
o Bet, Result and
End round methods.
13-Oct-15 Iryna Sh. 3.16 Added Integration
Integration ht
http
tp service -->
> Downlo
Download
ad statist
statistics
ics metho
method.
d.
26-Jan-16 Iryna Sh. 3.21 Optional “amount”, “gameID”, “roundId”, “timestamp”, “roundDetails”,
“bonusCode”, “originalRoundID” fields have been added to Wallet Http
Service -> Refund.
17-Mar-16 Iryna Sh. 3.30 Simple Integration http API -> Added methods for single wallet: CreatePlayer,
GetBalance, Transfer, StartGame and TerminateSession method for kicking
player out of the games.
games.
22-Apr-16 Iryna Sh. 3.31 Wallet Simple http service -> Withdraw method has been added for
downloadable client.
2-Jun-16 Iryna Sh. 3.32 Error codes: 50 error code has been added for regulated markets.
Add request
request parameters
parameters stat
status
us field.
Remove obsolete diagrams.
12-Sep-16 Iryna Sh. 3.41 Added Data
Data Feeds -> Transact
Transactions.
ions.
21-Mar-17 Iryna Sh. 3.50 Status “Closed” in History http service -> Round Status was renamed to
“Cancelled”.
22-Mar-17 Alex N. 3.51 Update Free Rounds Bonus API Error codes
27-Apr-17 Iryna Sh. 3.53 GetBalancePerGame method has been added to Seamless Wallet API.
The “currency” field was removed from GetRoundStatus response.
28-Apr-17 Iryna Sh. 3.54 CloseSession method has been added to Integration API.
19-Jul-17 Iryna Sh. 3.60 Reality check chapter has been divided into two parts – server side and client
side implementations.
9-Aug-17 Iryna Sh. 3.61+zh Added new
new Balance T
Transfer
ransfer API -> GetTra
GetTransferStat
nsferStatus
us method.
method.
30-Jan-18 Iryna Sh. 3.72 Date-time format was added to the Tournament API specs and examples.
27-Feb-18 Iryna Sh. 3.73 New betLimit parameter has been added to Seamless Wallet API ->
Authenticate
Authenticate respo
response,
nse, game Id is added
added to Auth
Authenticate
enticate request.
request.
5-Mar-18 Iryna sh. 3.74 Error code 310 has been added to Seamless Wallet API.
26-Apr-18 Alex Ch. 3.75 Data Feeds -> Daily Totals. Added "totalFreeSpinRounds" response parameter
04-Oct-18 Sergiy Bul. 3.80 Seamless Wallet API - Added Language parameter to bet method.
Renamed Mystery Race >>> Prize Drop
11-Nov-18 Alex Ch. 3.81 Added new
new section: “Responsible gaming – Sweden”
24-Dec-18 Iryna Sh. 3.82 Custom messages: new “open” link type was added for opening a new/blank
tab in the browser, with the link specified for the action.
23-Jan-19 Iryna Sh. 3.83 Optional roundId and gameId parameters have been added to Seamless Wallet
API -> bonusWin
bonusWin re
request,
quest, for
for compliance
compliance with tthe
he Spanish regulation.
regulation.
31-Jan-19 Sergiy B 3.84 Adding section
section “XVI. Bingo
Bingo Integration
Integration API”
be provided to Casino Operator together with integration package or resent when new games are available.
Using this Casino Game API Casino Operator is able to integrate both types of games: web version for desktop devices and
mobile version.
Platform provides the set of games built in different technologies – Flash and HTML5.
Information about what games have mobile version and available technologies for specific game is added to Game Library.
Casino Operator generates one-time secure token and sends it with the URL for opening
Pragmatic Play game.
Bet Checks if the player has enough funds and subtracts money from player’s balance. Returns Required
the value of updated balance.
Refund Refunds player’s balance. This method will be used for cancellation of a bet in the case the Required
game cannot be finished.
Result Adds winning amount to player’s balance. Returns the value of updated balance. Required
BonusWin Notifies the Casino Operator that free rounds are over and player’s balance should be Optional2
increased with bonus amount.
JackpotWin Using this method a Pragmatic Play system will notify Casino Operator about Jackpot Optional3
winning.
EndRound Notifies the Casino Operator that the game round is over, for transactions finalization Optional
purpose.
Withdraw4 Notifies the Casino Operator that a player clicked the Withdraw button in the lobby of Optional
downloadable client.
1
Authenticate2 for downloadable client
2
Is required in case of Free Round Bonuses API is implemented
implemented
3 Is required in case of Jackpot functional
functionality
ity is implemented
i mplemented
4
for downloadable client only
CreatePlayer This method allows registering a new player on Pragmatic Play side. Required
Transfer This method transfers funds in to player’s balance (i.e. deposit) and out of the player’s Required
balance (i.e. withdrawal) within Pragmatic Play system
GetBalance Using this method Casino Operator can get the current balance of the player in the Required
Pragmatic Play system
StartGame Casino Operator should call this method before opening the game in player’s browser. Required
Secure one-time token is generated on the Pragmatic Play side. As the result of this
method Casino Operator will get an URL to the requested game.
TerminateSession Using this method Casino Operator can terminate the current player session and kick Required
him out all games
Integration API offers generic methods that allow Operators to create a game lobby, get statistics and close player sessions
forcefully.
Method Description Status
GetCasinoGames Using this method Casino Operator can retrieve the list of games available for Optional
integration.
May be used for automatic building games lobby at casino website.
CloseSession This method terminates active game sessions of the player. Optional
Play Sessions This data feed returns play sessions that was played during specified period. Optional
Failed Transactions
Transactio ns Casino Operator can get the list of Refund and Result transactions that was not Optional
processed even after multiple attempts made by the Pragmatic Play server.
Active Jackpots Provides information about open jackpots per casino brand. Optional
Jackpot Winnings Provides a list of last winnings of the specified jackpot. Optional
5
for downloadable client only
URL of the HTTP service will be provided by Pragmatic Play for the production and test environments and looks llike:
ike:
https://{API service domain}/Integrati
domain}/IntegrationService/v3/http/C
onService/v3/http/CasinoGameAPI
asinoGameAPI
2.1 GetCasinoGames
Request path: POST /getCasinoGames/
Using this method Casino Operator will get the list of casino games available for the integration.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
Response parameters
Name Type Description
gameList CasinoGame The list of CasinoGame objects for transferring casino games details (see data type
description below)
error String(10) 0 - if the request was successfully processed or error code in other case.
Type: CasinoGame
Name Type Description
gameID String(20) Symbolic unique identifier of the game provided by Pragmatic Play.
Example: vs7monkeys, vs50amt, rla, wra, bjb
technologyID String(10) Technologies in which the game is available, comma separated. Possible values are:
H5 - HTML5 games
F – Flash (only for desktop)
Example: “H5”, “F,H5”
platform String(30) Platform for which the game can be opened. Possible values, comma separated:
MOBILE – if game should be opened on mobile devices
WEB – if game will be opened on desktop devices
DOWNLOAD – if game can be opened in downloaded gaming client
demoGameAvailable Boolean If true, a demo version of the game is available.
aspectRatio String(10) Describes the proportional relationship between the width and the height of the
game.
secureLogin=username&hash=da77af8d0ba97eaa033682466b87f569
Example of response:
2.2 DownloadStatistics
Request path: POST /downloadStatistics/
This method can be used by Operator in case they need to gather events related to the downloaded client. All events sent by
Operator are stored in the database and then aggregated information about number of downloads and client installations is
available in the back office application.
Request parameters
Name Description
secureLogin User name for authentication in the Casino Game API service
clientOS Type of operational system of the player’s device. Available values are:
A - Android
I - iOS
M - Mac
U - Unix
W - Windows
O - Others
eventType Type of the event. Available values are:
D – Download started
S – Installation started
C – Installation completed.
To get reliable download statistics Operator should send only unique download events. This may be achieved by
using cookies on Operator’s
O perator’s site.
For example, when player downloads the client for the first time, a cookie can be saved on the player’s computer.
Every time player clicks “Download” button the site should check the “download cookie” and send download event
only if the cookie is not found.
secureLogin=username&playerId=421&refererUrl=domain.com&ipAddress=1.1.1.1&clientOS=W&eventType=D&ha
sh=5fd31717ba4da9e78ac19730212925c2
2.3 CloseSession
Request path: POST /closeSession/
This method terminates active game sessions of the player. Operator has the option to remove player’s history, so that the
incomplete game rounds cannot be finished by another player (usually this is relevant for terminals). To close only game
session for specific game Operator may send game id parameter in the request.
Request parameters
Name Description
secureLogin User name for authentication in the Casino Game API service
externalPlayerId
externalPla yerId Id of the player within the Operator system.
gameId Id of the game. This is optional parameter, which has to be sent by Operator if only the session for
specific game should be closed.
clearHistory Specifies whether to clear the history of the round or not. Optional parameter, default value is 0.
May have the following values:
1 – history should be removed, so that the last game round cannot be completed anymore
0 – last game round can be completed
hash Hash code of the request.
secureLogin=username&externalPlayerId=421&gameId=vs7monkeys&clearHistory=1&hash=5fd31717ba4da9e78ac
19730212925c2
2.4 CancelRound
Request path: POST /cancelRound/
CancelRound method initiates a refund request, which the Pragmatic system will send to the Operator’s remote wallet. After
successful refund call the game round will be marked as Cancelled in the Pragmatic system.
This method Operator can use any time they want to close player’s round forcefully, due to a retention policy on the
Operator’s system or according to requirements for regulated markets.
Request parameters
Name Description
secureLogin User name for authentication in the Casino Game API service
externalPlayerId
externalPla yerId Id of the player within the Operator system.
secureLogin=username&externalPlayerId=421&roundId=123456&hash=5fd31717ba4da9e78ac19730212925c2
equals symbol (=). An example of this would be (please see request examples for each call below):
parameter1=value1¶meter2=value2
All responses should be in JSON format (please see response examples for each call below).
URL of the Seamless Wallet API should be provided by Casino Operator for the production and test environments.
As a result of function call Operator gets an URL for game opening. The link will look like:
https://{game_server_domain}/gs2c/playGame.do?key=token%3D{token}%26symbol%3D{symbol}%26technolo
gy%3D{technology}%26platform%3D{platform}%26language%3D{language}%26cashierUrl%3DcashierUrl
%26lobbyURL%3DlobbyURL&stylename={secureLogin}
where all values in {…} are equal to GameLib.gameUrl function call parameters.
Also game opening link can be composed explicitly, in any other convenient for Operator way.
https://{game_server_domain}/playGame.do?key=token%3Drgk1r4d5b6%26symbol%3Dvs20bl%26technology%3DH5
%26platform%3D%26language%3Den%26cashierUrl%3Dhttps%3A%2F%2Fround-lake.dustinice.workers.dev%3A443%2Fhttp%2Fvs20bl%26lobbyUrl%3D&stylename=username
userId String(100) Unique identifier of the user within Casino Operator system.
Parameter value is case-sensitive.
Example: joe1001, 2644987, playerABC*, playerAbc*
playerAbc*
* playerABC and playerAbc – are two different player accounts within Pragmatic
Play system
currency String(3) Player's ISO 4217 currency code. Example: EUR, USD
country String(2) Country of the player. 2-letter Country code, ISO 3166-1 alpha-2.
Examples: GB, GI, DK, ES, IT, PT
Possible values:
“MOBILE” – mobile device
“WEB” – desktop device
“DOWNLOAD” – downloadable client
3.4 Authenticate
Request path: POST /authenticate.html
When the game is opening Pragmatic Play receives with URL security token generated by Casino Operator. Using this token
Pragmatic Play will ask Casino Operator for player authentication and get the player’s balance. Token can be used only once.
Request parameters
Response parameters
Name Description Status
userId Identifier of the user within the Casino Operator ’s system. Required
The currency of the player is set up when the player opens a game for the first time, and the player account is
created in the Pragmatic Play database, with the userId and currency received in the response on the Authenticat
Authentication
ion
request.
providerId=pragmaticplay&hash=e1467eb30743fb0a180ed141a26c58f7&token=5v93mto7jr
"betLimits":
{
"defaultBet": 0.10,
"minBet": 0.02,
"maxBet": 10.00,
"minTotalBet": 0.50,
"maxTotalBet": 250.00,
}
"error": 0,
"description": "Success"
}
3.5 Authenticate2
Request path: POST /authenticate2.html
Authenticate2 method should be implemented only in the case when Operator has requested the downloadable client.
When a player logs into the client Pragmatic
Pragmatic Play receives the username and password provided by the player. Using these
credentials Pragmatic Play will ask Casino Operator’s system for the player authentication and get the player’s balance.
Request parameters
Name Description Status
Response parameters
Name Description Status
userId Identifier of the user within the Casino Operator ’s system. Required
The currency of the player is set up when the player opens a game for the first time, and the player account is
created in the Pragmatic Play database, with the userId and currency received in the response on the Authenticatio
Authentication
n
request.
providerId=pragmaticplay&username=testuser&password=testpassword&hash=ccc7e0436f56b9d04c0a5fed92c05
be9
3.6 Balance
Request path: POST /balance.html
Using this method a Pragmat
Pragmatic
ic Play system will know a current balance of player and will show it in the game.
Request parameters
Name Description Status
Response parameters
Name Description Status
providerId=pragmaticplay&userId=421&hash=b4672931ee1d78e4022faaadf58e37db
3.7 Bet
Request path: POST /bet.html
Using this method Pragmatic Play system will check the player balance on Casino Operator side to ensure they still have the
funds to cover the bet. Amount of the bet must be subtracted from player balance in Casino Operator system.
Request parameters
Name Description Status
userId Identifier of the user within the Casino Operator’s system. Required
timestamp Date and time when the transaction is processed on the Pragmatic Play side Required
(Unix epoch time in milliseconds, for example : 1470926696715)
roundDetails Additional information about the current game round. Required
roundDetails=spin&reference=585c1306f89c56f5ecfc2f5d&gameId=vs50aladdin&amount=100.0&providerId=pra
gmaticplay&userId=421&roundId=5103188801&hash=4a5d375ac1311b04fba2ea66d067b8e5×tamp=1482429190
374
3.8 Result
Request path: POST /result.html
Using this method the Pragmatic Play system will send to Casino Operator the winning result of a bet. The Casino Operator
will change the balance of the player in accordance with this request and return the updated balance.
Result request may contain a prize that the player is awarded with during the game round, if there is an active promotional
campaigns
team basedlike
on Prize Drop. Parameters
Operator’s request. related to the Prize Drop prizes are optional and should be configured by PragmaticPlay
Important: The call is idempotent, i.e. sending result again with the same reference number creates only one
transaction.
Request parameters
Name Description Status
promoWinAmount Prize amount that the player is awarded with during a promotional campaign. Optional
The field is optional and will appear only if there is a winning in a campaign. Please note, that
promoWinAmount, promoWinReference, promoCampaignID and promoCampaignType
parameters should appear together.
promoWinReference Unique reference of this transaction. Optional
The field is optional and will appear only if there is a winning in a campaign. Please note, that
promoWinAmount, promoWinReference, promoCampaignID and promoCampaignType
parameters should appear together.
promoCampaignID Id of the promotional campaign. Optional
The field is optional and will appear only if there is a winning in a campaign. Please note, that
promoWinAmount, promoWinReference, promoCampaignID and promoCampaignType
parameters should appear together.
promoCampaignType Type of the promotional campaign. Available values are: Optional
R – Prize Drop (Cash drop promotion)
The field is optional and will appear only if there is a winning in a campaign. Please note, that
promoWinAmount, promoWinReference, promoCampaignID and promoCampaignType
parameters should appear together.
Response parameters
Name Description Status
roundDetails=spin&reference=585c156df89c56f5ecfd99fb&gameId=vs50aladdin&amount=10.0&providerId=prag
maticplay&userId=421&roundId=5103268693&platform=DOWNLOAD&hash=533c609c6a74b533efb870b806f00732&tim
estamp=1482429805138
3.9 BonusWin
Request path: POST /bonusWin.html
Using this method a Pragmatic Play system will send to Casino Operator winning result of all rounds played on Free Spin
Bonus. Casino Operator will change a player balance in appliance with this request and will return an updated balance.
Important: The call is idempotent, i.e. sending result again with the same reference number creates only one
transaction.
Request parameters
Name Description Status
timestamp Date and time when the transaction is processed on the PragmatiPragmaticc Play side Required
(Unix epoch time in milliseconds, for example : 1470926696715)
bonusCode Id of the bonus in Casino Operator system. Optional*
(*is mandatory in case of FRB API is implemented)
The field is optional and is not sent to the Casino Operator by default. In case Casino Operator needs
this parameter to be sent with request they should ask the Pragmatic Play ’s Technical Support for
additional configuration.
roundId Id of the last played round in Free Round Bonus Optional
gameId Id of the game for the last played round within Free Round Bonus Optional
Token Token of the player from Authenticate response. Optional
The field is optional and is not sent to the Casino Operator by default. In case Casino Operator needs
this parameter to be sent with request they should ask the Pragmatic Play ’s Technical Support for
additional configuration.
Response parameters
Name Description Status
reference=585d0257f89c56f5ed6b2e37&bonusCode=test_pp_frb1&amount=1.0&providerId=pragmaticplay&userI
d=421&hash=242d4d029c20e6e4692a4b88398f4fdc×tamp=1482490455354
3.10 JackpotWin
Request path: POST /jackpotWin.html
Using this method a Pragmatic Play system will notify Casino Operator about Jackpot winning. Notification is asynchronous
and may come to the operator with a short delay after game round is over. Operator should handle the transaction in their
system and send the jackpot win transaction id back to the Pragmatic Play.
Important: The call is idempotent, i.e. sending result again with the same reference number creates only one
transaction.
Request parameters
Name Description Status
Response parameters
Name Description Status
reference=585d0b2af89c56f5ed6f0d1f&gameId=vs30catz_jp&amount=55.0&jackpotId=568&providerId=pragmati
cplay&userId=421&roundId=5109164607&hash=8ef28798d5b3e523528bdb61ada939a7×tamp=1482492714431
"cash": 99815.04,
"bonus": 99.99,
"error": 0,
"description":"Success"
}
3.11 EndRound
Request path: POST /endRound.html
Every time a game round is over, the Pragmatic Play system will call EndRound method, so that Operator can finalize the
game round transactions on their side in real time.
If Operator does not need to finalize transactions in real time it is strongly recommended to disable EndRound
functionality on the Pragmatic Play side. Instead, Data Feed API can be used for transaction finalization, in order to
decrease the number of requests to the Operator system and keep traffic between two systems as light as possible.
Important: EndRound request may be sent more than once. If the game round is already finalized, Operator should
ignore the EndRound request and return the success response.
Request parameters
Name Description Status
userId Identifier of the user within the Casino Operator’s system. Required
gameId Id of the game. Required
roundId Id of the round. Required
providerId Game Pragmatic Play id. Required
platform The platform type (channel) on which the game is played. Optional
Possible values:
“MOBILE” – mobile device
“WEB” – desktop device
“DOWNLOAD” – downloadable client
The field is optional and is not sent to the Casino Operator by default. In case Casino Operator needs
this parameter to be sent with request they should ask the Pragmatic Play ’s Technical Support for
additional configuration.
Response parameters
Name Description Status
gameId=vs50hercules&providerId=pragmaticplay&userId=421&roundId=5103579948&platform=DOWNLOAD&hash=0
755b1f739655f4d394b20575a7570df
3.12 Refund
Request path: POST /refund.html
Pragmatic Play system may use this method for rollback a bet on the Casino Operator side, in order to add money back that
was taken during the bet.
Important: The call is idempotent, i.e. sending refund for existing bet again only creates one transaction.
Important: If bet is not found then nothing should happen on the Casino Operator side and success (0) or specific
error code for this situation should be returned.
Request parameters
Name Description Status
The field is optional and is not sent to the Casino Operator by default. In case Casino
Operator needs this parameter to be sent with request they should ask the Pragmatic Play ’s
Technical Support for additional configuration.
The field is optional and is not sent to the Casino Operator by default. In case Casino
Operator needs this parameter to be sent with request they should ask the Pragmatic Play ’s
Technical Support for additional configuration.
timestamp Date and time when the transaction is processed on the Pragmatic Play Optional
side
(Unix epoch time in milliseconds, for example : 1470926696715)
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
The field is optional and is not sent to the Casino Operator by default. In case Casino Operator
needs this parameter to be sent with request they should ask the Pragmatic Play ’s Technical
Support for additional configuration.
The field is optional and is not sent to the Casino Operator by default. In case Casino Operator
needs this parameter to be sent with request they should ask the Pragmatic Play ’s Technical
Support for additional configuration.
token Token of the player from Authenticate response. Optional
The field is optional and is not sent to the Casino Operator by default. In case Casino
Operator needs this parameter to be sent with request they should ask the Pragmatic Play ’s
Technical Support for additional configuration.
Response parameters
Name Description Status
reference=585c2692f89c56f5ed083692&providerId=pragmaticplay&userId=421&platform=DOWNLOAD&hash=0078a
afb64b316a05c91124e4411541a
3.13 Withdraw
Request path: POST /notify/withdraw.html
Withdraw method is optional and should be implemented only in the case when Operator has requested the downloadable
client requiring notifications that player wants to withdraw their money.
When a player finishes playing the games he will click the Withdraw button in the lobby of downloadable client. Pragmatic
Play will send a notification to the Operator’s system , which will be required to handle the notification, subtract money and
return updated player’s
pl ayer’s balance.
Request parameters
Name Description Status
Response parameters
Name Description
userId=421&providerId=pragmaticplay&hash=b4672931ee1d78e4022faaadf58e37db
3.14 GetBalancePerGame
Request path: POST /getBalancePerGame.html
The method allows game Pragmatic Play to get player’s balance available for certain games. This method is applicable to
operators that needs different amount of money to be available in the game client depending on the game type and the
policy within Casino Operator system.
Request parameters
Name Description Status
userId Identifier of the user within the Casino Operator’s system. Required
gameIdList The list of games for which player’s balance should be returned. It is a string contains game Required
id separated by comma.
co mma.
Possible values:
“MOBILE” – mobile device
“WEB” – desktop device
“DOWNLOAD” – downloadable client
The field is optional and is not sent to the Casino Operator by default. In case Casino Operator needs
this parameter to be sent with request they should ask the Pragmatic Play ’s Technical Support for
additional configuration.
Response parameters
Name Description Status
gamesBalances The list of player’s balances per game. Contains data structures with the following fields: Required
gameID – id of the game
cash – Real balance of the player
bonus – Bonus balance of the player
providerId=....&userId=...&gameIdList=vs20cd,vs20bl,vs7monkeys
3.15 PromoWin
Request path: POST /PromoWin.html
Using this method the Pragmatic Play system will notify Casino Operator about winning that the player is awarded as a result
of a campaign that is finished. Notification is asynchronous and may come to the operator with a short delay after the
campaign is over. Operator should handle the transaction in their system and send promo win transaction id back to the
Pragmatic Play.
Important: The call is idempotent, i.e. sending result again with the same reference number creates only one
transaction.
Request parameters
Name Description Status
timestamp Date and time when the transaction is processed on the Pragmatic Play side Required
(Unix epoch time in milliseconds, for example : 1470926696715)
userId Id of the player within the operator’s system. Required
reference Unique reference of the transaction within the Pragmatic Play system. Required
Response parameters
Name Description Status
reference=some_reference&campaignId=123456&amount=200.0&providerId=PragmaticPlay&campaignType=T
&userId=some_userId×tamp=1547473412242¤cy=USD&hash=62918d1ba53bee8225c0f2affcf20603
(send retry)
0 Success. No No
1 Insufficient balance. The error should be returned in the response on the No Yes
Bet request.
2 Player not found or is logged out. Should be returned in the response on Yes Yes
any request sent by Pragmatic Play if the player can’t be found or is logged
out at Casino Operator’s side.
4 Player authentication failed due to invalid, not found or expired token. Yes Yes
5 Invalid hash code. Should be returned in the response on any request sent Yes Yes
by Pragmatic Play if the hash code validation is failed.
6 Player is frozen. Casino Operator will return this error in the response of Yes Yes
any request if player account if banned
b anned or frozen.
7 Bad parameters in the request, please check post parameters. Yes Yes
8 Game is not found or disabled. This error should be returned on Bet Yes Yes
request if the game cannot be played by some reason. Bet result request
with winning amount should be processed as intended, even if the game is
disabled.
50 Bet limit has been reached. The code is relevant for regulated markets. No Yes
100 Internal server error. Casino Operator will return this error code if their Yes Yes
system has internal problem and cannot process the request at the
moment and Operator logic requires a retry of the request. Request will
follow Reconciliation process
120 Internal server error. Casino Operator will return this error code if their No No
system has internal problem and cannot process the request and Operator
logic does not require a retry of the request. Request will NOT follow
Reconciliation process
310 Player’s bet is out of his bet limits. Should be returned if player’s limits have Yes No
been changed, and the bet is out of new n ew limit levels. Game client will show
a proper error message, and ask player to reopen the game. After game
reopening new bet limits will be applied.
The error is relevant for operators that send player’s bet limits in response
on Authenticate request.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
URL of the HTTP service will be provided by Pragmatic Play for the production and test environments and looks like:
externalPlayerId String(100) Unique identifier of the player within the Casino Operator system.
Parameter value is case-sensitive.
c ase-sensitive.
Example: joe1001, 2644987, playerABC*, playerAbc*
* playerABC and playerAbc – are two different player accounts within
Pragmatic Play system
playerId String(100) Unique identifier of the player within the Pragmatic Play system. May be used
for troubleshooting.
language String(2) Language code in ISO 639-1 standard (e.g. en, fr, it).
externalTransactionId String(100) Unique identifier of the transaction within Casino Operator system.
transactionId String(100) Unique identifier of the transaction within Pragmatic Play system.
Example: 5623489, CHR789452, c0304c72-514f-47a4-8ae1-e
c0304c72-514f-47a4-8ae1-eb755224391b
b755224391b
amount Decimal (10, 2) Amount that is transferred in or out of the player’s balance. Can have positive
(deposit) or negative (withdrawal) values.
gameId String(20) Symbolic unique identifier of the game within the Pragmatic Play system.
Example: vs25queenofgold, vs50aladdin, cs5triple8gold, bjma, rla, vpa
URL String(250) URL of a certain resource on the Casino Operator or Pragmatic Play website.
LobbyUrl, CashierURL – are the links to Casino Operator’s resources that will
be opened when player clicks “Fund” or “Home” button in the game.
GameURL – is the link for opening a game on Pragmatic Play’s game server.
error Integer 0 - if the request was processed successfully or error code in other case.
4.4 CreatePlayer
Request path: POST /player/account/create/
Using this method Casino Operator will create player’s account within the Pragmatic Play system. This method should be called
before player is sent to the Pragmatic Play ’s games.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
externalPlayerId
externalPlay erId Id of the player within the Operator system. Required
currency Currency of the player. Required
hash Hash code of the request. Required
Response parameters
Name Description
secureLogin=username&externalPlayerId=test_player¤cy=USD&hash=620a4016ae32ea0efbebfe1b3544571
c
4.5 Transfer
Request path: POST /balance/transfer/
This method transfers funds in to player’s balance (i.e. deposit) and out of the player’s balance (i.e. withdrawal) within
Pragmatic Play system. Positive amount of money indicates fund in and negative amount means fund out transaction.
Important: The call is idempotent, i.e. sending it again only creates one transaction.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
externalPlayerId
externalPlay erId Id of the player within the Casino Operator system. Required
externalTransactionId
externalTransacti onId Id of the transaction within Casino Operator system. Required
amount Amount to be added to player’s balance (posi tive value) or to be subtracted Required
from player’s balance (negative value), in player’s currency.
hash Hash code of the request. Required
Response parameters
Name Description
transactionId
transaction Id Id of the transfer transaction within the Pragmatic Play system.
balance Player’s balance after successful transaction.
Content-Type:
Cache-Control: application/x-www-form-urlencoded
no-cache
secureLogin=username&externalPlayerId=test_player&externalTransactionId=EXT123456789&hash=380720e97
4ae2b775ce933fb73eb8fcf&amount=999.99
4.6 GetTransferStatus
Request path: POST /balance/transfer/status/
This method returns the status of a particular transaction that transferred the money in or out th e player’s balance on the
Pragmatic Play side.
Important: This method will return player’s balance after successful transaction for all transactions that was created
not earlier than August 3, 2017 . For older transactions player’s balance in the response will be null. Description field
of the response will contain the following text: "Transaction is older than 3.08.2017".
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
externalTransactionId
externalTransacti onId Id of the transaction within Casino Operator system. Required
hash Hash code of the request. Required
Response parameters
Name Description
transactionId
transaction Id Id of the transfer transaction within the Pragmatic Play system.
status Status of the transaction:
o ‘Success’ – The transaction was successfully processed
o ‘Not found’ – The transaction was not found (was not processed)
amount Amount added to player’s balance (positive value) or subtracted from player’s balance (negative
value), in player’s currency.
balance Player’s balance after successful transaction.
Note: The field will contain current player’s balance in case the transaction was not processed.
secureLogin=username&externalTransactionId=EXT123456789&hash=380720e974ae2b775ce933fb73eb8fcf
4.7 GetBalance
Request path: POST /balance/current/
Using this method Operator can get the current balance of the player in the Pragmatic Play system.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
externalPlayerId
externalPlay erId Id of the player within the Casino Operator system. Required
hash Hash code of the request. Required
Response parameters
Name Description
externalPlayerId=test_player&secureLogin=username&hash=405281156fc4cace4d2385a8ead83290
4.8 StartGame
Request path: POST /game/start/
Using this method Operator can receive a valid URL to requested game. A specific ticket will be generated for player defined
in the request for a particular game. This ticket will be verified on the Pragmatic Play side when player opens a game.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
externalPlayerId
externalPlay erId Id of the player within the Operator system. Required
gameId Id of the game within the Pragmatic Play system. Required
language Language on which the game should be opened. Required
platform Platform for which the game should be opened Optional
cashierURL Link for opening the cashier on Casino Operator site when a player has no Optional
funds
lobbyURL Link for returning to Lobby page on Casino Operator site. This link is used for Optional
Back to Lobby (Home) button in mobile version of games
hash Hash code of the request. Required
Response parameters
Name Description
gameURL Link to the game to be open on the Pragmatic Play side. This link will contain special
parameters which should remain as is.
secureLogin=username&externalPlayerId=test_player&gameId=vs50aladdin&language=en&platform=WEB&cashi
erURL=https%3A%2F%2Fround-lake.dustinice.workers.dev%3A443%2Fhttp%2Fdomain.com%2F&lobbyURL=https%3A%2F%2Fround-lake.dustinice.workers.dev%3A443%2Fhttp%2Fdomain.com%2F&hash=438fea0a68a0e9ab49df756cc
20eda8f
4.9 TerminateSession
Request path: POST /game/session/terminate/
Using this method Operator can terminate the current player session and kick him out all games.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
externalPlayerId
externalPlay erId Id of the player within the Casino Operator system. Required
hash Hash code of the request. Required
Response parameters
Name Description
secureLogin=username&externalPlayerId=test_player&hash=405281156fc4cace4d2385a8ead83290
URL of the FRB HTTP service will be provided by Pragmatic Play for the production and test environments and looks like:
Free Rounds Bonus HTTP service is securely protected, hence please be sure:
- player’s browser (end) must NOT be used as initiator of requests to the service;
- proper IPs are supplied to Pragmatic Play for whitelisting
playerId String(100) Id of the player within the Operator system. Examples: 1000, 2644987.
currency String Player's ISO 4217 currency code. Examples: 'EUR' or 'USD'.
expirationDate Long Date and time when the bonus will expire - timestamp in seconds.
(Unix epoch time in seconds, for example : 1470926605)
error Integer Error code.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
5.3 CreateFRB
Request path: POST /FreeRoundsBonusAPI/createFRB/
Using this method Casino Operator system can create a Free Round Bonus in the Pragmatic Play system.
In case of a network error Operator can send a repeated request. The Pragmatic Play system will not create new RF bonus if
there is an active FR bonus with the same bonus code.
Note: Expiration date is mandatory. It should be sent as timestamp in seconds, and the bonus validity period must
not be longer than 30 days.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
playerId Id of the player within the Casino Operator system. Required
currency Currency of the player. Required
Response parameters
Name Description
providerPlayerId
providerPlay erId Id of the player within the Pragmatic Play system.
error Error code.
description Description of the error for troubleshooting.
secureLogin=username&playerId=421¤cy=USD&gameIDList=vs20bl&rounds=10&bonusCode=421_frb&expira
tionDate=1482588510&hash=1d319398565e48dc635c3c621475d0ac
5.4 CancelFRB
Request path: POST /FreeRoundsBonusAPI/cancelFRB/
Using this method Casino Operator system can cancel a Free Round Bonus in the Pragmatic Play system. Free Rounds will be
canceled in the Pragmatic Play system regardless of whether tthe
he player started to play them or not.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
bonusCode Bonus id within the Operator system. Should be unique within the brand. Required
hash Hash code of the request. Required
Response parameters
Name Description
secureLogin=username&bonusCode=421_frb&hash=39554fed4f41132eb8fe75e9a7ba3df6
5.5 GetPlayersFRB
Request path: POST /FreeRoundsBonusAPI/getPlayersFRB/
Using this method Casino Operator system can get from the Pragmatic Play system all Free Round Bonuses that are awarded to the
particular player.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
playerId Id of the player within the Operator system. Required
hash Hash code of the request. Required
Response parameters
Name Description
bonuses List of information about all active FRB that were awarded to the player. See below FRB type
description of the objects in the list.
error Error code.
Type: FRB
Name Description
secureLogin=username&playerId=421&hash=b623382e6dd3219d63b7ed1979408856
After all free rounds are played the Pragmatic Play system sends a bonusWin API call to Operator server to add money to the
player's balance. Please note that not all games support FRB.
Free rounds can be awarded to players registered within the Pragmatic Play system using API. If a player is not registered in
the Pragmatic Play system yet a new player account will be created automatically.
Free Rounds Bonus HTTP service is a simple API for game Operator to manage Free Rounds. API is an HTTP listener, which
listens POST requests coming to an URL with the request mappings below.
All responses should be in JSON format.
URL of the FRB HTTP service will be provided by Pragmatic Play for the production and test environments and looks
like: https://{API service domain}/IntegrationSer
domain}/IntegrationService/v3/http
vice/v3/http/FreeRoundsBo
/FreeRoundsBonusAPI/v2/
nusAPI/v2/
10. Compare with hash parameter. In the case of failure Casino Operator should send the error code 5.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
playerId String(100) Id of the player within the Operator system. Examples: 1000, 2644987.
currency String Player's ISO 4217 currency code. Examples: 'EUR' or 'USD'.
gameID String Unique identifier of the game.
rounds Integer Number of free rounds
bonusCode String Bonus unique identifier within the Operator system.
expirationDate, Long Date and time when the bonus will start, expire or until it is valid - timestamp in
startDate, seconds.
validityDate (Unix epoch time in seconds, for example : 1470926605)
error Integer Error code.
Note:
1. Expiration date is mandatory. It should be sent as timestamp in seconds, and the bonus validity period must
not be longer than 30 days.
2. Total bet for each round is calculated as bet-per-line * number-of-lines.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
bonusCode Bonus id within the Casino Operator’s system. Should be unique within the Required
brand.
startDate Date and time when free rounds bonus will start. Required
expirationDate Date and time when the free rounds will expire. Required
validityDate
validityD ate Date and time when the bonus gets invalid and is unavailable for the player. Optional
rounds Number of free game rounds awarded. Required
hash Hash code of the request. Required
gameList List of the games associated with the bonus, with bet per line values for each Required
currency. See below VariableFRGame type description of the objects in the list.
This data must be sent as a JSON in the body of the request.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
Type: VariableFRGame
Name Description
Type: VariableFRBetValue
Name Description
Response parameters
Name Description
secureLogin=username&bonusCode=421&startDate=1482588510&expirationDate=1482598510&rounds=10&
hash=1d319398565e48dc635c3c621475d0ac
{
"gameList": [
{
"gameId": "vs25a",
"betValues": [
{"betPerLine": 0.05, "currency": "USD"},
{"betPerLine": 0.10, "currency": "EUR"},
{"betPerLine": 0.50, "currency": "CNY"}
]
},
{ "gameId": "vs9c",
"betValues": [
{"betPerLine": 0.15, "currency": "USD"},
{"betPerLine": 0.30, "currency": "EUR"},
{"betPerLine": 1.50, "currency": "CNY"}
]
}
]
}
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
bonusCode Bonus id within the Operator system. Should be unique within the brand. Required
hash Hash code of the request. Required
Response parameters
Name Description
secureLogin=username&bonusCode=421&hash=39554fed4f41132eb8fe75e9a7ba3df6
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
bonusCode Bonus id within the Operator system. Should be unique within the brand. Required
playerList List of player id to add to the existing Free Round Bonus, comma separated. Required
This data must be sent as a JSON in the body of the request.
hash Hash code of the request. Required
Response parameters
Name Description
secureLogin=username&bonusCode=421&hash=39554fed4f41132eb8fe75e9a7ba3df6
{
"playerList": ["449986","450013","450509","437070"]
}
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service Required
bonusCode Bonus id within the Operator system. Should be unique within the brand. Required
playerList List of player id to remove from the existing Free Round Bonus, comma Required
separated.
hash Hash code of the request. Required
Response parameters
Name Description
secureLogin=username&bonusCode=421&hash=39554fed4f41132eb8fe75e9a7ba3df6
{
"playerList": ["449986","450013","450509","437070"]
}
URL of the history HTTP service will be provided by Pragmatic Play for the production and test environments and
looks like:
secureLogin String (32) User name for authentication in the Casino Game API service. Should be provided by
the Pragmatic Play.
playerId String(100) Id of the player within the Operator system. Examples: 1000, 2644987.
gameId String (32) Symbolic unique identifier of the game within the Pragmatic Play system. Example:
vs25queenofgold, vs50aladdin, cs5triple8gold, bjma, rla, vpa
Casino Operator can get the list of all available games by a call of GetCasinoGames
method of Integration API.
Integration
language String(2) Language code in ISO 639-1 standard (e.g. en,
en , fr, it).
roundDetails String(50) Additional information about the current game round, such as “Free spin”, “Bonus”,
etc.
datePlayed DateTime Date and time when the round was played
error Integer Error code.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
7.3 GetPlayedGames
Request path: POST /GetPlayedGames/
Using this method Casino Operator can get a list of the games played by the player during the day.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service. Required
playerId Id of the player within the Casino Operator system. Required
datePlayed Date, based on the time zone of the user. Required
timeZone Time zone of the user. Required
Example: GMT, GMT+8, GMT+04:00
hash Hash code of the request. Required
Response parameters
Name Description
games List of games played. See below GamePlayed type description of the objects in the list.
Type: GamePlayed
Name Description
secureLogin=username&playerId=421&datePlayed=2016-12-
23&timeZone=GMT+00:00&hash=980d06d3361f1e21a2f1550c6806ef52
7.4 GetGameRounds
Request path: POST /GetGameRounds/
Using this method Casino Operator can get a list of the game rounds played by the player during the certain day and (optionally)
the specific hour.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service. Required
playerId Id of the player within the Casino Operator system. Required
datePlayed Date when the game rounds were played, based on time zone of the user. Required
timeZone Time zone of the user. Required
Example: GMT, GMT+8, GMT+04:00
gameId Symbolic unique identifier of the game. Required
hour A number of hour then rounds were played (optional). Required
hash Hash code of the request. Required
Response parameters
Name Description
rounds List of game rounds played. See below GameRound type description of the objects in the list.
error Error code.
description Description of the error for troubleshooting.
Type: GameRound
Name Description
dateTime Date and time when the round was played, based on time zone of the user.
The value is returned in Pragmatic Play ’s server time zone (UTC/GMT+0).
gameId Symbolic unique identifier of the game.
gameName Name of the game.
roundId Unique identifier of the game round.
currency Player’s currency.
roundDetails Additional information about the game round, such as “Free spin”, “Bonus”, etc.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
secureLogin=username&playerId=421&datePlayed=2016-12-
23&timeZone=GMT+00:00&gameId=vs50aladdin&hour=10&hash=0179f75a37274337f9aefe2c3108db0f
7.5 OpenHistory
Request path: POST /OpenHistory/
Using this method Casino Operator can get a link to the page with the game details at the end of the round. The method returns
URL that contains round id and a one-time password that the game server will use for validation of the request, for the security
reason.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service. Required
playerId Identifier of the player within the Casino Operator system. Required
roundId Unique identifier of the game round. Required
hash Hash code of the request. Required
Response parameters
Name Description
secureLogin=username&playerId=421&roundId=5108924498&hash=361527d01b040fd0c5fb68dcc204b707
7.6 GetRoundStatus
Request path: POST /GetRoundStatus/
Method returns the current status of a particular game round. Using this method Casino Operator can check game rounds
recorded on their side and cancel open bets returning money to the pl
player’s
ayer’s balance.
Request parameters
Name Description Status
secureLogin User name for authentication in the Casino Game API service. Required
roundId Id of the game round. Required
hash Hash code of the request. Required
Response parameters
Name Description
7.7 OpenHistoryExtended
Request path: POST /OpenHistoryExtended/
Using this method Casino Operator can obtain detailed information about played
pl ayed game round, including free spin sessions.
Request parameters
Response parameters
Name Description
secureLogin=username&playerId=123123&roundId=111222&hash=5fd31717ba4da9e78ac19730212925c2
For each API account, frequency of any particular "Data feeds and reports" method requests, should be not more
than one call per minute.
Time points
Time point is a timestamp starting from the server time when data is requested for the first time. If the request is sent without
a time point, the system returns a time point, which should be sent with the next request.
Whenever a request with the time point is sent, data from the moment of timepoint to the current moment will be
transferred, along with the new time point. This new time point should be used for the next request, and so on.
Using such a mechanism, no data will be lost. If clients haven’t r eceived response from the Pragmatic Play with the new time point,
they will be able to re-send the request with the same time point, until requested data is received.
Data can be loaded by small portions for periods of time not longer than 10 minutes.
data as they need, to download data that are already in the past.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
URL of the data feeds service will be provided by Pragmatic Play for the production and test environments and looks
like:
Data formats
Data will be returned in CSV or JSON format. For more details please see the chapter where the data feed is described.
All successful server responses in CSV format will contain a new time point that should be sent then by the client to the server
in the next request. Format of the server response is as follows:
#timepoint = {server time in ms}
{Data in standard csv format}
Client should get the first line from the response, parse it and save the time point somewhere for the next request. The rest
of the response should be parsed as normal CSV stream.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
login String(30) API user name (secureLogin value) for authentication in the Pragmatic Required
Play API.
password String(30) API password (secret key value) for authentication in the Pragmatic Required
Play API.
timepoint Long Time point starting from which data will be transferred. If time point Optional
is empty, the new time point will be returned.
(Unix epoch time in milliseconds, for example : 1470926696715)
gameID String(20) Symbolic unique identifier of the game provided by Pragmatic Play.
playSessionID Number(15) Id of the player’s session for particular game (unique number of the game round).
parentSessionID Number(15) Id of the play session, in which the feature was triggered (unique number of the
parent game round). This field will contain the same value as the playSessionID
field for all game rounds except free spins.
(Rows with free spins will contain the id of game rround
ound where they were
triggered in the parentSessionID field and id of the free spin round in the
playSessionID
playSessionID field)
startDate DateTime Date and time when the game round started.
(Will be returned in yyyy-mm-dd HH:mm:ss format, for example: “2017-08-28
02:14:13”)
endDate DateTime Date and time when the game round ended. Will be null if the game round is not
finished yet.
(Will be returned in yyyy-mm-dd HH:mm:ss format, for example: “2017-08-28
02:14:13”)
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
jackpot Double(15,2
Double(15,2)) Jackpot win amount
amount..
Example of response:
timepoint=1482510809258
playerID,extPlayerID,gameID,playSessionID,parentSessionID,startDate,endDate,status,type,bet,win,cur
rency, jackpot
6638030,bobtest,vs50aladdin,51126041,51126041,"2017-08-15 02:12:49","2017-08-15 02:18:14",C,R,
2.50,0.25,USD,0.00
6638030,bobtest,vs50aladdin,51126042,51126041,"2017-08-15 02:14:35",”2017-08-15 02:14:40",C,F,
0.00,0.00,USD,0.00
6638030,bobtest,vs50aladdin,51126590,51126041,"2017-08-15 02:14:43","2017-08-15 02:14:46",C,F,
0.00,0.00,USD,0.00
6638030,bobtest,vs50aladdin,51127141,51126041,"2017-08-15 02:14:51","2017-08-15 02:14:55",C,F,
0.00,0.00,USD,0.00
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
login String(30) API user name (secureLogin value) for authentication in the Required
Pragmatic Play API.
password String(30) API password (secret key value) for authentication in the Required
Pragmatic Play API.
timepoint Long Time point starting from which data will be transferred. If time Optional
point is empty, the new time point will be returned.
gameID String(20) Symbolic unique identifier of the game provided by Pragmatic Play.
playSessionID Number(15) Id of the player’s session for particular game (unique number of the game
round).
timestamp DateTime Date and time when the transaction is processed on the Pragmatic Play
side.
referenceID String(100) Unique id for reference of this transaction on the Pragmatic Play side.
Example of response:
timepoint=1482510809258
playerID,extPlayerID,gameID,playSessionID,timestamp,referenceID,type,amount,currency
6638030,421,vs50aladdin,5111126041,1482510741000,585d5195f89c56f5ed95012e,B,2.50,USD
6638030,421,vs50aladdin,5111126041,1482510742000,585d5196f89c56f5ed950159,W,0.50,USD
6638030,421,vs50aladdin,5111126590,1482510745000,585d5199f89c56f5ed950344,B,2.50,USD
6638030,421,vs50aladdin,5111127141,1482510748000,585d519cf89c56f5ed95054e,B,2.50,USD
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
password String(30) API password (secret key value) for authentication in the Required
Pragmatic Play API.
timepoint Long Timepoint starting from which data will be transferred. If Optional
timepoint is empty, the new timepoint will be returned.
(Unix epoch time in milliseconds, for example :
1470926696715)
gameID String(20) Symbolic unique identifier of the game within the Pragmatic Play system.
Example: vs25queenofgold, vs50aladdin, cs5triple8gold, bjma, rla, vpa
playSessionID Number(15) Id of the player’s session for particular game (unique number of the game
round).
referenceID String(100) Unique id for reference of this transaction on the Pragmatic Play side.
timestamp Long Date and time when the transaction is processed on the Pragmatic Play
side.
roundDetails String(50) Additional information about the current game round, comma separated.
Example: “spin,bonus”
Example of response:
timepoint=1482510979767
playerID,extPlayerID,referenceID,gameID,playSessionID,betAmount,winAmount,timestamp,roundDetails
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
login String(30) API user name (secureLogin value) for authentication in the Required
Pragmatic Play API.
password String(30) API password (secret key value) for authentication in the Required
Pragmatic Play API.
jackpotID Number(1
Number(15)
5) Unique identifier
identifier of the
the Jackp
Jackpot
ot within Pragmatic Play system.
login String(30) API user name (secureLogin value) for authentication in the Required
Pragmatic Play API.
password String(30) API password (secret key value) for authentication in the Required
Pragmatic Play API.
jackpotID Number(
Number(15)
15) Unique identifier of the Jackpot within the Pragmatic Play Required
system.
jackpotID Number(
Number(15)
15) Unique identifier o
off the Ja
Jackpot
ckpot with
within
in Pragmat
Pragmatic
ic Play syste
system.
m.
dateTime DateTime Date and time when the Jackpot was won.
gameID String(20) Symbolic unique identifier of the game where Jackpot was won.
login String(30) API user name (secureLogin value) for authentication in the Pragmatic Play API. Required
password String(30) API password (secret key value) for authentication in the Pragmatic Play API. Required
startDate DateTime Start date and time of the period for which the data should be loaded Required
endDate DateTime End date and time of the period for which the data should be loaded Required
totalRounds Integer Total number of game rounds completed during the reporting period, including free spin
rounds number
totalFreeSpinRounds Integer Total number of free spin rounds completed during reporting period
Cache-Control: no-cache
Example of JSON response:
{
"error": "0",
"description": "OK",
"data": [
{
"totalRounds": 48,
"totalFreeSpinRounds": 10,
"totalBet": 48,
"totalWin": 92.68,
"totalJackpot": 0,
"currency": "RMB"
},
{
"totalRounds": 148,
"totalFreeSpinRounds": 28,
"totalBet": 148,
"totalWin": 920.68,
"totalJackpot": 166,
"currency": "USD"
}]}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
Request parameters
Name Type Description Status
login String(30) API user name (secureLogin value) for authentication in the Pragmatic Required
Play API.
password String(30) API password (secret key value) for authentication in the Pragmatic Required
Play API.
playerId String Id of the player within the Casino Operator’s system. Required
login String(30) API user name (secureLogin value) for authentication in the Pragmatic Required
Play API.
password String(30) API password (secret key value) for authentication in the Pragmatic Play Required
API.
startDate Date Start date of the period for which the data should be loaded. Required
Date and time in the format yyyy-MM-dd HH:mm:ss.
endDate Date End date of the period for which the data should be loaded. Required
Date and time in the format yyyy-MM-dd HH:mm:ss.
tournaments List List of tournaments that were closed during requested period. See below Tournament
type description of the objects in the list
error String Error code
description String Description of the error for troubleshooting
Type: Tournament
Name Type Description
dateClosed Date Date and time when the tournament was finished.
Date and time in the format yyyy-MM-dd HH:mm:ss.
winners List Tournament winners – the list of top players that were awarded with tournament
prizes. See below “Tournament Winner” type description of the objects in the list
prizeGift String Gift, which the player will receive as a prize. This field is optional and will appear only
if prizeAmount, prizeCoins, prizeCurrency fields are not present in the response.
prizeAmount Number(15,2) Prize amount that the player is awarded with.
The field is optional and will appear only if there is no prizeGift field in the response.
X. Diagrams
10.1 Flow diagram of opening casino game for Seamless Wallet API
Flow details
1. Player selects a game, which is served by Pragmatic Play. Specific one-time password is created on Operator side.
This password should uniquely identify the player within Operator system.
system.
2. Operator, with the help of JS library provided by Pragmatic Play, checks if selected game can be launched on the
player’s OS and return URL of the game to the player browser. If the game cannot be launched then appropriate
message will be shown to the player.
3. URL of the game is loading in player browser for redirecting player to Pragmatic Play game server.
4. Game Server verifies one-time password received with URL.
5. Pragmatic Play Integration Service calls Operator server to authenticate player using received token.
6. Operator authenticates the player. If player is authenticated Operator returns player id within Operator system and
7. player currentreceives
Game Server balance.a reslut of player authentication. If authetication is not successful a player will receive an error
message.
8. Game Server finds player id in the database or creates a new player account
9. The game with all required data isi s opened for player.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
Flow details
The game flow is shown in the example of the slot.
1. Player clicks Spin button on the game screen, and game client sends doSpin request to the Pragmatic Play Game
server.
2. Game server calls Pragmatic
Pragmatic Play Integration service to withdraw money from the player balance.
3. Integration service sends Bet request to the Operator server. If the request cannot be handled by Operator due to
connection problem, Pragmatic Play server will repeat the request 3 times. After that Refund request will be sent to
the Operator server for cancelling bet until response from Operator server is received.
4. Operator verifies that player has enough funds in the wallet to make a bet, subtracts requested amount from the
balance and returns updated player balance in the response. If there is not enough money in the wallet, Operator
returns an error.
5. Pragmatic Play Integration service returns updated balance to the game server.
6. Game server processes spin - gets new combination on the reels, checks combinations that trigger free spins or
bonus game feature, calculates win amount, etc.
7. Game server returns response to the game client. Response may contain updated reels, information about winning
lines, triggered features and win amount.
8. If player has a win on lines game client sends doCollect request to the Game server to collect player’s winnings.
9. Game server calls Pragmatic Play Integration service to add win amount to the player balance.
10. Integration service calls Operator server sending BetResult request. If request cannot be handled by Operator due
to connection problem, Pragmatic Play server will repeat the request until it receives a response from Operator
11. server. adds money to player's wallet and returns updated player balance.
Operator
12. Pragmatic Play Integration service returns updated balance to the Game server.
13. Game server collects player ’s win.
14. Game server returns response to the game client containing updated player balance.
15. If bonus game feature is triggered game client sends doBonus request to the Game server.
16. Game server starts bonus game feature.
17. Game server returns response with all information that is necessary for the game client to play bonus game.
18. Game client sends a request to the game server on every step of the bonus game.
19. Game server handles request and returns response with the result of current step.
20. When bonus game is over game client sends doCollectBonus request to the Game server.
21. Game server calls Pragmatic Play Integration service to add bonus game win amount to the player balance.
22. Integration service calls Operator server, sending BetResult request. If request cannot be handled by Operator due
to connection problem, Pragmatic Play server will repeat request until it receives a response from Operator server.
23. Operator adds money to player's wallet and returns updated player balance.
24. Pragmatic Play Integration service returns updated balance to the Game server.
25. Game server processes bonus game win.
26. Game server returns response to the game client containing updated player balance.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
XI. Reconciliation
11.1 Reconciliation process
If a request times out because of internet connection problems, then the Pragmatic Play system will follow a process
described below, to reconcile the action.
Bet transaction
The Bet request will be retried 2 (two) times with a delay of 5 seconds between attempts.
If a request is still not processed after the second try, Pragmatic Play will initiate the Refund request to cancel this single bet
on the Operator side.
Refund transaction
Refund request will be added to a Transaction queue and an error message will be displayed to the player on the game
interface. The game client should be closed. The reconciliati
reconciliation
on mechanism starts from there.
Operator will accept Refund requests that run independently of the game session in order to ensure the two systems are kept
in sync.
Such a request can be sent if Pragmatic Play has an unknown response on the Refund request on its side because of a timeout
(so it will try to run it in the background until the Operator response will not reach Pragmatic Play).
Operator will return a successful response on the Refund request even if the transaction has been canceled in the past and
does not need to be canceled again or even if Bet has not reached Operator system because of timeouts.
Winning transactions
The BetResult/BonusWin/JackpotWin requests will be retried 2 (two) times with a delay of 5 seconds between attempts.
If a request is still not processed after the second try then it will be added to the Transaction queue for reconciliation. Game
round result will be displayed to the player on the game interface.
BetResult/BonusWin/JackpotWin requests will be added to the Transaction queue and sent independently of the game
session, according to the Reconciliation mechanism.
mechanism.
End round
The EndRound request will be added to the Transaction queue once the game server determines a game round is over. The
reconciliation mechanism starts from there.
Operator will accept EndRound
EndRound requests that run independently of the game session in order to ensure the two systems are
kept in sync. Repeated EndRound request can be sent only if the Pragmatic Play system has an unknown status on its side
because of a timeout on the EndRound call, so it will try to run it in the background until the Operator response will not reach
Pragmatic Play.
One of the regulatory requirement is to notify the player with a certain frequency regarding the actual amount of time the
player spends in the game. In UK regulation the user set the notification frequency during the login via the portal. In the next
money transaction call (bet or win) after the reality check interval expiration will result in an appropriate reality check error.
The error should be translated to an appropriate warning popup displayed to the player.
210 Reality check warning o rcRegulation – Regulator. Possible values are: UK, Malta
o rcInterval – Reality check interval in minutes
o rcTimeInSession – Total session time in minutes
o rcNetGain – Status of player’s profit/loss over the session time
If player have
warning, thosechosen to stop
requests mustplaying
plbe
aying and there
properly is a winning
processed on bothrequests
sides tothat ware
allow refused
player bytheir
to get Operator due to
winnings: the reality
Pragmatic check
Play will
re-send winning requests and Operator must add money to player’s balance.
Request parameters
Name Description Status
providerId Pragmatic Play identifier for authentication in Casino Operator ’s system. Required
May be provided by Casino Operator. Otherwise default value is used.
playerId Identifier of the player within the Casino Operator system. Required
Response parameters
Name Description
playerId=6&userAction=Reset&providerId=PragmaticPlay&hash=53ff1b78529a7b97fca9026d9c2dc788
"nonIntrusive":
"options": [ false,
{
"action": "continue",
"label": "OK"
},
{
"action": "link",
"label": "Bonus Details"
"linkType": "redirect",
"url": " https://www.casino.com/bonus/details",
} ]
} ]
}
Each item in the “messageTriggers” array may contain elements title, text, nonIntrusive and options.
The title element contains the title of the message box, which must be in one short line of no more than 60 characters.
The text specifies the message box text and may contain multiple lines. When specifying a forced line break the symbol used
is \n. The max length of the text is 300 characters.
If nonIntrusive is specified and true, the message can be shown in a non-modal, non-intrusive fashion. Default value: false.
The options array can contain one or more elements. Each option always has action and label elements and may contain
optional url element for redirect or Ajax call and a linkType specifying how the request should be sent to the URL if it is
specified. Options and link types are specified below.
The options order specifies the order in which the options shall appear in the message box.
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
continue Continue the game Close the message box and resume the game.
link Close the message box and open or send Ajax request to the URL indicated in the
“action” parameter.
open Open a new tab Opens a new/blank tab in the browser, with the link specified for the action.
ajax Notify and resume An Ajax request is sent to the URL and immediately let the player continue with the
game flow.
ajaxResponse Notify and wait An Ajax request is sent to the URL and wait until "successful json response" is
received. Only then continue with the game flow.
messageTriggers Array Messages that will be displayed in the player’s game client. Optional
message Object
nonIntrusive Boolean If specified and true, the message can be shown in a non-modal, non- Optional
intrusive fashion. Default value: false.
options Array List of options, should specify buttons shown in the message box. At Optional
least one option should be defined. In the simplest case, it will be the
OK button, which closes the box.
option Object
action String (10) Type of the option. Available types are: quit, continue, history, link. Required
Detailed description of each action can be found in Action types
section above.
label String (20) Text on the button in the message box to be shown to the player. Required
linkType String (10) Type of the link. Relevant only for actions of “link” type. Available Optional
values are: redirect, ajax, ajaxResponse, notify. Detailed description of
each link type can be found in Link types section above.
url String (100) URL of the link. Relevant only for actions of “link” type. Optional
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
Players should at all-time be able to see login time, this includes the mobile client as well. For this purpose, PragmaticPlay
takes an addition game launch parameter:
elapsedTime - Current elapsed session time, the value is in seconds. If present the elapsed time will be displayed in the game
client.
Definitions
List of definitions for the OPERATOR:
1. Bingo room – specific theme for web client.
2. Bingo game session – order of bingo games for specific hour and bingo room.
3. Bingo game – specific settings in game for bingo game round.
In order to retrieve URL for game launching, the Operator needs to call JS function ‘BingoLib.js.gameUrl’ (which is available
via BingoLib.js at https://<bingo_game
https://<bingo_game server domain>/b
domain>/bingohtml5/BingoLib
ingohtml5/BingoLib.js
.js)) with the following parameters:
parameters:
serverURL – domain name for bingo game opening and playing;
domain – specific setting to put OPERATOR URLs inside bingo rooms
token – secure one-time token is generated by OPERATOR for specific player;
room – unique identifier for bingo room;
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
language – player language in ISO 639-1 standard (e.g. en, fr, it);
cashierURL – URL for opening a Cashier page from the website verified by OPERATOR;
lobbyURL – URL for redirecting a player from the client to the lobby page in case if player taps/clicks on Lobby
button;
commonGameMenu – URL for page with other games from OPERATOR in specific bingo room;
gamesLobby – external html page which shows user a list of mini slots and manages to launch them ( Mini Slots
Slots))
profileURL – user profile page;
preByCardURL – page where user can make cards preorder (applies to all rooms);
gameHistoryURL – page where user can check his game history on OPERATOR side;
promotionURL – page which includes promotion information;
stylename – unique identifier of the OPERATOR at PROVIDER side.
responsibleGaming – separate page which contains ‘responsible gaming’ info.
rci – the reality check interval, in minutes. This is the iinterval
nterval for reality check messages to be shown to the player
during game play
rce – the reality check elapsed time, in minutes. This is optional parameter, which indicates already elapsed minutes
on another games. If this parameter is sent by Operator, the first time RC message will appear in rci – rce minutes
after game opening
rcHistoryUrl – a link to the player’s game history. This is optional parameter. If Operator send the rcHistoryUrl
parameter, game client will add the “History” button to the reality check message. There are two options here:
o Operator may provide a URL to the page on their side. In this case rcHistoryUrl should contain a link to
Operator’s page. For example: rcHistoryUrl=http://casinosite.com/histo
rcHistoryUrl=http://casinosite.com/history/ ry/
o Game client can show inbuilt game history, provided by Pragmatic Play. In this case Operator should send
the predefined value: rcHistoryUrl=ingame
rcCloseUrl – a link to the page on the Operator’s website, to which the player will be redirected if they choose to
close the game. This parameter is optional. The “Close” button appears on the reality check message only if Operator
sends the URL
helpURL – a link that opens the website ‘Support’ page in a new tab.
Jurisdiction – player’s jurisdiction. Available values:
o BS - Bahamas
o BG - Bulgaria
o DK - Denmark
o UK - United Kingdom
o IT - Italy
o ES - Spain
o PT – Portugal
o 99 - Unregulated market
isNewWindow – special flag for lobby client, used for clarification for lobby client to be opened in iframe or in a new
window. Available values:
o true – new window
o false – iframe inside OPERATOR`s website
The function of call should look like: BingoLib.prepareUrl = function (serverURL, domain, token, room, language, cashier
cashierUrl,
Url,
secureLogin).
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
Mini slots
Bingo client allows OPERATOR to introduce user to Bingo, video slots and other games by using iframe in special area inside
web application.
In order to do that, the OPERATOR needs to create a special lobby page for games list which will allow player to choose and
play mini slots inside Bingo client. Structure and size of lobby page elements should be developed according to the most
required device models. Iframe has size approximately equal to one third of the screen or with height equal to half of
display length in mobile version. The width in desktop version is 482px and height is 328px.
Also OPERATOR needs to implement special post notification messages for Bingo web client page about actions inside
iframe.
Implementation of post messages by the dispatched event:
function receiveMessage(event)
{
if (event.origin !== "http://example.org:8080")
return;
// ...
}
NOTE: External link from the Operator side should always begin with HTTPS. CORS headers should always be present.
source - A reference to the window object that sent the message; you can use this to establish two-way communication
between two windows with different origins.
Samples which Bingo web client expects to get:
window.parent.postMessage('open-lobby', '<site domain of lobby page>') - when lobby page opened in iframe
window.parent.postMessage('open-lobby',
window.parent.postMessage('open-game', '<site domain of lobby page>') – when game is launching from lobby page
window.parent.postMessage('open-game',
window.parent.postMessage('close-game',, '<site domain of lobby page>') – when game is closed page should be redirect for
window.parent.postMessage('close-game'
lobby page again and notify bingo client.
For more information use the following documentation:
https://developer.mozilla.org/en-US/docs/Web/API/W
https://developer.mozilla.org/en-US/docs/Web/API/Window/postMess
indow/postMessage
age
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
To connect player’s wallet at operator side, methods and specification which are described in section
As an option, In order to set player’s nickname which will be used in bingo chat, provider can pass optional parameter
“nickname” in response of method 3.4 Authenticate.
Request parameters
Property Type Description Status
playerID string Unique player identifier on operator's side Optional
language string Player’s language Optional
secureLogin string Login to access the API Required
Example request
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/RoomList HTTP/1.1
{
"playerID": "playerID",
"language": "en",
"secureLogin": "login1526992641791"
}
Response parameters
Property Type Description Status
error number Response status. Required
description string Response status short description. Required
activeRoomList
activeRoomLi st array of 'ActiveRoom' type List of active bingo rooms. Required
upcomingRoomList array of 'UpcomingRoom' type List of upcoming bingo rooms. Required
symbol string Currency symbol by ISO 4217 (USD, AUD, EUR etc) Required
value double Amount of money in related parameter. Required
Example response
{"activeRoomList":[{"bingoType":75,"cardCost":[{"symbol":"AUD","value":1.34}],"gamePrize":[{"symbol":"AU
D","value":1.27}],"jackpotAmount":[{"symbol":"AUD","value":0}],"nextGameStart":1544518740000,"playersBou
ghtCards":0,"playersInRoom":0,"roomID":1182,"roomName":"vcb only 75
en"}],"description":"OK","error":0,"upcomingRoomList":[{"bingoType":75,"cardCost":[{"symbol":"AUD","valu
e":1.34}],"gamePrize":[{"symbol":"AUD","value":201}],"jackpotAmount":[{"symbol":"AUD","value":1344.02},{
"symbol":"EUR","value":852.55}],"nextGameStart":1544518800000,"playersBoughtCards":0,"playersInRoom":0,"
roomID":1502,"roomName":"no loop room"}]}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
AvailableGames
Method returns list of rooms with games schedule (when which game will be played). Also, it will also return information
about player's pre-ordered cards.
Request parameters
Example request
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/AvailableGames
{
"secureLogin":"securelogin",
"playerID":"91446987",
"language":"en",
"date":1544603284186
}
Response parameters
Property Type Description Status
Structure 'Room'
Property Type Description Status
roomID Number ID of the room Required
roomName String Name of the room. Required
bingoType Integer Bingo game type (75 or 90) Required
gameListByHours array of type 'Game' The list of games in the room at the specified hour. Required
serialGameIdx
serialGa meIdx integer Serial number of the game at the requested hour. This parameter Required
is required for the accurate determination of the necessary game
in an hour, so as the game can be repeated many times.
symbol string Currency symbol by ISO 4217 (USD, AUD, EUR etc) Required
value double Amount in relevant currency . Required
Example response
{"description":"OK","error":0,"roomList":[{"bingoType":75,"gameListByHours":{"0":[{"boughtCardsNumber":0
,"cardCost":[{"symbol":"AUD","value":6.08},{"symbol":"EUR","value":4.23}],"gameID":5880,"gameName":"stri
p_fixed","givenCardsNumber":0,"maxCardsNumber":2,"players":0,"purchaseMode":"S","serialGameIdx":1,"total
Amount":[{"symbol":"AUD","value":0},{"symbol":"EUR","value":0}]}]},"roomID":1282,"roomName":"strip_fixed
"}]}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
PreorderCards
Method allows to make cards pre-order.
Request parameters
Property Type Description Status
Example request
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/PreorderCards
{
"secureLogin":"securelogin",
"playerID":"16243a2ec4218f2",
"date":1544606366093,
"currency":"EUR",
"roomID":1442,
"preorderCardList":
[{"hour":10,"gameID":6000,"serialGameIdx":1,"cardNumber":20},
{"hour":11,"gameID":6000,"serialGameIdx":1,"cardNumber":20},
{"hour":12,"gameID":6000,"serialGameIdx":1,"cardNumber":20}]
}
Structure 'PreorderCard'
Property Type Description Status
Response parameters
parameters
Property Type Description Status
Example response
{
"error": 0,
"description": "OK",
"preorderCardList": [
{
"error": 0,
"description": "OK",
"gameID": 6000,
"serialGameIdx": 1,
"cardNumber": 20,
"givenCardsNumber": 0,
"hour": 10
] }
}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
PreorderedReport
This method returns the list of cards preordered by player.
Request parameters
Property Type Description Status
Example request
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/PreorderedReport
{
"secureLogin":"securelogin",
"playerID":"16243a2ec4218f2",
"dateFrom":1544433758165,
"dateTo":1544606558165,
"language":"no",
"roomID":1442
}
Response parameters
Property Type Description Status
Structure 'PreorderedReport'
Property Type Description Status
transactionID
transactio nID number Reference of bet request in wallet API. Required
sessionStartDate
sessionStartD ate number Date and time of the draw. UNIX time in ms Required
gameID number ID of the game. (Bingo game ID) Required
gameName string Name of the game. Required
bingoType integer Bingo game type (75 or 90) Required
roomID number ID of the room. Required
roomName string Name of the room. Required
cardNumbers integer Number of the cards.
Required
givenCardsNumber Integer The number of cards given to player in addition (relevant for Buy X get Y Required
games).
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
Example response
{"error":0,"description":"OK","preorderedList":[{"sessionStartDate":1544608800000,"gameID":6000,"gameNam
e":"bingo_90_jp","bingoType":90,"roomID":1442,"roomName":"for test with 90",
"cardNumbers":20,"cardCost":1,"purchaseMode":"C","roundID":20007000207,"currency":"USD","transactionID":
20001661407,"bingoRoundID":71761061,"givenCardsNumber":0,"prize":100.11,"jackpot":0},{"sessionStartDate"
:1544608800000,"gameID":6000,"gameName":"bingo_90_jp","bingoType":90,"roomID":1442,"roomName":"for test
with 90",
"cardNumbers":20,"cardCost":1,"purchaseMode":"C","roundID":20007000207,"currency":"USD","transactionID":
20001661607,"bingoRoundID":71761061,"givenCardsNumber":0,"prize":100.11,"jackpot":0}]}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
CancelPreorderedCards
This method cancels the cards preorder made by player.
Request parameters
Property Type Description Status
Example request
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/CancelPreorderedCards
{
"cancelPreorderedList": [
{
"transactionID": 10001000
}
],
"playerID": "16243a2ec4218f2",
"secureLogin": "securelogin"
}
Structure 'CancelPreordered'
Property Type Description Status
Response parameters
Property Type Description Status
Example response
{
"cancelPreorderedList": [
{
"description": "OK",
"error": "0",
"transactionID": 20001661407
}
],
"description": "OK",
"error": 0
}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
JackpotWinners
This method returns jackpot winners with all required information for specific date.
Request parameters
Property Type Description Staus
Example request
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/JackpotWinners
{
"date": 1526992641791,
"language": "en",
"secureLogin": "login1526992641791"
}
Response parameters
Property Type Description Status
Structure 'JackpotWinner'
Property Type Description Status
playerID string Unique player identifier. Required
nickname string Player's nickname. Optional
amount double Jackpot won amount. Required
dateTime number Date and time when jackpot is won. UNIX time in ms Required
jackpotName string Name of the jackpot.
jackpot. Required
roomID number ID of the room. Required
bingoType integer Bingo game type (75 or 90) Required
Require d
gameName string Name of the game when jackpot is won. Required
Require d
roundID number ID of the round. Required
сurrency string Player’s currency ISO 4217 Required
Example response
{"jackpotWinners":[{"playerID":"playerID","nickname":"player566322","amount":110.5,"dateTime":0,"ja
ckpotName":"Jackpot 2","roomID":200,"bingoType":75,"gameName":"Game 122" ,"roundID":50175,
"currency":"USD"}],"error":0,"description":"OK"}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
ChangeNickname
This method is responsible
r esponsible for changing of player’s nickname.
Request parameters
Property Type Description Status
Example request
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/ChangeNickname
{
"playerID": "playerID",
"nickname": "NewNickname",
"secureLogin": "login1526992641791"
}
Response parameters
Property Type Description Status
Example response
{
"error": 0,
"description": "OK"
}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
Request parameters
Property Type Description Status
endDate number End date for request period. UNIX time in ms Required
Language string Player’s language Required
NOTE: In this request can be sent one of 2 parameters: roundID or bingoRoundID or without in case search for
timeframe
Example request :
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/BingoPlayerHistory
{
"secureLogin":"securelogin",
"playerID":"16243a2ec4218f2",
"startDate":1543660263791,
"endDate":1544610663791,
"language":"es",
"roundID":20006700607,
"fromIndex":0,
"pageOffset":50
}
Response values
Property Type Description Status
Structure 'Rounds'
Property Type Description Status
bingoRoundID long Unique identifier of played bingo round from Provider side. Required
roomName string Name of room where the round was played Required
roundDate number Date and time of round start. UNIX time in ms Required
price double Sum of money which was spent by player Require
Requiredd
cardsNumber integer Sum of cards which were bought for round Required
givenCardsNumber
given CardsNumber Integer The number of cards given to player in addition
additio n (relevant for Buy X get Y Required
games).
freeCardsNumber
freeCard sNumber integer The number of cards, which are played by player as free cards from FRB. Require
Requiredd
prize double Sum of money which player won Required
Example response:
{
"error": 0,
"description": "OK",
"bingoRounds": [
{
"bingoRoundID": "71635203",
"roomName": "vcb wwg sky1 75 vcb es",
"roundDate": 1544087429000,
"price": 10,
"cardsNumber": 10,
"givenCardsNumber": 10,
"freeCardsNumber": 10,
"prize": 506.01
}
],
"count": 1
}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
NOTE: In this request should be sent at least one of 2 parameters: roundID or bingoRoundID
Example request :
https:// {bingo API domain}/BingoIntegration/BingoGameAPI/BingoRoundHistory
{
"roundID": 1000,
"language": "en",
"secureLogin": "login1526992641791"
}
Response parameters
Property Type Description Status
bingoRoundID number Unique identifier of played bingo round from Provider side. Required
bingoCalls string Called numbers divided by whitespaces up to winning call. Optional
bingoWinners array of BingoWinners The list of objects with information about pattern and winners Required
per game part. For usual game this list contain single object.
boughtCards array of type The list of objects with information about players and cards Required
'BoughtCards' number, bought for specific round.
Structure 'BingoWinner'
Property Type Description Status
partNumber integer Number of part for which winners are returned. Required
pattern string Name of the pattern for current part. Required
winningCallNumber
winningCallN umber integer Number of call when prize was won. Required
Structure BingoWinnerDetails’
Property Type Description Status
Structure 'BoughtCards'
Property Type Description Status
givenCardsNumber integer The number of cards given to player in addition (relevant for Buy X get Y Required
games).
freeCardsNumber Integer The number of cards, which are played by player as free cards from FRB. Required
cardCost double Cards cost for specific bingo round. For fixed-price game it will be cost of Required
one cards from pack.
currency string Currency of the player (ISO 4217). Examples: EUR' or USD'. Optional
Example response:
{"error":0,"description":"OK","gameName":"vcb wwg sky1 game grid it" ,"bingoType":75,
"bingoRoundID":71635203,"gameID":5800,"roomID":1202,"bingoCalls":"22,68,55,9,73,60,71,25,65,32,39,12,38,
13,28,21,56,61,41,11","bingoWinners":[{"partNumber":1,"pattern":"Crazy Any 3
Corners","winningCallNumber":20,"winnerDetails":[{"playerID":"16243a2ec4218f2","nickname":"sk_en_65","cu
rrency":"USD","prizeAmount":1.67,"jpAmount":167,"cardID":79000},{"playerID":"16243a2ec4218f2","nickname"
:"sk_en_65","currency":"USD","prizeAmount":1.67,"jpAmount":167,"cardID":79006},{"playerID":"16243a2ec421
8f2","nickname":"sk_en_65","currency":"USD","prizeAmount":1.67,"jpAmount":167,"cardID":79005}]}],"bought
Cards":[{"playerID":"16243a2ec4218f2","boughtCardsNumber":10,"givenCardsNumber":10,"freeCardsNumber":10,
"cardCost":1,"currency":"USD"}]}
© 2018 Pragmatic Play
THE ULTIMATE VEGAS EXPERIENCE
Error Codes
Table below contains the error codes that should be returned by PROVIDER in the response.
Code Description
0 Success.
1 Insufficient balance. The error should be returned in the response on the Bet request.
8 Invalid parameter.
parameter. Should be returned in the response if field is used with incorrect name, data type or
value.
9 Duplicate
Duplicat e nickname. Should be returned in the response on change nickname if same nickname already
is used in system for current casino.
10 Player not found. Should be returned if player is not found at provider side
107 Incorrect number of cards. Should be returned when number of cards for fixed price game is less than
URL of the FRB HTTP service will be provided by Pragmatic Play for the production and test environments and looks like:
Free Rounds Bonus HTTP service is securely protected, hence please be sure:
- player’s browser (end) must NOT be used as initiator of requests to the service;
- proper IPs are supplied to Pragmatic Play for whitelisting
Needed methods and specification are described in chapters 5.1–5.6 in section V. Simple Free Rounds API of current
document