Games API is the core API for using Nirova. It allows Operators to request and receive the list of available games, one singular game URL as well as a game round. All the games provided via the API are provided and implemented by Nirova.
POST /operator/generic/v2/game/url HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 368
{
"user": "john12345",
"token": "f562a685-a160-4d17-876d-ab3363db331c",
"sub_partner_id": "my-platform-id",
"platform": "GPL_DESKTOP",
"operator_id": 1,
"meta": {},
"lobby_url": "https://amazing-platform.com/lobby",
"lang": "en",
"ip": "142.245.172.168",
"game_code": "clt_softwareid",
"deposit_url": "https://amazing-platform.com/deposit",
"currency": "EUR",
"game_currency": "EUR",
"country": "EE"
}
Returns the landing URL of the chosen game. Operator has to forward the user to the returned URL. There are several ways to forward the User: 1. Embed URL into iframe on your site; 2. Redirect User to the URL; 3. Open the URL in a new window/tab of browser.
uX-Nirova-Signature - any · required
RSA-SHA256 is used to sign the request body using the private key. The signature is validated using the public key associated with the provided operator_id
.
user - string · min: 3 · required
The unique user ID in the Operator’s system. In case of DEMO gameplay, this parameter may be omitted.
Example: john12345
token - string · max: 255 · optional
Operator's back end generates a token associated with the User, Game, user's current currency and maybe other parameters depending on the Operator's preferences. The token acts as an ID parameter for the game session. It is important that the currency is not changed during the current game session. If the User changes the currency or display unit, the Operator's backend needs to generate a new token and re-open the game with new token. In case of DEMO gameplay, this parameter may be omitted. Minimum length 10 characters, maximum length 255 characters.
Example: f562a685-a160-4d17-876d-ab3363db331c
sub_partner_id - string · optional
ID of Operator's sub-partner (brand, whitelabel, site, etc.) which uses same integration and credentials as an Operator. Used for detailed reporting and integration type switching. Sites under the same Operator can use different integration types: TransferWallet or SeamlessWallet. A single site (sub_partner_id) can NOT have both kinds of integration at the same time.
Example: my-platform-id
platform - string · enum · required
The platform layout, either mobile or desktop, the User has. This property can be ignored, if the mode is chosen based on User's browser attributes (user-agent, resolution, ratio, orientation).
Example: GPL_ID
operator_id - integer · required
Unique identifier for the Operator in Nirova system. Used to authorize incoming requests. You can obtain your operator_id
from the Nirova BackOffice after your Operator entity is registered and set up in the Nirova system by the internal teams.
Example: 1
meta - object · optional
Additional parameters which can be used for certain game Suppliers. It depends on the Operator's choice of Game Providers/Suppliers.
lobby_url - string · max: 255 · required
lobby_url
specifies the URL to which the game redirects to when the user clicks the Home button in the UI. Maximum length 255 characters.
Example: https://amazing-platform.com/lobby
lang - string · enum · required
The ISO 639-1 language code, applicable to the User in the current session.
Example: en
Available options: aa, ab, ae, af, ak, am, an, ar, as, av, ay, az, ba, be, bg, bh, bi, bm, bn, bo, br, bs, ca, ce, ch, co, cr, cs, cu, cv, cy, da, de, dv, dz, ee, el, en, eo, es, et, eu, fa, ff, fi, fj, fo, fr, fy, ga, gd, gl, gn, gu, gv, ha, he, hi, ho, hr, ht, hu, hy, hz, ia, id, ie, ig, ii, ik, io, is, it, iu, ja, jv, ka, kg, ki, kj, kk, kl, km, kn, ko, kr, ks, ku, kv, kw, ky, la, lb, lg, li, ln, lo, lt, lu, lv, mg, mh, mi, mk, ml, mn, mr, ms, mt, my, na, nb, nd, ne, ng, nl, nn, no, nr, nv, ny, oc, oj, om, or, os, pa, pi, pl, ps, pt, pt-br, qu, rm, rn, ro, ru, rw, sa, sc, sd, se, sg, si, sk, sl, sm, sn, so, sq, sr, ss, st, su, sv, sw, ta, te, tg, th, ti, tk, tl, tn, to, tr, ts, tt, tw, ty, ug, uk, ur, uz, ve, vi, vo, wa, wo, xh, yi, yo, za, zh, zu
ip - string · required
The user's IP address.
Example: 142.245.172.168
game_code - string · required
The unique game identifier in Nirova system in the form of a string. game_code
can be obtained from the /game/list
endpoint.
Example: clt_softwareid
deposit_url - string · optional
The page URL where a user/user can make a monetary deposit.
Example: https://amazing-platform.com/deposit
currency - string · enum · required
The ISO 4217 currency code. The following list contains all currencies supported by our system. Native gameplay support for these currencies may vary per Provider.
Example: EUR
Available options: BSD, TTD, ZMW, BMD, USD, BYR, UGX, HKD, MGA, GIP, UZS, MKD, PTS, mLTC, EGP, AWG, CZK, ILS, MZN, TND, XPF, SOS, DOP, RUB, KRW, BTN, KGS, BAM, AOA, SOC, AMS, BND, RSD, FKP, PEN, EOS, GHS, JPY, TRY, SBD, UAH, LTL, FJD, GNF, MDL, AFN, ZAR, MOP, TJS, BOB, JMD, QAR, IRR, SYP, XXX, NAD, MYR, CUP, NOK, BGN, KPW, MNT, NZD, uETH, SGD, PYG, OMR, DZD, EUR, TMT, MMK, PTQ, ANG, TZS, CRC, CVE, SET, BTH, BZD, LYD, CHF, MVR, KES, CVE, LSL, KMF, SZL, KYD, BRL, AED, WST, YER, ALL, TRX, HUF, GTQ, uBTC, IDR, MWK, CUC, DKK, TWD, XCD, BBD, LRD, KZT, JOD, BYN, BIF, PLN, SDG, VUV, SEK, BDT, HNL, BWP, VND, ISK, SLL, BHD, HTG, USDt, ADA, MUR, ERN, uLTC, LKR, COP, GEL, AUD, GBP, CAD, PHP, PAB, DJF, GMD, PKR, NIO, AMD, RWF, RON, NGN, TOP, UYU, AZN, SRD, KWD, PGK, CDF, SAR, IQD, XRP, SCR, mETH, MAD, GYD, INR, LBP, ARS, MXN, CLP, BNB, CNY, KHR, LAK, HRK, BZD, SSP, XOF, XAF, MRU, NPR, mBTC
game_currency - string · enum · optional
The ISO 4217 currency code. Native gameplay support with these currencies may vary per Provider.
Example: EUR
Available options: BSD, TTD, ZMW, BMD, USD, BYR, UGX, HKD, MGA, GIP, UZS, MKD, PTS, mLTC, EGP, AWG, CZK, ILS, MZN, TND, XPF, SOS, DOP, RUB, KRW, BTN, KGS, BAM, AOA, SOC, AMS, BND, RSD, FKP, PEN, EOS, GHS, JPY, TRY, SBD, UAH, LTL, FJD, GNF, MDL, AFN, ZAR, MOP, TJS, BOB, JMD, QAR, IRR, SYP, XXX, NAD, MYR, CUP, NOK, BGN, KPW, MNT, NZD, uETH, SGD, PYG, OMR, DZD, EUR, TMT, MMK, PTQ, ANG, TZS, CRC, CVE, SET, BTH, BZD, LYD, CHF, MVR, KES, CVE, LSL, KMF, SZL, KYD, BRL, AED, WST, YER, ALL, TRX, HUF, GTQ, uBTC, IDR, MWK, CUC, DKK, TWD, XCD, BBD, LRD, KZT, JOD, BYN, BIF, PLN, SDG, VUV, SEK, BDT, HNL, BWP, VND, ISK, SLL, BHD, HTG, USDt, ADA, MUR, ERN, uLTC, LKR, COP, GEL, AUD, GBP, CAD, PHP, PAB, DJF, GMD, PKR, NIO, AMD, RWF, RON, NGN, TOP, UYU, AZN, SRD, KWD, PGK, CDF, SAR, IQD, XRP, SCR, mETH, MAD, GYD, INR, LBP, ARS, MXN, CLP, BNB, CNY, KHR, LAK, HRK, BZD, SSP, XOF, XAF, MRU, NPR, mBTC
country - string · enum · required
The ISO 3166-1 country code, applicable to the User in the current session.
Example: EE
Available options: XX, AD, AE, AF, AG, AI, AL, AM, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CR, CU, CV, CW, CX, CY, CZ, DE, DJ, DK, DM, DO, DZ, EC, EE, EG, EH, ER, ES, ET, FI, FJ, FK, FM, FO, FR, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SV, SX, SY, SZ, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TR, TT, TV, TW, TZ, UA, UG, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, YE, YT, ZA, ZM, ZW
{"url":"https://the-best-game-provider.com/the-game?session=d4d73882-b3fb-11e7-a3a6-58404eea6d16"}
{"error":"The `operator_id` does not correspond to any existing Operators."}
POST /operator/generic/v2/game/round HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 121
{
"user": "john12345",
"transaction_uuid": "16d2dcfe-b89e-11e7-854a-58404eea6d16",
"round": "rNEMwgzJAOZ6eR3V",
"operator_id": 1
}
The endpoint allows to retrieve details of a game round
. round or transaction_uuid
must be passed for the request to pass.
uX-Nirova-Signature - any · required
RSA-SHA256 is used to sign the request body using the private key. The signature is validated using the public key associated with the provided operator_id
.
user - string · min: 3 · required
The unique user ID in the Operator’s system. In case of DEMO gameplay, this parameter may be omitted.
Example: john12345
transaction_uuid - string · optional
The transaction identifier, which you recive from us through the API during a gameplay.
Example: 16d2dcfe-b89e-11e7-854a-58404eea6d16
round - string · required
The round identifier, which you recive from us through the API during a gameplay.
Example: rNEMwgzJAOZ6eR3V
operator_id - integer · required
Unique identifier for the Operator in Nirova system. Used to authorize incoming requests. You can obtain your operator_id
from the Nirova BackOffice after your Operator entity is registered and set up in the Nirova system by the internal teams.
Example: 1
{"url":"https://the-best-game-provider.com/roundCheck?round=rNEMwgzJAOZ6eR3V"}
{"url":"https://error-page.host/error?message=round-is-still-unfinished"}
POST /operator/generic/v2/game/list HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 17
{
"operator_id": 1
}
Provides a list of games that are available for the Operator.
uX-Nirova-Signature - any · required
RSA-SHA256 is used to sign the request body using the private key. The signature is validated using the public key associated with the provided operator_id
.
operator_id - integer · required
Unique identifier for the Operator in Nirova system. Used to authorize incoming requests. You can obtain your operator_id
from the Nirova BackOffice after your Operator entity is registered and set up in the Nirova system by the internal teams.
Example: 1
[
{
"url_thumb": "https://picture-hosting.com/blackjack/thumb.png",
"url_background": "https://picture-hosting.com/blackjack/bg.png",
"product": "OneTouch",
"platforms": [
"GPL_DESKTOP",
"GPL_MOBILE"
],
"name": "Classic",
"game_code": "ont_classic",
"reward_support": true,
"phoenix_jackpot_support": false,
"enabled": true,
"category": "Blackjack",
"blocked_countries": [
"PL",
"BG"
],
"release_date": "2017-11-05",
"volatility": 1,
"rtp": "98.8",
"paylines": 0,
"hit_ratio": "45.50",
"certifications": [
"CURACAO",
"MGA",
"IOM"
],
"languages": [
"eng",
"jpn",
"kor",
"deu"
],
"technology": [
"HTML5"
],
"features": [
"Bonus Buy",
"Bonus Rounds",
"Network ",
"In-game "
]
}
]
{"error":"The `operator_id` does not correspond to any existing Operators."}