ebit-api api — REST API reference¶
Auto-generated from openapi/api.openapi.json (OpenAPI 3.0.0, Evospin API v1.0). For exhaustive parameter details — including every nested DTO field — open the live Swagger at http://localhost:4000/swagger.
317 endpoints across 59 tags.
Tags¶
- Accounting API — 4 endpoints
- Admin Accounting API — 4 endpoints
- Admin Affiliate API — 8 endpoints
- Admin Affiliate Streamer API — 3 endpoints
- Admin Bets API — 1 endpoints
- Admin Casino API — 16 endpoints
- Admin Challenge API — 9 endpoints
- Admin Core API — 3 endpoints
- Admin Country API — 3 endpoints
- Admin Dashboard API — 7 endpoints
- Admin Dashboard API V2 — 8 endpoints
- Admin FAQ API — 3 endpoints
- Admin Key API — 3 endpoints
- Admin Leaderboard API — 8 endpoints
- Admin Payments API — 10 endpoints
- Admin Rakeback API — 2 endpoints
- Admin Registration Info API — 1 endpoints
- Admin Tips API — 4 endpoints
- Admin User API — 24 endpoints
- Admin User Limits API — 5 endpoints
- Admin withdrawals block API — 3 endpoints
- AdminBetQueue — 1 endpoints
- Affiliate API — 8 endpoints
- Affiliates External API — 1 endpoints
- Authorization API — 9 endpoints
- Bets API — 5 endpoints
- BotActivity — 5 endpoints
- Casino API — 36 endpoints
- Challenge API — 3 endpoints
- Coming Soon API — 1 endpoints
- Core API — 3 endpoints
- Country API — 1 endpoints
- Currency — 1 endpoints
- Debug API — 13 endpoints
- Exchange Rates API — 1 endpoints
- FAQ API — 2 endpoints
- FAST_TRACK external auth — 1 endpoints
- Fairness API — 4 endpoints
- FastTrack — 7 endpoints
- FastTrackDebug — 5 endpoints
- GEO Restrictions API — 1 endpoints
- KYC API — 3 endpoints
- KYC Admin API — 3 endpoints
- Leaderboard API — 3 endpoints
- Notifications API — 3 endpoints
- Payments API — 8 endpoints
- Payments SkinDeck API — 2 endpoints
- Promo API — 4 endpoints
- Promo Admin API — 12 endpoints
- Rakeback API — 2 endpoints
- Session API — 4 endpoints
- Sportsbook exteranal GR8 ( auth ) — 2 endpoints
- Sportsbook external GR8 — 3 endpoints
- User API — 13 endpoints
- User Limits API — 3 endpoints
- User tips API — 3 endpoints
- VipApplication — 3 endpoints
- VipApplicationAdmin — 4 endpoints
- Webhooks — 5 endpoints
Conventions¶
- Base URL (local):
http://localhost:4000 - Auth:
bearersecurity scheme — JWT presented asAuthorization: Bearer <token>or as theaccess_tokenHTTP-only cookie set byPOST /auth/sign-in. The legacy admin-fe also readsjwt_access_token; seeauth-flow.md. - Captcha bypass (local only): any endpoint guarded by
RecaptchaGuardacceptsx-captcha-token: passwhen the API runs withNODE_ENV=local(apps/api/src/captcha/google/recaptcha.service.ts:28). The bypass is silently rejected in staging/prod. - Schema rendering: request/response bodies link to the schema name (e.g.
SignInDto). For nested fields and validation rules, use live Swagger. - Tracing context (api.md only): auto HTTP spans come from
@opentelemetry/instrumentation-nestjs-core; per-endpoint notes call out manualtracer.startActiveSpanwraps and known blind spots fromdocs/audits/perf-trace-coverage-audit.md.
Accounting API¶
GET /accounting/balances¶
Accounting_getBalances
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: array of
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
amount |
string | req | |
usdAmount |
string | req | |
updatedAt |
string | req |
Sample curl
Tracing context: Auto HTTP + Prisma single-row read. Continuous trace.
POST /accounting/from-vault¶
Accounting_fromVault
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
amount |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
amount |
string | req | |
usdAmount |
string | req | |
vaultAmount |
string | req | |
beforeBalance |
string | req | |
afterBalance |
string | req | |
beforeVaultBalance |
string | req | |
afterVaultBalance |
string | req | |
updatedAt |
string | req |
Sample curl
curl -X POST http://localhost:4000/accounting/from-vault \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /accounting/to-vault¶
Accounting_toVault
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
amount |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
amount |
string | req | |
usdAmount |
string | req | |
vaultAmount |
string | req | |
beforeBalance |
string | req | |
afterBalance |
string | req | |
beforeVaultBalance |
string | req | |
afterVaultBalance |
string | req | |
updatedAt |
string | req |
Sample curl
curl -X POST http://localhost:4000/accounting/to-vault \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /accounting/vault-balances¶
Accounting_getVaultBalances
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: array of
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
vaultAmount |
string | req | |
usdAmount |
string | opt | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Accounting API¶
GET /admin/accounting/balances¶
(Permission) Returns balances for a user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
query | req | number |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
amount |
string | req | |
usdAmount |
string | req | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/accounting/transactions¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
sortBy |
string | req | |
sortOrder |
string | req | |
where |
ref→TransactionFilterDto | opt | |
page |
number | req | |
take |
number | req |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/accounting/transactions \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/accounting/usd-balance/{userId}¶
(Permission) Returns USD balance for a user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
usdAmount |
string | req |
Sample curl
curl -X GET http://localhost:4000/admin/accounting/usd-balance/{userId} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/accounting/vault-balances¶
(Permission) Returns vault balances for a user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
query | req | number |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
vaultAmount |
string | req | |
usdAmount |
string | opt | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Affiliate API¶
POST /admin/affiliate¶
(Permission) Find many affiliates
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
sortBy |
string | req | |
sortOrder |
string | req | |
where |
ref→FindManyAffiliateWhere | opt | |
page |
number | req | |
take |
number | req |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/affiliate \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/affiliate/code¶
(Permission) Delete an affiliate code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
string | req | The code of the affiliate code |
Response 200: (no body)
Sample curl
curl -X DELETE http://localhost:4000/admin/affiliate/code \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/affiliate/code¶
(Permission) Create an affiliate code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
string | req | The code of the affiliate code |
userId |
number | req | The id of the user to create the affiliate code for |
Response 201:
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
usersCount |
number | opt |
Sample curl
curl -X POST http://localhost:4000/admin/affiliate/code \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/affiliate/find-one¶
(Permission) Get affiliate (short)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
where |
ref→FindOneAffiliateWhere | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
usersWageredUsdAmount |
string | req | |
referralCount |
number | req | |
activeReferrals |
number | req | |
canClaim |
boolean | req | |
currentLevel |
ref→AffiliateLevelDto | req | |
nextLevel |
? | req |
Sample curl
curl -X POST http://localhost:4000/admin/affiliate/find-one \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/affiliate/find-one-extended¶
(Permission) Get affiliate
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
where |
ref→FindOneAffiliateWhere | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
earnedCommissions |
string | req | |
unclaimedCommissions |
string | req | |
userId |
number | req | |
level |
ref→AffiliateLevel | req | |
referrals |
ref→AdminAffiliateUsersAggregatedStatsDto | req | |
user |
ref→UserDto | req |
Sample curl
curl -X POST http://localhost:4000/admin/affiliate/find-one-extended \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/affiliate/find-one-stats¶
(Permission) Get affiliate stats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
where |
ref→FindOneAffiliateWhere | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
totalClaimedUsdAmount |
string | req | |
claimableUsdAmount |
string | req | |
totalWageredUsdAmount |
string | req | |
referrals |
number | req |
Sample curl
curl -X POST http://localhost:4000/admin/affiliate/find-one-stats \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/affiliate/levels¶
(Permission) Get affiliate levels
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: array of
| field | type | required | description |
|---|---|---|---|
minWageredUsdAmount |
string | req | |
id |
number | req | |
name |
string | req | |
commission |
string | req | |
minReferralCountForClaim |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/affiliate/users¶
(Permission) Get affiliate users
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
sortBy |
string | req | |
sortOrder |
string | req | |
where |
ref→FindManyAffiliateUsersWhere | req | |
page |
number | req | |
take |
number | req |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/affiliate/users \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Affiliate Streamer API¶
POST /admin/affiliate/streamer¶
(Permission) Find many streamer affiliates
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
sortBy |
string | req | |
sortOrder |
string | req | |
page |
number | req | |
take |
number | req |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
Sample curl
curl -X POST http://localhost:4000/admin/affiliate/streamer \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/affiliate/streamer/referrals¶
(Permission) Find many referrals of a streamer affiliate
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
sortBy |
string | req | |
sortOrder |
string | req | |
where |
ref→AffiliateStreamerReferralWhere | opt | |
page |
number | req | |
take |
number | req |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
Sample curl
curl -X POST http://localhost:4000/admin/affiliate/streamer/referrals \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/affiliate/streamer/{id}¶
(Permission) Find one streamer affiliate
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
level |
ref→AffiliateLevel | req | |
codes |
array | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Bets API¶
POST /admin/bets¶
(Permission) View user bets
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
sortBy |
string | req | |
sortOrder |
string | req | |
where |
ref→BetsFilterDto | opt | |
page |
number | req | |
take |
number | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/bets \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Casino API¶
GET /admin/casino/games/all¶
GamesAdmin_findManyGames
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
query | opt | number | |
category |
query | opt | string | |
type |
query | opt | string | |
providerId |
query | opt | number | |
sortOrder |
query | req | string | |
sortBy |
query | req | string | |
enabled |
query | opt | boolean | |
withInfo |
query | opt | boolean | |
slug |
query | opt | string | |
name |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/casino/games/commission¶
GamesAdmin_deleteProviderGameGgrCommission
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
category |
string | req | |
providerId |
number | req | |
gameId |
number | req |
Response 200: (no body)
Sample curl
curl -X DELETE http://localhost:4000/admin/casino/games/commission \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/casino/games/commission¶
GamesAdmin_findManyProviderGameGgrCommission
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
providerId |
query | opt | number | |
category |
query | opt | string | |
gameId |
query | opt | number | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/casino/games/commission¶
Update ggr commission rule. providerId, category, gameId are used instead of Id. If rule not found - 404 will be returned. For creating use PUT method
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
category |
string | req | |
ggrPercent |
string | req | GGR commission rate % for each bet by provider |
providerId |
number | req | |
gameId |
number | req | |
payload |
? | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
ggrPercent |
string | req | |
category |
string | req | |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
providerId |
number | req | |
gameId |
number | req | |
payload |
? | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/casino/games/commission \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/casino/games/commission¶
Create ggr commission rule
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
category |
string | req | |
ggrPercent |
string | req | GGR commission rate % for each bet by provider |
providerId |
number | req | |
gameId |
number | req | |
payload |
? | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
ggrPercent |
string | req | |
category |
string | req | |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
providerId |
number | req | |
gameId |
number | req | |
payload |
? | req |
Sample curl
curl -X PUT http://localhost:4000/admin/casino/games/commission \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/casino/games/commission/{id}¶
GamesAdmin_findUniqueProviderGameGgrCommissionByGameId
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
ggrPercent |
string | req | |
category |
string | req | |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
providerId |
number | req | |
gameId |
number | req | |
payload |
? | req |
Sample curl
curl -X GET http://localhost:4000/admin/casino/games/commission/{id} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/casino/games/house/settings¶
Get house game settings
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: object (schema: GameIdentitySettingsDto)
Sample curl
curl -X GET http://localhost:4000/admin/casino/games/house/settings \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/casino/games/house/settings¶
Update house game settings. Only for house games. Not set games will be ignored
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
plinko |
ref→PlinkoGameConfigDto | opt | |
dice |
ref→DiceGameConfigDto | opt | |
mines |
ref→MinesGameConfigDto | opt | |
monkey-run |
ref→MonkeyRunGameConfigDto | opt | |
limbo |
ref→LimboGameConfigDto | opt | |
roulette |
ref→RouletteGameConfigDto | opt | |
keno |
ref→KenoGameConfigDto | opt | |
blackjack |
ref→RouletteGameConfigDto | opt | |
speed-roulette |
ref→SpeedRouletteGameConfigDto | opt |
Response 201: object (schema: GameIdentitySettingsDto)
Sample curl
curl -X POST http://localhost:4000/admin/casino/games/house/settings \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/casino/games/hydrate¶
(Obsolete) Fetch slot games from CDN. Only adds new games. Existing will be skipped
Hydrates is executed automatically every 12 hours
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 201: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/casino/games/main¶
Update one category on main page. Up to 20 games per category
Each slug should be unique and existing.
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
category |
string | req | |
slugs |
array | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X POST http://localhost:4000/admin/casino/games/main \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/casino/games/providers¶
GamesAdmin_findManyProviders
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortOrder |
query | req | string | |
sortBy |
query | req | string | |
enabled |
query | opt | boolean | |
gameCategory |
query | opt | string | |
name |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/casino/games/providers/{slug}¶
GamesAdmin_findUniqueProvider
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
slug |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
name |
string | req | |
originName |
string | req | |
createdAt |
string | req | |
slug |
string | req | |
prefix |
string | req | |
enabled |
boolean | req | |
gamesCount |
number | opt | |
images |
? | req | |
customImages |
? | req |
Sample curl
curl -X GET http://localhost:4000/admin/casino/games/providers/{slug} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/casino/games/providers/{slug}/images¶
GamesAdmin_updateProviderImage
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
slug |
path | req | string |
Request body (multipart/form-data):
| field | type | required | description |
|---|---|---|---|
image |
file | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
name |
string | req | |
originName |
string | req | |
createdAt |
string | req | |
slug |
string | req | |
prefix |
string | req | |
enabled |
boolean | req | |
gamesCount |
number | opt | |
images |
? | req | |
customImages |
? | req |
Sample curl
curl -X POST http://localhost:4000/admin/casino/games/providers/{slug}/images \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/casino/games/{slug}¶
GamesAdmin_findUniqueGame
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
slug |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
categories |
array | req | |
id |
number | req | |
createdAt |
string | req | |
addedAt |
string | req | |
lastPlayedAt |
string | req | |
slug |
string | req | |
name |
string | req | |
providerId |
number | req | |
walletId |
string | req | |
provider |
ref→GameProviderDto | req | |
enabled |
boolean | req | |
tags |
array | req | |
originalSlug |
string | req | |
info |
? | req | |
settings |
? | req | |
images |
? | req | |
customImages |
? | req | |
promoGameWhitelist |
array | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/casino/games/{slug}¶
Update provider image. Will never delete original image
Public API will return custom image if available. Otherwise original will be used
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
slug |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
category |
string | opt | |
rtp |
number | opt | |
enabled |
boolean | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
categories |
array | req | |
id |
number | req | |
createdAt |
string | req | |
addedAt |
string | req | |
lastPlayedAt |
string | req | |
slug |
string | req | |
name |
string | req | |
providerId |
number | req | |
walletId |
string | req | |
provider |
ref→GameProviderDto | req | |
enabled |
boolean | req | |
tags |
array | req | |
originalSlug |
string | req | |
info |
? | req | |
settings |
? | req | |
images |
? | req | |
customImages |
? | req | |
promoGameWhitelist |
array | req |
Sample curl
curl -X POST http://localhost:4000/admin/casino/games/{slug} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/casino/games/{slug}/images¶
Update game image. Will never delete original image
Public API will return custom image if available. Otherwise original will be used
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
slug |
path | req | string |
Request body (multipart/form-data):
| field | type | required | description |
|---|---|---|---|
image |
file | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
categories |
array | req | |
id |
number | req | |
createdAt |
string | req | |
addedAt |
string | req | |
lastPlayedAt |
string | req | |
slug |
string | req | |
name |
string | req | |
providerId |
number | req | |
walletId |
string | req | |
provider |
ref→GameProviderDto | req | |
enabled |
boolean | req | |
tags |
array | req | |
originalSlug |
string | req | |
info |
? | req | |
settings |
? | req | |
images |
? | req | |
customImages |
? | req | |
promoGameWhitelist |
array | req |
Sample curl
curl -X POST http://localhost:4000/admin/casino/games/{slug}/images \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Challenge API¶
GET /admin/challenge¶
AdminChallenge_findManyChallenges
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
isFinished |
query | opt | boolean | |
winnerSearch |
query | opt | string | Search for a winner by id, slug |
isHidden |
query | opt | boolean | |
gameSlug |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/challenge¶
Create a new challenge. Default gameImage will be used by default
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
gameSlug |
string | req | |
minBetMultiplier |
number | req | |
isHidden |
boolean | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
rewardUsdAmount |
string | opt | Challenge reward amount converted to USDT |
validBetsCount |
number | opt | Number of valid bets for the challenge (Not implemented) |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
defaultTitle |
string | req | |
title |
string | req | |
imageUrl |
string | req | |
creator |
ref→UserShortPrivateDto | req | |
targetGame |
ref→GameIdentityShortDto | req | |
isHidden |
boolean | req | |
minBetMultiplier |
number | req | |
winner |
? | req | |
winnerSelectedAt |
string | req | |
winnerConfirmedBy |
? | req | |
betId |
string | req |
Sample curl
curl -X PUT http://localhost:4000/admin/challenge \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/challenge/{id}¶
Deletes a challenge only if it's not finished
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
rewardUsdAmount |
string | opt | Challenge reward amount converted to USDT |
validBetsCount |
number | opt | Number of valid bets for the challenge (Not implemented) |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
defaultTitle |
string | req | |
title |
string | req | |
imageUrl |
string | req | |
creator |
ref→UserShortPrivateDto | req | |
targetGame |
ref→GameIdentityShortDto | req | |
isHidden |
boolean | req | |
minBetMultiplier |
number | req | |
winner |
? | req | |
winnerSelectedAt |
string | req | |
winnerConfirmedBy |
? | req | |
betId |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/challenge/{id}¶
AdminChallenge_findUniqueChallenge
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
rewardUsdAmount |
string | opt | Challenge reward amount converted to USDT |
validBetsCount |
number | opt | Number of valid bets for the challenge (Not implemented) |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
defaultTitle |
string | req | |
title |
string | req | |
imageUrl |
string | req | |
creator |
ref→UserShortPrivateDto | req | |
targetGame |
ref→GameIdentityShortDto | req | |
isHidden |
boolean | req | |
minBetMultiplier |
number | req | |
winner |
? | req | |
winnerSelectedAt |
string | req | |
winnerConfirmedBy |
? | req | |
betId |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/challenge/{id}¶
AdminChallenge_updateChallenge
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
gameSlug |
string | opt | Game slug to identify the target game |
minBetAmountUsd |
string | opt | Minimum bet amount in USD required to enter the challenge |
minBetMultiplier |
number | opt | Minimum bet multiplier required to enter the challenge |
rewardCurrency |
string | opt | Currency symbol for the challenge reward |
rewardAmount |
string | opt | Amount of reward for the challenge in the specified currency |
isHidden |
boolean | opt | Whether the challenge is hidden from public listings |
Response 200:
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
rewardUsdAmount |
string | opt | Challenge reward amount converted to USDT |
validBetsCount |
number | opt | Number of valid bets for the challenge (Not implemented) |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
defaultTitle |
string | req | |
title |
string | req | |
imageUrl |
string | req | |
creator |
ref→UserShortPrivateDto | req | |
targetGame |
ref→GameIdentityShortDto | req | |
isHidden |
boolean | req | |
minBetMultiplier |
number | req | |
winner |
? | req | |
winnerSelectedAt |
string | req | |
winnerConfirmedBy |
? | req | |
betId |
string | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/challenge/{id} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/challenge/{id}/award¶
Choose a winner for challenge by BetId
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
betId |
string | req | |
sendNotification |
boolean | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
rewardUsdAmount |
string | opt | Challenge reward amount converted to USDT |
validBetsCount |
number | opt | Number of valid bets for the challenge (Not implemented) |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
defaultTitle |
string | req | |
title |
string | req | |
imageUrl |
string | req | |
creator |
ref→UserShortPrivateDto | req | |
targetGame |
ref→GameIdentityShortDto | req | |
isHidden |
boolean | req | |
minBetMultiplier |
number | req | |
winner |
? | req | |
winnerSelectedAt |
string | req | |
winnerConfirmedBy |
? | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/admin/challenge/{id}/award \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/challenge/{id}/bets¶
Returns eligible bets for the challenge. Default search by "bet.settledAt ASC". Old first
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string | |
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
userId |
query | opt | string | |
betId |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/challenge/{id}/image¶
AdminChallenge_updateChallengeImage
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (multipart/form-data):
| field | type | required | description |
|---|---|---|---|
image |
file | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
rewardUsdAmount |
string | opt | Challenge reward amount converted to USDT |
validBetsCount |
number | opt | Number of valid bets for the challenge (Not implemented) |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
defaultTitle |
string | req | |
title |
string | req | |
imageUrl |
string | req | |
creator |
ref→UserShortPrivateDto | req | |
targetGame |
ref→GameIdentityShortDto | req | |
isHidden |
boolean | req | |
minBetMultiplier |
number | req | |
winner |
? | req | |
winnerSelectedAt |
string | req | |
winnerConfirmedBy |
? | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/admin/challenge/{id}/image \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/challenge/{id}/rollback¶
Remove a winner for challenge. Withdraw awarded amount from the user balance
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
reason |
string | req | |
withdrawLessIfNotEnoughBalance |
boolean | req | |
sendNotification |
boolean | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
rewardUsdAmount |
string | opt | Challenge reward amount converted to USDT |
validBetsCount |
number | opt | Number of valid bets for the challenge (Not implemented) |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
defaultTitle |
string | req | |
title |
string | req | |
imageUrl |
string | req | |
creator |
ref→UserShortPrivateDto | req | |
targetGame |
ref→GameIdentityShortDto | req | |
isHidden |
boolean | req | |
minBetMultiplier |
number | req | |
winner |
? | req | |
winnerSelectedAt |
string | req | |
winnerConfirmedBy |
? | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/admin/challenge/{id}/rollback \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Core API¶
PATCH /admin/config/{code}¶
(SuperAdmin) Update site config by code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
code |
path | req | string | COMMON, BATTLES, AFFILIATES, WITHDRAWALS |
Request body (application/json): object (schema: Object)
Response 200: object
Sample curl
curl -X PATCH http://localhost:4000/admin/config/{code} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/logger¶
Logger_getLogLevel
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
level |
object | req | |
expiresAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/logger¶
Logger_setLogLevel
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
level |
object | req | |
ttlSeconds |
number | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
level |
object | req | |
expiresAt |
string | req |
Sample curl
curl -X PUT http://localhost:4000/admin/logger \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Country API¶
GET /admin/country¶
Get country restrictions list
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
status |
query | opt | string | |
search |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/country/stats¶
Get country restrictions stats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
total |
number | req | |
blocked |
number | req | |
allowed |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/country/{code}¶
Update country restriction status
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
code |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
isBlocked |
boolean | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
name |
string | req | |
code |
string | req | |
dialCode |
string | req | |
isBlocked |
boolean | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/country/{code} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Dashboard API¶
GET /admin/dashboard/affiliate-stats¶
AdminDashboard_affiliateQuickStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
startDate |
query | req | string | |
endDate |
query | req | string | |
query |
query | opt | string | Array of values: ReferralsGgr, ReferralsWagger, ReferralsDeposits, ReferralsFTD, |
adminTipsTags |
query | opt | string | Array of values: STREAM_FILL, VIDEO_FILL, PRIVATE_LB_PAYOUT, LOSSBACK, TWITTER_G |
affiliateId |
query | opt | number | |
isStreamer |
query | opt | boolean |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
result |
ref→TStatData | req | |
query |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard/finance-tab¶
AdminDashboard_getFinanceStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
startDate |
query | req | string | |
endDate |
query | req | string | |
query |
query | opt | string | Array of values: Ggr, Ngr, ProfitLoss, RakeBack, LeaderBoard, AffiliateClamed, A |
isStreamer |
query | opt | boolean | |
excludeAdmin |
query | opt | string | |
excludeTest |
query | opt | string | |
excludeStaff |
query | opt | string | |
excludeStreamer |
query | opt | string |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
result |
ref→TStatData | req | |
query |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard/games-charts¶
AdminDashboard_gameChartsStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
startDate |
query | req | string | |
endDate |
query | req | string | |
games |
query | opt | string | Array of values: |
Response 200: array of object
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard/games-stats¶
AdminDashboard_gameQuickStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
startDate |
query | req | string | |
endDate |
query | req | string | |
query |
query | opt | string | Array of values: Ggr, TotalCountAverageBet |
games |
query | opt | string | Array of values: |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
result |
ref→TStatData | req | |
query |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard/providers-stats¶
AdminDashboard_getProvidersStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
startDate |
query | req | string | |
endDate |
query | req | string | |
providers |
query | opt | string | Array of values: |
excludeAdmin |
query | opt | string | |
excludeTest |
query | opt | string | |
excludeStaff |
query | opt | string | |
excludeStreamer |
query | opt | string |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
provider |
string | req | |
sumAmount |
string | req | |
countAmount |
integer | req | |
ggrAmount |
string | req | |
average |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard/quick-stats¶
AdminDashboard_getQuickStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
startDate |
query | req | string | |
endDate |
query | req | string | |
query |
query | opt | string | Array of values: Ggr, Ngr, ProfitLoss, RakeBack, LeaderBoard, AffiliateClamed, A |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
result |
ref→TStatData | req | |
query |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard/users-stats¶
AdminDashboard_getUsersStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
startDate |
query | req | string | |
endDate |
query | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
newUsers |
ref→TStatData | req | |
totalUsers |
ref→TStatData | req | |
onlineUsers |
number | req | |
restrictedUsers |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Dashboard API V2¶
GET /admin/dashboard-v2/game/stats¶
AdminDashboardCombined_getGameStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
timeRange |
query | opt | string | |
startDate |
query | opt | string | |
endDate |
query | opt | string | |
timeGroup |
query | req | string | |
orderBy |
query | opt | string | |
orderDirection |
query | opt | string | |
gameCategory |
query | opt | string | |
providerSlugs |
query | opt | string | Array of values: |
take |
query | opt | number | |
page |
query | opt | number | |
gameSlug |
query | opt | string | |
gameName |
query | opt | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
activePlayersTimeSeries |
array | req | |
turnoverTimeSeries |
array | req | |
arpuTimeSeries |
array | req | |
atpuTimeSeries |
array | req | |
ggrTimeSeries |
array | req | |
ngrTimeSeries |
array | req | |
gameTypeMarginPie |
array | req | |
gameTypeTurnoverPie |
array | req | |
ggrTopGameSlugAnalytics |
array | req | |
ggrWorstGameSlugAnalytics |
array | req | |
gameSlugAnalytics |
array | req | |
activePlayers |
number | req | |
turnover |
number | req | |
atpu |
number | req | |
ggr |
number | req | |
arpu |
number | req | |
margin |
number | req | |
betCount |
number | req | |
abcpu |
number | req | |
averageBetSum |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard-v2/main/options¶
AdminDashboardCombined_getTimeOptions
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: array of
| field | type | required | description |
|---|---|---|---|
timeRange |
string | req | |
timeGroups |
array | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard-v2/main/stats¶
AdminDashboardCombined_getGeneralStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
timeRange |
query | req | string | |
timeGroup |
query | req | string | |
debug |
query | opt | boolean |
Response 200:
| field | type | required | description |
|---|---|---|---|
activePlayersMetrics |
ref→ActivePlayersMetrics | req | |
depositMetrics |
ref→DepositMetrics | req | |
registrationMetrics |
ref→RegistrationMetrics | req | |
turnoverMetrics |
ref→TurnoverMetrics | req | |
ggrMetrics |
ref→GgrMetrics | req | |
ngrMetrics |
ref→NgrMetrics | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard-v2/query/bets-by-type¶
AdminDashboardSeparated_getBetsByType
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
timeRange |
query | opt | string | |
startDate |
query | opt | string | |
endDate |
query | opt | string | |
timeGroup |
query | req | string | |
orderBy |
query | opt | string | |
orderDirection |
query | opt | string | |
gameCategory |
query | opt | string | |
providerSlugs |
query | opt | string | Array of values: |
take |
query | opt | number | |
page |
query | opt | number | |
gameSlug |
query | opt | string | |
gameName |
query | opt | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
activePlayersTimeSeries |
array | req | |
turnoverTimeSeries |
array | req | |
arpuTimeSeries |
array | req | |
atpuTimeSeries |
array | req | |
ggrTimeSeries |
array | req | |
ngrTimeSeries |
array | req |
Sample curl
curl -X GET http://localhost:4000/admin/dashboard-v2/query/bets-by-type \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard-v2/query/games-by-slug¶
AdminDashboardSeparated_getGamesBySlug
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
timeRange |
query | opt | string | |
startDate |
query | opt | string | |
endDate |
query | opt | string | |
timeGroup |
query | req | string | |
orderBy |
query | opt | string | |
orderDirection |
query | opt | string | |
gameCategory |
query | opt | string | |
providerSlugs |
query | opt | string | Array of values: |
take |
query | opt | number | |
page |
query | opt | number | |
gameSlug |
query | opt | string | |
gameName |
query | opt | string |
Response 200: (no body)
Sample curl
curl -X GET http://localhost:4000/admin/dashboard-v2/query/games-by-slug \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard-v2/query/games-by-type¶
AdminDashboardSeparated_getGamesByType
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
timeRange |
query | opt | string | |
startDate |
query | opt | string | |
endDate |
query | opt | string | |
timeGroup |
query | req | string | |
orderBy |
query | opt | string | |
orderDirection |
query | opt | string | |
gameCategory |
query | opt | string | |
providerSlugs |
query | opt | string | Array of values: |
take |
query | opt | number | |
page |
query | opt | number | |
gameSlug |
query | opt | string | |
gameName |
query | opt | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
gameTypeMarginPie |
array | req | |
gameTypeTurnoverPie |
array | req | |
activePlayers |
number | req | |
turnover |
number | req | |
atpu |
number | req | |
ggr |
number | req | |
arpu |
number | req | |
margin |
number | req | |
betCount |
number | req | |
abcpu |
number | req | |
averageBetSum |
number | req | |
ngr |
number | req |
Sample curl
curl -X GET http://localhost:4000/admin/dashboard-v2/query/games-by-type \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard-v2/query/payments¶
AdminDashboardSeparated_getPayments
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
timeRange |
query | opt | string | |
startDate |
query | opt | string | |
endDate |
query | opt | string | |
timeGroup |
query | req | string | |
orderBy |
query | opt | string | |
orderDirection |
query | opt | string | |
gameCategory |
query | opt | string | |
providerSlugs |
query | opt | string | Array of values: |
take |
query | opt | number | |
page |
query | opt | number | |
gameSlug |
query | opt | string | |
gameName |
query | opt | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
depositAmount |
number | req | |
depositAmountTimeSeries |
array | req | |
ratio |
number | req | |
ratioTimeSeries |
array | req | |
withdrawalAmount |
number | req |
Sample curl
curl -X GET http://localhost:4000/admin/dashboard-v2/query/payments \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/dashboard-v2/query/registrations¶
AdminDashboardSeparated_getRegistrations
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
timeRange |
query | opt | string | |
startDate |
query | opt | string | |
endDate |
query | opt | string | |
timeGroup |
query | req | string | |
orderBy |
query | opt | string | |
orderDirection |
query | opt | string | |
gameCategory |
query | opt | string | |
providerSlugs |
query | opt | string | Array of values: |
take |
query | opt | number | |
page |
query | opt | number | |
gameSlug |
query | opt | string | |
gameName |
query | opt | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
registrationCount |
number | req | |
registrationTimeSeries |
array | req | |
firstTimeDepositCount |
number | req | |
firstTimeDepositTimeSeries |
array | req | |
firstTimeDepositPercent |
number | req | |
firstTimeDepositPercentTimeSeries |
array | req |
Sample curl
curl -X GET http://localhost:4000/admin/dashboard-v2/query/registrations \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin FAQ API¶
DELETE /admin/faq¶
AdminFaq_removeFaq
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
number | req |
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/faq¶
AdminFaq_createFaq
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
title |
string | req | |
text |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
title |
string | req | |
text |
string | req | |
order |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/faq¶
AdminFaq_updateFaq
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
title |
string | opt | |
text |
string | opt | |
order |
number | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
title |
string | req | |
text |
string | req | |
order |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Key API¶
POST /admin/api-keys¶
AdminApiKey_createApiKey
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
userId |
number | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
key |
string | req | |
userId |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
curl -X POST http://localhost:4000/admin/api-keys \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/api-keys/{userId}¶
AdminApiKey_disableApiKey
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 204: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/api-keys/{userId}¶
AdminApiKey_getApiKey
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
key |
string | req | |
userId |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Leaderboard API¶
GET /admin/leaderboards¶
AdminLeaderboard_getLeaderboards
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
withUsers |
query | opt | boolean | Adds 50 users to response |
withSchedule |
query | opt | boolean | Adds schedule config to dto |
type |
query | opt | string | |
status |
query | opt | string | |
sortOrder |
query | opt | string | |
sortBy |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/leaderboards/give-prize¶
AdminLeaderboard_givePrize
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
usdAmount |
string | opt | |
currency |
string | req | Choose wallet for giving prize. usdAmount will be converted |
fullUsdAmount |
boolean | opt | |
leaderboardId |
string | req | |
userId |
number | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/leaderboards/give-prize \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/leaderboards/schedule¶
AdminLeaderboard_getLeaderboardSchedules
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: array of
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
enabled |
boolean | req | |
config |
ref→LeaderboardScheduleConfigDto | req | |
leaderboards |
array | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/leaderboards/schedule/{id}¶
AdminLeaderboard_getLeaderboardSchedule
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200: object
Sample curl
curl -X GET http://localhost:4000/admin/leaderboards/schedule/{id} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/leaderboards/schedule/{id}¶
AdminLeaderboard_updateLeaderboardSchedule
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
enabled |
boolean | req | |
name |
string | req | |
description |
string | req | |
prizes |
array | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
enabled |
boolean | req | |
config |
ref→LeaderboardScheduleConfigDto | req | |
leaderboards |
array | req |
Sample curl
curl -X POST http://localhost:4000/admin/leaderboards/schedule/{id} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/leaderboards/{leaderboardId}¶
AdminLeaderboard_getLeaderboard
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
leaderboardId |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
status |
string | req | |
id |
string | req | |
name |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
description |
string | req | |
config |
object | req | |
startDate |
string | req | |
endDate |
string | req | |
scheduleId |
string | req | |
leaderboardUsers |
array | opt |
Sample curl
curl -X GET http://localhost:4000/admin/leaderboards/{leaderboardId} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/leaderboards/{leaderboardId}/users¶
AdminLeaderboard_getLeaderboardUsers
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
leaderboardId |
path | req | string | |
search |
query | opt | string | Search by user id, name or email |
isWinner |
query | opt | boolean | |
isWaitingForPrice |
query | opt | boolean | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
curl -X GET http://localhost:4000/admin/leaderboards/{leaderboardId}/users \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/leaderboards/{leaderboardId}/users/{userId}¶
AdminLeaderboard_getLeaderboardUser
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
leaderboardId |
path | req | string | |
userId |
path | req | number |
Response 200: object
Sample curl
curl -X GET http://localhost:4000/admin/leaderboards/{leaderboardId}/users/{userId} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Payments API¶
GET /admin/payments/deposit¶
(Permission) Get deposits
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
status |
query | opt | string | |
userId |
query | opt | number | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/payments/deposit/{id}¶
AdminDeposit_getOne
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
status |
string | req | |
usdAmount |
string | req | |
networkId |
string | req | |
affiliateAmount |
string | req | |
depositBonus |
string | req | |
id |
string | req | |
txHash |
string | req | |
createdAt |
string | req | |
userId |
number | req | |
payAddress |
string | req | |
payMemo |
string | req | |
user |
ref→UserShortPrivateDto | opt | |
affiliateCodeId |
string | req | |
externalId |
string | req | |
providerId |
object | req | |
transactionId |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/payments/withdraw¶
(Permission) Get withdrawals
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
status |
query | opt | string | |
userId |
query | opt | number | |
username |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/payments/withdraw/approve¶
AdminWithdraw_approve
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
status |
string | req | |
usdAmount |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
recipientAddress |
string | req | |
recipientMemo |
string | req | |
confirmedAt |
string | req | |
confirmations |
number | req | |
rejectReason |
string | req | |
updatedAt |
string | req | |
transactionId |
string | req | |
id |
string | req | |
txHash |
string | req | |
createdAt |
string | req | |
user |
object | opt | |
confirmedByUser |
? | req | |
failedReason |
string | req | |
confirmedByUserId |
number | req |
Sample curl
curl -X POST http://localhost:4000/admin/payments/withdraw/approve \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/payments/withdraw/fetch/{id}¶
AdminWithdraw_getOneWithUpdate
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
status |
string | req | |
usdAmount |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
recipientAddress |
string | req | |
recipientMemo |
string | req | |
confirmedAt |
string | req | |
confirmations |
number | req | |
rejectReason |
string | req | |
updatedAt |
string | req | |
transactionId |
string | req | |
id |
string | req | |
txHash |
string | req | |
createdAt |
string | req | |
user |
object | opt | |
confirmedByUser |
? | req | |
failedReason |
string | req | |
confirmedByUserId |
number | req |
Sample curl
curl -X GET http://localhost:4000/admin/payments/withdraw/fetch/{id} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/payments/withdraw/reject¶
AdminWithdraw_reject
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
rejectReason |
string | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/payments/withdraw/reject \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/payments/withdraw/retry¶
AdminWithdraw_retry
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
status |
string | req | |
usdAmount |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
recipientAddress |
string | req | |
recipientMemo |
string | req | |
confirmedAt |
string | req | |
confirmations |
number | req | |
rejectReason |
string | req | |
updatedAt |
string | req | |
transactionId |
string | req | |
id |
string | req | |
txHash |
string | req | |
createdAt |
string | req | |
user |
object | opt | |
confirmedByUser |
? | req | |
failedReason |
string | req | |
confirmedByUserId |
number | req |
Sample curl
curl -X POST http://localhost:4000/admin/payments/withdraw/retry \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/payments/withdraw/stats¶
AdminWithdraw_stats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
total |
number | req | |
waitingForApproval |
number | req | |
approved |
number | req | |
rejected |
number | req | |
failed |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/payments/withdraw/stats/{userId}¶
AdminWithdraw_statsByUserId
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
total |
number | req | |
waitingForApproval |
number | req | |
approved |
number | req | |
rejected |
number | req | |
failed |
number | req |
Sample curl
curl -X GET http://localhost:4000/admin/payments/withdraw/stats/{userId} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/payments/withdraw/{id}¶
AdminWithdraw_getOne
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
status |
string | req | |
usdAmount |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
recipientAddress |
string | req | |
recipientMemo |
string | req | |
confirmedAt |
string | req | |
confirmations |
number | req | |
rejectReason |
string | req | |
updatedAt |
string | req | |
transactionId |
string | req | |
id |
string | req | |
txHash |
string | req | |
createdAt |
string | req | |
user |
object | opt | |
confirmedByUser |
? | req | |
failedReason |
string | req | |
confirmedByUserId |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Rakeback API¶
POST /admin/rakeback/find-many¶
(Permission) Get rakebacks
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
where |
ref→FindManyRakebackWhere | req |
Response 201: array of
| field | type | required | description |
|---|---|---|---|
instantClaimable |
string | req | |
instantTotalClaimed |
string | req | |
dailyClaimable |
string | req | |
dailyTotalClaimed |
string | req | |
dailyAccumulated |
string | req | |
weeklyClaimable |
string | req | |
weeklyTotalClaimed |
string | req | |
weeklyAccumulated |
string | req | |
monthlyClaimable |
string | req | |
monthlyTotalClaimed |
string | req | |
monthlyAccumulated |
string | req | |
userId |
number | req | |
currencyId |
object | req | |
updatedAt |
string | req |
Sample curl
curl -X POST http://localhost:4000/admin/rakeback/find-many \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/rakeback/find-one-claimable-usd¶
(Permission) Get rakebacks
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
query | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
instant |
string | req | |
daily |
string | req | |
weekly |
string | req | |
monthly |
string | req | |
userId |
number | req |
Sample curl
curl -X GET http://localhost:4000/admin/rakeback/find-one-claimable-usd \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Registration Info API¶
GET /admin/registration-info/{userId}¶
(SuperAdmin) Get registration info by userId
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
ipAddress |
string | req | |
createdAt |
string | req | |
userId |
number | req | |
device |
string | req | |
countryCode |
string | req | |
language |
string | req | |
browser |
string | req | |
os |
string | req | |
deviceType |
string | req | |
userAgent |
string | req | |
referrer |
string | req | |
user |
ref→RegistrationInfoUserDto | req |
Sample curl
curl -X GET http://localhost:4000/admin/registration-info/{userId} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin Tips API¶
GET /admin-tips¶
AdminTips_findMany
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/admin-tips¶
(Permission) Get admin tips history
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
senderUserId |
query | opt | number | |
recipientUserId |
query | opt | number | |
senderOrRecipientUserId |
query | opt | number | |
search |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/admin-tips¶
(Permission) Tip user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
tag |
string | opt | |
recipientUserId |
number | req | |
notes |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X POST http://localhost:4000/admin/admin-tips \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/admin-tips/deduct-balance¶
(Permission) Deduct balance from user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
tag |
string | opt | |
recipientUserId |
number | req | |
notes |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X POST http://localhost:4000/admin/admin-tips/deduct-balance \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin User API¶
GET /admin/user-notes¶
AdminNotes_findManyNotes
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
search |
query | opt | string | You can search by note text, username, user ID, and user email |
userId |
query | opt | number | User ID to filter notes by |
riskLevel |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/user-notes¶
AdminNotes_updateNote
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
riskLevel |
string | opt | |
id |
number | req | |
note |
string | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
riskLevel |
string | req | |
id |
number | req | |
note |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdBy |
ref→UserShortPrivateDto | req | |
user |
ref→UserShortPrivateDto | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/user-notes \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/user-notes¶
AdminNotes_createNote
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
riskLevel |
string | opt | |
note |
string | req | |
userId |
number | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
riskLevel |
string | req | |
id |
number | req | |
note |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdBy |
ref→UserShortPrivateDto | req | |
user |
ref→UserShortPrivateDto | req |
Sample curl
curl -X POST http://localhost:4000/admin/user-notes \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/user-notes/{id}¶
AdminNotes_deleteNote
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
riskLevel |
string | req | |
id |
number | req | |
note |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdBy |
ref→UserShortPrivateDto | req | |
user |
ref→UserShortPrivateDto | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user-notes/{id}¶
AdminNotes_findNote
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
riskLevel |
string | req | |
id |
number | req | |
note |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdBy |
ref→UserShortPrivateDto | req | |
user |
ref→UserShortPrivateDto | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/user/add-single-role¶
(SuperAdmin)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
username |
string | req | |
role |
object | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
curl -X PUT http://localhost:4000/admin/user/add-single-role \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user/admin-audit¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
reqType |
query | opt | string | Array of values: Informational, Successful, Redirection, Client_Error, Server_Er |
userId |
query | opt | number | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/user/admin-user¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
username |
string | req | |
password |
string | req | |
email |
string | opt | |
permissions |
array | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
curl -X POST http://localhost:4000/admin/user/admin-user \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/user/all¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
sortBy |
string | req | |
sortOrder |
string | req | |
isBanned |
boolean | opt | |
withPermissions |
boolean | req | |
withRoles |
boolean | req | |
withNotes |
boolean | req | |
role |
string | opt | |
withBalance |
boolean | req | |
withStatsUsd |
boolean | req | |
search |
string | opt | |
where |
ref→UserFilterDto | opt | |
page |
number | req | |
take |
number | req |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/user/all \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user/all-permissions¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user/get-admins-with-roles¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
curl -X GET http://localhost:4000/admin/user/get-admins-with-roles \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user/get-all-roles-with-users¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: (no body)
Sample curl
curl -X GET http://localhost:4000/admin/user/get-all-roles-with-users \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/user/revoke-single-role¶
(SuperAdmin)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
username |
string | req | |
role |
object | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
curl -X PUT http://localhost:4000/admin/user/revoke-single-role \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/user/stats/migrate¶
(SuperAdmin)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user/stats/transactions¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
transactionType |
query | req | string | |
dataRange |
query | opt | string | |
sortBy |
query | opt | string | |
sortOrder |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user/{id}¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/user/{id}¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
username |
string | opt | |
isStaff |
boolean | opt | |
isYoutuber |
boolean | opt | |
customMinAffiliateLevel |
number | opt | |
isTest |
boolean | opt | |
isStreamer |
boolean | opt | |
canUseChat |
boolean | opt | |
isPrivate |
boolean | opt | |
isStreamerMode |
boolean | opt | |
isEmailNotificationsEnabled |
boolean | opt | |
steamTradeLink |
string | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/user/{id} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/user/{id}/avatar/reset¶
(Auth) Replace user avatar with a random one
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200: string
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/user/{id}/balance¶
(SuperAdmin)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
balance |
string | req | |
currencyId |
string | req |
Response 200: (no body)
Sample curl
curl -X PUT http://localhost:4000/admin/user/{id}/balance \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/user/{id}/ban¶
(Permission) Ban user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
banReason |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/user/{id}/ban \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user/{id}/full/stats¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
totalWagered |
string | req | |
totalPayouts |
string | req | |
totalDeposits |
string | req | |
totalWithdraws |
string | req | |
ltv |
string | req | |
ggr |
string | req | |
avgBet |
string | req | |
netDeposit |
string | req | |
totalLoss |
string | req | |
totalBets |
number | req | |
rtp |
number | req | |
winRate |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/user/{id}/permissions¶
(Permission)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
permissions |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X PUT http://localhost:4000/admin/user/{id}/permissions \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/user/{id}/roles¶
(SuperAdmin)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
roles |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X PUT http://localhost:4000/admin/user/{id}/roles \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/user/{id}/unban¶
(Permission) Unban user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
banReason |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/user/{id}/unban \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin User Limits API¶
POST /admin/user-limits/gambling-limits¶
Set admin gambling limits
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
betLimit |
string | req | |
userId |
number | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
betLimit |
string | req | |
userId |
number | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
curl -X POST http://localhost:4000/admin/user-limits/gambling-limits \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user-limits/gambling-limits/{id}¶
Get admin gambling limits
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200: object
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/user-limits/user-exclusion¶
Delete admin user-self-exclusion
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
userId |
number | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
userId |
number | req | |
expiresAt |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
curl -X DELETE http://localhost:4000/admin/user-limits/user-exclusion \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/user-limits/user-exclusion¶
Create admin user-self-exclusion
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
excludeUntil |
string | req | |
userId |
number | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
userId |
number | req | |
expiresAt |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
curl -X POST http://localhost:4000/admin/user-limits/user-exclusion \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user-limits/user-exclusion/{id}¶
Get admin active self-exclusion
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200: object
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Admin withdrawals block API¶
DELETE /admin/withdrawals-block/{userId}¶
(Permission) Unblock user withdrawals
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
userId |
number | req | |
reason |
string | opt | |
reasonPublic |
string | opt | |
blockUntil |
string | opt | |
createdAt |
string | opt | |
updatedAt |
string | opt |
Sample curl
curl -X DELETE http://localhost:4000/admin/withdrawals-block/{userId} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/withdrawals-block/{userId}¶
(Permission) Get active user block
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
userId |
number | req | |
reason |
string | opt | |
reasonPublic |
string | opt | |
blockUntil |
string | opt | |
createdAt |
string | opt | |
updatedAt |
string | opt |
Sample curl
curl -X GET http://localhost:4000/admin/withdrawals-block/{userId} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/withdrawals-block/{userId}¶
(Permission) Block user withdrawals
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
reason |
string | opt | |
reasonPublic |
string | opt | |
blockUntil |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
userId |
number | req | |
reason |
string | opt | |
reasonPublic |
string | opt | |
blockUntil |
string | opt | |
createdAt |
string | opt | |
updatedAt |
string | opt |
Sample curl
curl -X POST http://localhost:4000/admin/withdrawals-block/{userId} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
AdminBetQueue¶
POST /admin/bet-queue/retry¶
AdminBetQueue_retry
Auth: public
Response 201: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Affiliate API¶
POST /affiliate/claim¶
Affiliate_claim
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 201: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /affiliate/claims¶
Affiliate_findManyClaims
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /affiliate/code¶
AffiliateCode_findMany
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: array of
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
usersCount |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /affiliate/code¶
AffiliateCode_create
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
string | req | The code of the affiliate code |
Response 201:
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
usersCount |
number | opt |
Sample curl
curl -X POST http://localhost:4000/affiliate/code \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /affiliate/levels¶
Affiliate_getLevels
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: array of
| field | type | required | description |
|---|---|---|---|
minWageredUsdAmount |
string | req | |
id |
number | req | |
name |
string | req | |
commission |
string | req | |
minReferralCountForClaim |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /affiliate/me¶
Affiliate_findOne
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
usersWageredUsdAmount |
string | req | |
referralCount |
number | req | |
activeReferrals |
number | req | |
canClaim |
boolean | req | |
currentLevel |
ref→AffiliateLevelDto | req | |
nextLevel |
? | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /affiliate/overview¶
Affiliate_findStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
totalClaimedUsdAmount |
string | req | |
claimableUsdAmount |
string | req | |
totalWageredUsdAmount |
string | req | |
referrals |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /affiliate/users¶
Affiliate_findManyUsers
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Affiliates External API¶
GET /external/affiliates¶
AffiliateExternal_getExternalReferralInfo
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
codes |
query | req | array | |
startDate |
query | opt | string | |
endDate |
query | opt | string | |
x-api-key |
header | req | string | API Key in the format: |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
wagered |
string | req | |
deposited |
string | req | |
id |
number | req | |
username |
string | req | |
avatar |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Authorization API¶
GET /auth/google¶
Google auth (No validation)
Auth: public
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /auth/google/callback¶
Google auth callback endpoint (No validation)
Auth: public
Response 200:
| field | type | required | description |
|---|---|---|---|
url |
string | req | Redirect URL |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /auth/refresh¶
Refresh token
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
refresh-token |
header | req | string | Refresh token |
Response 201:
| field | type | required | description |
|---|---|---|---|
accessToken |
ref→AuthSessionTokenDto | req | |
refreshToken |
ref→AuthSessionTokenDto | req | |
socketToken |
ref→AuthSessionTokenDto | req |
Sample curl
Tracing context: Auto HTTP + Prisma + ioredis. No manual span.
POST /auth/setup-username¶
Endpoint for setting up username for users signed up via OAuth
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
setupUsernameToken |
query | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
username |
string | req | |
email |
string | req | |
language |
string | opt | |
affiliateCode |
string | opt | |
referrer |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
accessToken |
ref→AuthSessionTokenDto | req | |
refreshToken |
ref→AuthSessionTokenDto | req | |
socketToken |
ref→AuthSessionTokenDto | req |
Sample curl
curl -X POST http://localhost:4000/auth/setup-username \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /auth/sign-in¶
Sign in. (No validation)
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
email |
string | req | |
password |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
accessToken |
? | opt | If MFA passed or not enabled |
refreshToken |
? | opt | If MFA passed or not enabled |
socketToken |
? | opt | If MFA passed or not enabled |
token |
string | opt | If MFA is required, this is the temporary user token for com |
requireMfa |
boolean | opt | If MFA is required -> true. Otherwise undefined |
provider |
string | opt | If MFA required |
state |
string | opt | If MFA required |
Sample curl
curl -X POST http://localhost:4000/auth/sign-in \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: Manual spans: AuthService.login (auth.service.ts:150), UserService.authenticate (user.service.ts:718). Full coverage: HTTP → service → Prisma → BullMQ enqueue (EVALSHA). Continuous trace.
POST /auth/sign-up¶
Sign up
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
username |
string | req | |
password |
string | req | |
email |
string | req | |
isEmailNotificationsEnabled |
boolean | opt | |
affiliateCode |
string | opt | The code of the affiliate code |
language |
string | opt | |
referrer |
string | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
accessToken |
ref→AuthSessionTokenDto | req | |
refreshToken |
ref→AuthSessionTokenDto | req | |
socketToken |
ref→AuthSessionTokenDto | req |
Sample curl
curl -X POST http://localhost:4000/auth/sign-up \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: Auto HTTP + Prisma. No manual span — RNG/captcha/welcome-bonus side effects attributed to the controller span.
GET /auth/steam¶
Steam auth (No validation)
Auth: public
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /auth/steam/return¶
Steam auth callback endpoint (No validation)
Auth: public
Response 200:
| field | type | required | description |
|---|---|---|---|
url |
string | req | Redirect URL |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /auth/verify-2fa¶
Verify 2FA and complete sign in (No validation)
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
token |
string | req | Temporary user token for completing the MFA verification |
mfaCode |
string | req | MFA code of the user |
provider |
string | opt | |
state |
string | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
accessToken |
ref→AuthSessionTokenDto | req | |
refreshToken |
ref→AuthSessionTokenDto | req | |
socketToken |
ref→AuthSessionTokenDto | req |
Sample curl
curl -X POST http://localhost:4000/auth/verify-2fa \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: Auto HTTP + Prisma. Captcha lookup hits Redis (auto-spanned).
Bets API¶
GET /bets¶
Bet_findMany
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
status |
query | req | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: Auto HTTP + Prisma. Read-only, no Redis/queue. Continuous trace.
GET /bets/house-games/info/{betId}¶
Bet_getBetInfo
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
betId |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
amount |
string | req | |
payout |
string | req | |
betId |
string | req | |
settledAt |
string | req | |
game |
ref→ExtendedHouseGameBet | req | |
user |
ref→UserShortPublicDto | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /bets/slots/info/{betId}¶
Bet_getSlotBetInfo
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
betId |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
amount |
string | req | |
payout |
string | req | |
betId |
string | req | |
settledAt |
string | req | |
game |
ref→BasicSlotGameBet | req | |
user |
ref→UserShortPublicDto | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /live-bets¶
LiveBets_getMany
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
type |
query | req | string | |
count |
query | req | number |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
usdAmount |
string | req | |
usdPayout |
string | req | |
currencyId |
string | req | |
amount |
string | req | |
payout |
string | req | |
status |
string | req | |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
user |
ref→UserShortPublicDto | opt | |
gameIdentity |
ref→GameIdentityShortDto | req | |
game |
ref→GameIdentityShortDto | opt | |
multiplier |
number | req |
Response default: array of
| field | type | required | description |
|---|---|---|---|
usdAmount |
string | req | |
usdPayout |
string | req | |
currencyId |
string | req | |
amount |
string | req | |
payout |
string | req | |
status |
string | req | |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
user |
ref→UserShortPublicDto | opt | |
gameIdentity |
ref→GameIdentityShortDto | req | |
game |
ref→GameIdentityShortDto | opt | |
multiplier |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /live-bets/my¶
LiveBets_getManyMyBets
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
status |
query | opt | string | |
count |
query | req | number |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
usdAmount |
string | req | |
usdPayout |
string | req | |
currencyId |
string | req | |
amount |
string | req | |
payout |
string | req | |
status |
string | req | |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
user |
ref→UserShortPublicDto | opt | |
gameIdentity |
ref→GameIdentityShortDto | req | |
game |
ref→GameIdentityShortDto | opt | |
multiplier |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
BotActivity¶
GET /admin/bot-activity/all¶
BotActivity_getAllBot
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
type |
query | req | string | |
behavior |
query | req | string | |
playDays |
query | req | string | Array of values: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY |
username |
query | opt | string | |
fromTime |
query | opt | string | |
toTime |
query | opt | string | |
isActive |
query | req | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/bot-activity/bot-toggle¶
BotActivity_botToggle
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
isBot |
boolean | req | |
userId |
number | req |
Response 200: (no body)
Sample curl
curl -X PATCH http://localhost:4000/admin/bot-activity/bot-toggle \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/bot-activity/manage¶
BotActivity_updateBot
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
type |
string | opt | |
behavior |
string | opt | |
playDays |
string | opt | |
userId |
number | req | |
isActive |
boolean | opt | |
games |
array | opt | |
startTime |
string | opt |
Response 200: (no body)
Sample curl
curl -X PATCH http://localhost:4000/admin/bot-activity/manage \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/bot-activity/manage¶
BotActivity_createBot
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
behavior |
string | req | |
playDays |
string | req | |
isActive |
boolean | req | |
games |
array | req | |
userId |
number | req | |
startTime |
string | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/bot-activity/manage \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/bot-activity/one/{id}¶
BotActivity_getOneBot
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200: object
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Casino API¶
GET /casino/games¶
Games_findManyGamesPublic
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
category |
query | opt | string | |
type |
query | opt | string | |
providerId |
query | opt | number | |
sortOrder |
query | req | string | |
sortBy |
query | req | string | |
name |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/favorite¶
Get list of favorite games
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortOrder |
query | req | string | |
sortBy |
query | req | string | |
category |
query | opt | string | |
name |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /casino/games/favorite/{slug}¶
Remove a game from favorites
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
slug |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/favorite/{slug}¶
Add a game to favorites
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
slug |
path | req | string |
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/blackjack/config¶
Blackjack_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
minBet |
number | req | In USD |
maxBet |
number | req | In USD |
maxProfit |
number | req | In USD |
Sample curl
curl -X GET http://localhost:4000/casino/games/house/blackjack/config \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/blackjack/getActiveState¶
Blackjack_tryGetActiveGameState
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
data |
? | req |
Sample curl
curl -X GET http://localhost:4000/casino/games/house/blackjack/getActiveState \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/blackjack/handleAction¶
Blackjack_handleBlackjackAction
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
action |
string | req | |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
data |
? | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/blackjack/handleAction \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/blackjack/init¶
Blackjack_initGame
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
sideBetAmount |
string | opt | Side bet amount for Perfect Pair in |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
data |
? | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/blackjack/init \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/blackjack/initDebug¶
Blackjack_initGameDebug
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
sideBetAmount |
string | opt | Side bet amount for Perfect Pair in |
deck |
array | req | Deck of cards. Array of unique numbers 1 - 52. |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
data |
? | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/blackjack/initDebug \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/dice/bet¶
Dice_bet
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
threshold |
number | req | |
above |
boolean | req | |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
payout |
string | req | |
createdAt |
string | req | |
multiplier |
number | req | |
above |
boolean | req | |
randomValue |
number | req | |
threshold |
number | req | |
didWin |
boolean | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/dice/bet \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: Blind spot (medium). DiceService.play and BetService.createAndSettleBet have no manual span. Trace jumps HTTP → Prisma $transaction. Bet-settled BullMQ consumer starts an orphan trace (no traceparent propagation through job data). See perf-trace-coverage-audit.md §dice.
GET /casino/games/house/dice/config¶
Dice_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
maxMultiplier |
number | req | |
rtp |
number | req | |
minBet |
number | req | |
maxProfit |
number | req | |
maxBet |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/keno/bet¶
Keno_bet
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
risk |
string | req | |
selected |
array | req | List of numbers |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
payout |
string | req | |
createdAt |
string | req | |
multiplier |
number | req | |
results |
array | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/keno/bet \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/keno/config¶
Keno_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
multipliers |
object | req | |
minBet |
number | req | |
maxProfit |
number | req | |
maxBet |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/limbo/bet¶
Limbo_bet
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
multiplier |
number | req | |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
payout |
string | req | |
createdAt |
string | req | |
multiplier |
number | req | |
randomMultiplier |
number | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/limbo/bet \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: Same blind spot pattern as dice — no service span, BullMQ consumer orphaned.
GET /casino/games/house/limbo/config¶
Limbo_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
maxMultiplier |
number | req | |
minMultiplier |
number | req | |
rtp |
number | req | |
minBet |
number | req | |
maxProfit |
number | req | |
maxBet |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/mines/auto-spin¶
Mines_autoSpin
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
gridCellsCount |
number | req | |
bombsCount |
number | req | |
windowId |
string | opt | |
cellIndices |
array | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
payout |
string | req | |
finishedAt |
string | req | |
multiplier |
number | req | |
board |
object | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/mines/auto-spin \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/mines/board¶
Mines_board
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
currentMultiplier |
number | req | |
nextMultiplier |
number | req | |
cells |
object | req | |
openedCellsCount |
number | req | |
gridCellsCount |
number | req | |
bombsCount |
number | req | |
betInfo |
ref→HouseGameMinesBetInfo | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/mines/cash-out¶
Mines_cashOut
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
payout |
string | req | |
finishedAt |
string | req | |
multiplier |
number | req | |
board |
object | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/mines/cash-out \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/mines/config¶
Mines_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
minBet |
number | req | |
maxProfit |
number | req | |
maxBet |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/mines/open¶
Mines_open
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
cellIndex |
number | req | |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
proceed |
ref→OpenCellMinesResponseDto | opt | |
finished |
ref→MinesGameResponseDto | opt |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/mines/open \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/mines/play¶
Mines_play
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
gridCellsCount |
number | req | |
bombsCount |
number | req | |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
currentMultiplier |
number | req | |
nextMultiplier |
number | req | |
cells |
object | req | |
openedCellsCount |
number | req | |
gridCellsCount |
number | req | |
bombsCount |
number | req | |
betInfo |
ref→HouseGameMinesBetInfo | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/mines/play \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/monkey-run/bet¶
MonkeyRun_bet
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
difficulty |
string | req | |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
difficulty |
string | req | |
currencyId |
string | req | |
betAmount |
string | req | |
cashOut |
string | req | |
nextStepProfit |
string | req | |
isFinished |
boolean | req | |
canCashOut |
boolean | req | |
multipliers |
array | req | |
step |
number | req | |
deadPoint |
number | opt |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/monkey-run/bet \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /casino/games/house/monkey-run/cash-out¶
MonkeyRun_cashOut
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
windowId |
string | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
difficulty |
string | req | |
currencyId |
string | req | |
betAmount |
string | req | |
cashOut |
string | req | |
nextStepProfit |
string | req | |
isFinished |
boolean | req | |
canCashOut |
boolean | req | |
multipliers |
array | req | |
step |
number | req | |
deadPoint |
number | opt |
Sample curl
curl -X PUT http://localhost:4000/casino/games/house/monkey-run/cash-out \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/monkey-run/config¶
MonkeyRun_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
minBet |
number | req | In USD |
maxBet |
number | req | In USD |
maxProfit |
number | req | In USD |
difficulties |
object | req | |
rtp |
number | req | |
maxMultiplier |
number | req |
Sample curl
curl -X GET http://localhost:4000/casino/games/house/monkey-run/config \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/monkey-run/game¶
MonkeyRun_board
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
difficulty |
string | req | |
currencyId |
string | req | |
betAmount |
string | req | |
cashOut |
string | req | |
nextStepProfit |
string | req | |
isFinished |
boolean | req | |
canCashOut |
boolean | req | |
multipliers |
array | req | |
step |
number | req | |
deadPoint |
number | opt |
Sample curl
curl -X GET http://localhost:4000/casino/games/house/monkey-run/game \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/monkey-run/play¶
MonkeyRun_play
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
windowId |
string | opt | |
makeStep |
number | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
difficulty |
string | req | |
currencyId |
string | req | |
betAmount |
string | req | |
cashOut |
string | req | |
nextStepProfit |
string | req | |
isFinished |
boolean | req | |
canCashOut |
boolean | req | |
multipliers |
array | req | |
step |
number | req | |
deadPoint |
number | opt |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/monkey-run/play \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/plinko/bet¶
Plinko_bet
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
risk |
string | req | |
rowsCount |
number | req | |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
payout |
string | req | |
createdAt |
string | req | |
multiplier |
number | req | |
results |
array | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/plinko/bet \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/plinko/config¶
Plinko_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
manualMs |
number | req | |
autoMs |
number | req | |
minBet |
number | req | |
maxProfit |
number | req | |
maxBet |
number | req |
Sample curl
curl -X GET http://localhost:4000/casino/games/house/plinko/config \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/roulette/bet¶
Roulette_bet
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | Bet amount in |
params |
object | req | The parameters for placing a roulette bet |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
payout |
string | req | |
createdAt |
string | req | |
randomPosition |
number | req | |
multiplier |
number | req | |
betId |
string | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/roulette/bet \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/roulette/config¶
Roulette_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
minBet |
number | req | |
maxProfit |
number | req | |
maxBet |
number | req |
Sample curl
curl -X GET http://localhost:4000/casino/games/house/roulette/config \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /casino/games/house/speed-roulette/bet¶
SpeedRouletteApi_placeBet
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
color |
string | req | |
windowId |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
betAmount |
string | req | |
color |
string | req |
Sample curl
curl -X POST http://localhost:4000/casino/games/house/speed-roulette/bet \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/speed-roulette/config¶
SpeedRouletteApi_getConfig
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
minBet |
number | req | In USD |
maxBet |
number | req | In USD |
maxProfit |
number | req | In USD |
timeConfig |
? | req |
Sample curl
curl -X GET http://localhost:4000/casino/games/house/speed-roulette/config \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/house/speed-roulette/info¶
SpeedRouletteApi_getInfo
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
game |
ref→SpeedRouletteGamePublicDto | req | |
usersBets |
array | req | |
latestStats |
array | req | |
latestGames |
array | req | |
timeToNextBlockMs |
number | req |
Sample curl
curl -X GET http://localhost:4000/casino/games/house/speed-roulette/info \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/main¶
Returns games for main page. Enabled only 4 categories (see examples)
Other game endpoints will keep sort order by default.Enabled categories for main page: Only: HOUSE_GAME, SLOTS, ROULETTE, GAME_SHOWS
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
HOUSE_GAME |
array | opt | |
SLOTS |
array | opt | |
LIVE_CASINO |
array | opt | |
BLACKJACK |
array | opt | |
ROULETTE |
array | opt | |
GAME_SHOWS |
array | opt | |
BACCARAT |
array | opt | |
VIDEO_POKER |
array | opt | |
CARD |
array | opt | |
CASUAL |
array | opt | |
LOTTERY |
array | opt | |
LIVE |
array | opt | |
POKER |
array | opt | |
CRAPS |
array | opt | |
FISHING |
array | opt | |
CRASH |
array | opt | |
VIRTUAL_SPORTS |
array | opt | |
SCRATCH |
array | opt | |
NEW_RELEASES |
array | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/providers¶
Games_findManyProviders
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
gameCategory |
query | opt | string | |
sortOrder |
query | req | string | |
sortBy |
query | req | string | |
name |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /casino/games/{slug}¶
Games_findGameExtended
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
slug |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
categories |
array | req | |
id |
number | req | |
addedAt |
string | req | |
lastPlayedAt |
string | req | |
type |
object | req | |
slug |
string | req | |
name |
string | req | |
images |
? | req | |
info |
? | req | |
provider |
ref→GameProviderPublicDto | req | |
isFavorite |
boolean | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Challenge API¶
GET /challenge¶
Challenge_findManyChallenges
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
status |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /challenge/my¶
Challenge_findMyChallenges
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
isFinished |
query | opt | boolean | |
winnerSearch |
query | opt | string | Search for a winner by id, slug |
isHidden |
query | opt | boolean | |
gameSlug |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /challenge/{id}¶
Challenge_findUniqueChallenge
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
minBetAmountUsd |
string | req | |
rewardCurrency |
string | req | |
rewardAmount |
string | req | |
rewardUsdAmount |
string | opt | Challenge reward amount converted to USDT |
id |
string | req | |
createdAt |
string | req | |
minBetMultiplier |
number | req | |
title |
string | opt | |
betId |
string | req | |
winner |
object | req | |
targetGame |
ref→GameIdentityPublicDto | req | |
imageUrl |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Coming Soon API¶
GET /coming-soon/stats¶
ComingSoon_getComingSoonStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
isVerified |
boolean | req | |
position |
number | req | |
affiliateCode |
string | req | |
referralsCount |
number | req | |
ticketsEarned |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Core API¶
GET /config/{code}¶
(Anonymous) Get site config by code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
code |
path | req | string | USER, AFFILIATES, WITHDRAWALS |
Response 200: object
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /feature¶
(Optional Auth) Get site config by code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: object
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /health¶
Health_check
Auth: public
Response 200:
| field | type | required | description |
|---|---|---|---|
status |
string | opt | |
info |
object | opt | |
error |
object | opt | |
details |
object | opt |
Response 503:
| field | type | required | description |
|---|---|---|---|
status |
string | opt | |
info |
object | opt | |
error |
object | opt | |
details |
object | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Country API¶
GET /country¶
Country_getMany
Auth: public
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Currency¶
GET /currency¶
Currency_findMany
Auth: public
Response 200: array of
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
name |
string | req | |
digits |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Debug API¶
POST /debug/auth/login/{username}¶
Register or login user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
username |
path | req | string |
Response 201:
| field | type | required | description |
|---|---|---|---|
accessToken |
ref→AuthSessionTokenDto | req | |
refreshToken |
ref→AuthSessionTokenDto | req | |
socketToken |
ref→AuthSessionTokenDto | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/deposit/emulate-success/{userId}¶
Emulate success deposit
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/debug/deposit/emulate-success/{userId} \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/deposit/{userId}¶
Create test deposit
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
payment_id |
number | req | |
parent_payment_id |
number | req | |
invoice_id |
string | req | |
payment_status |
string | req | |
pay_address |
string | req | |
payin_extra_id |
string | req | |
price_amount |
number | req | |
price_currency |
string | req | |
pay_amount |
number | req | |
actually_paid |
number | req | |
actually_paid_at_fiat |
number | req | |
pay_currency |
object | req | |
order_id |
string | req | |
order_description |
string | req | |
purchase_id |
string | req | Unique ID for each transaction. Even in context of one payme |
outcome_amount |
number | req | |
outcome_currency |
object | req | |
payment_extra_ids |
array | req | |
fee |
ref→NowpaymentWebhookPaymentFeeDto | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/debug/deposit/{userId} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/gateway/emit¶
Debug_emitMessage
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
event |
string | req | |
room |
string | opt | |
user |
ref→GatewayUserBase | opt | |
delayMs |
number | opt | |
data |
object | req | |
timestamp |
number | opt | |
windowId |
string | opt | |
idempotencyKey |
string | opt | |
accessToken |
string | opt | |
traceId |
string | opt | |
requestAppName |
string | opt | |
responseAppName |
string | opt |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/debug/gateway/emit \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/gateway/send¶
Debug_sendMessage
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
event |
string | req | |
room |
string | opt | |
user |
ref→GatewayUserBase | opt | |
delayMs |
number | opt | |
data |
object | req | |
timestamp |
number | opt | |
windowId |
string | opt | |
idempotencyKey |
string | opt | |
accessToken |
string | opt | |
traceId |
string | opt | |
requestAppName |
string | opt | |
responseAppName |
string | opt |
Response 201: object
Sample curl
curl -X POST http://localhost:4000/debug/gateway/send \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /debug/gr8/auth¶
GR8 S2S login
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: object
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/gr8/auth¶
GR8 S2S login
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
clientId |
string | req | |
clientSecret |
string | req | |
xBrand |
string | req | |
xOperatorId |
string | req |
Response 201: object
Sample curl
curl -X POST http://localhost:4000/debug/gr8/auth \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/gr8/get-bet¶
GR8 S2S login
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
betId |
string | req | |
xBrand |
string | req | |
xOperatorId |
string | req | |
authorization |
string | req |
Response 201: object
Sample curl
curl -X POST http://localhost:4000/debug/gr8/get-bet \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /debug/me/give-admin¶
Give me SuperAdmin
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
debug_token |
query | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /debug/me/give-money¶
Give me money
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
amount |
query | req | number |
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/notification/send¶
Debug_notification
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
userId |
number | opt | |
type |
string | req | |
data |
object | req |
Response 201: object
Sample curl
curl -X POST http://localhost:4000/debug/notification/send \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/user/action¶
Execute test user action
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
userId |
number | opt | |
username |
string | opt | |
actions |
array | req |
Response 201: object
Sample curl
curl -X POST http://localhost:4000/debug/user/action \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /debug/user/create¶
Create test user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
createdAt |
string | opt | |
username |
string | req | |
isPrivate |
boolean | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
permissions |
array | req | |
id |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
email |
string | req | |
emailVerified |
boolean | req | |
lastLoginAt |
string | req | |
avatar |
string | req | |
mfaSecret |
string | req | |
vipLevel |
number | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
googleEmail |
string | req | |
isStreamer |
boolean | req | |
isStreamerMode |
boolean | req | |
isStaff |
boolean | req | |
isYoutuber |
boolean | req |
Sample curl
curl -X POST http://localhost:4000/debug/user/create \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Exchange Rates API¶
GET /exchange-rates¶
ExchangeRates_getMany
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
fiatCurrency |
query | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
DBC |
string | req | |
EVO |
string | req | |
XRP |
string | req | |
BTC |
string | req | |
ETH |
string | req | |
LTC |
string | req | |
TRX |
string | req | |
POL |
string | req | |
USDT |
string | req | |
BNB |
string | req | |
SOL |
string | req | |
USDC |
string | req | |
TETH |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
FAQ API¶
GET /faq¶
Faq_findAllFaqs
Auth: public
Response 200: array of
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
title |
string | req | |
text |
string | req | |
order |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /faq/{id}¶
Faq_findFaqById
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
id |
number | req | |
title |
string | req | |
text |
string | req | |
order |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
FAST_TRACK external auth¶
GET /fast-track/integration/auth/get-fast-track-token¶
Get JWT token for FastTrack
Auth: public
Response 200:
| field | type | required | description |
|---|---|---|---|
token |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Fairness API¶
GET /fairness/history¶
History of previous fairness seeds. Server seed is not hashed
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /fairness/seed¶
Returns current fairness seed. If not exists - seed will be created. Server seed is hashed
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
clientSeed |
string | req | |
nonce |
number | req | |
hashedServerSeed |
string | req | |
nextHashedServerSeed |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /fairness/seed¶
Update client seed. It triggers generating a new server seed
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
clientSeed |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
clientSeed |
string | req | |
nonce |
number | req | |
hashedServerSeed |
string | req | |
nextHashedServerSeed |
string | req |
Sample curl
curl -X PUT http://localhost:4000/fairness/seed \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /fairness/unhashed-seed¶
Try to get seed details by hashed server seed
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
hashedServerSeed |
query | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
createdAt |
string | req | |
userId |
number | req | |
serverSeed |
string | req | |
hashedServerSeed |
string | req | |
clientSeed |
string | req | |
nonce |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
FastTrack¶
POST /fast-track/bonus/credit¶
FastTrack_creditBonus
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
user_id |
string | req | |
bonus_code |
string | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/fast-track/bonus/credit \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /fast-track/bonus/credit/funds¶
FastTrack_creditBonusFunds
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
user_id |
string | req | |
bonus_code |
string | req | |
amount |
string | req | |
currency |
string | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/fast-track/bonus/credit/funds \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /fast-track/bonus/list¶
FastTrack_getBonusList
Auth: public
Response 200:
| field | type | required | description |
|---|---|---|---|
Data |
array | req | |
Success |
boolean | req | |
Errors |
array | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /fast-track/reconciliation¶
FastTrack_reconciliation
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
user_id |
string | req | |
bonus_code |
string | req | |
amount |
string | req | |
currency |
string | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/fast-track/reconciliation \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /fast-track/userblocks/{userid}¶
FastTrack_getUserBlocks
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userid |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
blocks |
array | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /fast-track/userconsents/{userid}¶
FastTrack_getUserConsents
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userid |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
consents |
array | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /fast-track/userdetails/{userid}¶
FastTrack_getUserDetails
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userid |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
address |
string | req | |
birth_date |
string | req | ISO format. "YYYY-MM-DD" |
city |
string | req | |
country |
string | req | Country of Registration, in ISO alpha-2 format |
currency |
string | req | Currency code |
deleted_at |
string | opt | Date of player being deleted in RFC3339 format |
email |
string | req | |
first_name |
string | req | |
is_blocked |
boolean | req | |
is_excluded |
boolean | req | |
language |
string | req | Language Code |
last_name |
string | req | |
mobile |
string | req | These values are not stored by us Number without country cod |
mobile_prefix |
string | req | These values are not stored by us Country Code |
origin |
string | req | The Origin of the user example: "sub.example.com" |
postal_code |
string | req | |
roles |
array | req | Roles on site |
sex |
string | req | example: "Sex" |
title |
string | req | example: "Mr" |
user_id |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
FastTrackDebug¶
DELETE /¶
Purge all messages from a queue
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
queueName |
query | opt | string | Name of the queue to purge |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req | Indicates if the operation was successful |
purgedCount |
number | req | Number of messages purged from the queue |
queueName |
string | req | Name of the queue that was purged |
Response 404: Queue not found
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /¶
Get information about a queue
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
queueName |
query | opt | string | Name of the queue to inspect |
Response 200:
| field | type | required | description |
|---|---|---|---|
name |
string | req | Name of the queue |
messageCount |
number | req | Number of messages in the queue |
consumerCount |
number | req | Number of consumers connected to the queue |
Response 404: Queue not found
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /emit-event¶
Emit an event to RabbitMQ using publish-subscribe pattern
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
event |
string | req | The event name or description |
data |
object | req | Event payload data |
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req | Indicates if the operation was successful |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /messages¶
Peek at messages in a queue without consuming them
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
queueName |
query | opt | string | Name of the queue to inspect |
count |
query | opt | number | Maximum number of messages to peek |
Response 200: array of
| field | type | required | description |
|---|---|---|---|
messageId |
string | req | Unique identifier for the message |
timestamp |
string | req | Timestamp when the message was published |
routingKey |
string | req | Routing key used for the message |
exchange |
string | req | Exchange the message was published to |
content |
object | req | The message content/payload |
properties |
object | req | Message properties and headers |
Response 404: Queue not found
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /send-message¶
Send a message to RabbitMQ using request-response pattern
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
text |
string | req | The message text to be sent via RabbitMQ |
metadata |
object | opt | Additional metadata for the message (optional) |
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req | Indicates if the operation was successful |
result |
object | req | The result returned from the message handler |
Sample curl
curl -X POST http://localhost:4000/send-message \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GEO Restrictions API¶
GET /geo¶
Geo_check
Auth: public
Response 200:
| field | type | required | description |
|---|---|---|---|
countryName |
string | opt | |
regionName |
string | opt | |
isAllowed |
boolean | req | |
countryCode |
string | opt | |
regionCode |
string | opt | |
position |
array | opt | |
ip |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
KYC API¶
POST /kyc¶
Kyc_upgradeKyc
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
data |
ref→UpdateUserKycDto | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
level |
string | req | |
verificationPending |
boolean | req | |
token |
string | req |
Sample curl
curl -X POST http://localhost:4000/kyc \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /kyc/notify/application-reviewed¶
Webhook for application reviewed
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
levelName |
string | req | |
applicantId |
string | req | |
inspectionId |
string | req | |
correlationId |
string | req | |
externalUserId |
number | req | |
type |
string | req | |
reviewResult |
ref→ApplicationReviewResult | req | |
reviewStatus |
string | req | |
createdAtMs |
string | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/kyc/notify/application-reviewed \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /kyc/notify/new-application¶
Webhook for new application
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
levelName |
string | req | |
applicantId |
string | req | |
inspectionId |
string | req | |
applicantType |
string | req | |
correlationId |
string | req | |
externalUserId |
number | req | |
type |
string | req | |
sandboxMode |
boolean | req | |
reviewStatus |
string | req | |
createdAtMs |
string | req | |
clientId |
string | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/kyc/notify/new-application \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
KYC Admin API¶
PATCH /admin/kyc/{userId}¶
Update User KYC info by admin
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
firstName |
string | opt | |
lastName |
string | opt | |
dateOfBirth |
string | opt | |
address |
string | opt | |
city |
string | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
gender |
string | req | |
level |
string | req | |
firstName |
string | req | |
lastName |
string | req | |
dateOfBirth |
string | req | |
countryCode |
string | req | |
address |
string | req | |
postalCode |
string | req | |
city |
string | req | |
occupation |
string | req | |
verificationPending |
boolean | req | |
userId |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/kyc/{userId} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/kyc/{userId}/info¶
User KYC info with 5 sumsub requests
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
gender |
string | req | |
level |
string | req | |
firstName |
string | req | |
lastName |
string | req | |
dateOfBirth |
string | req | |
countryCode |
string | req | |
address |
string | req | |
postalCode |
string | req | |
city |
string | req | |
occupation |
string | req | |
verificationPending |
boolean | req | |
userId |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
kycVerificationRequests |
array | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/kyc/{userId}/info¶
Update User KYC level and verification pending status
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
level |
string | req | |
verificationPending |
boolean | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
gender |
string | req | |
level |
string | req | |
firstName |
string | req | |
lastName |
string | req | |
dateOfBirth |
string | req | |
countryCode |
string | req | |
address |
string | req | |
postalCode |
string | req | |
city |
string | req | |
occupation |
string | req | |
verificationPending |
boolean | req | |
userId |
number | req | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
curl -X POST http://localhost:4000/admin/kyc/{userId}/info \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Leaderboard API¶
GET /leaderboards¶
Leaderboard_getLeaderboardsPublic
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
finished |
query | opt | boolean | |
type |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /leaderboards/id/{id}¶
Leaderboard_getLeaderboardHistory
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
status |
string | req | |
id |
string | req | |
name |
string | req | |
description |
string | req | |
config |
ref→LeaderboardConfigDto | req | |
startDate |
string | req | |
endDate |
string | req | |
leaderboardUsers |
array | req | |
currentUser |
? | opt | |
previousLeaderboard |
? | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /leaderboards/{type}¶
Leaderboard_getLeaderboardPublic
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
type |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
status |
string | req | |
id |
string | req | |
name |
string | req | |
description |
string | req | |
config |
ref→LeaderboardConfigDto | req | |
startDate |
string | req | |
endDate |
string | req | |
leaderboardUsers |
array | req | |
currentUser |
? | opt | |
previousLeaderboard |
? | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Notifications API¶
DELETE /notifications¶
Notification_deleteNotification
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /notifications¶
Notification_getNotifications
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: array of
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
date |
number | req | |
userId |
number | req | |
type |
string | req | |
isNew |
boolean | req | |
content |
object | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /notifications/aware¶
Notification_aware
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 201: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Payments API¶
GET /payments/deposit¶
Deposit_getMany
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
status |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /payments/deposit/static-address¶
Deposit_getOrCreateAddress
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
networkId |
string | req | |
providerId |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
addressValidUntil |
string | opt | Only for CRYPTO_2 |
minAmount |
string | opt | Only for CRYPTO_2 |
minAmountUsd |
string | opt | Only for CRYPTO_2 |
address |
string | req | |
memo |
string | req |
Sample curl
curl -X POST http://localhost:4000/payments/deposit/static-address \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /payments/network¶
Network_findMany
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /payments/withdraw¶
Withdraw_findMany
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
status |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /payments/withdraw¶
Withdraw_create
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
providerId |
string | req | |
currencyId |
string | req | |
networkId |
string | req | |
fromBalance |
ref→AmountBalanceDto | req | |
recipientAddress |
string | req | |
recipientMemo |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
status |
string | req | |
usdAmount |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
recipientAddress |
string | req | |
recipientMemo |
string | req | |
confirmedAt |
string | req | |
updatedAt |
string | req | |
id |
string | req | |
txHash |
string | req | |
createdAt |
string | req |
Sample curl
curl -X POST http://localhost:4000/payments/withdraw \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /payments/withdraw/fee¶
Withdraw_getWithdrawFee
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
amount |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
amount |
string | req | |
receivingAmount |
string | req | |
feeAmount |
string | req |
Sample curl
curl -X POST http://localhost:4000/payments/withdraw/fee \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /payments/withdraw/limits¶
Withdraw_getWithdrawLimits
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
currencyId |
query | req | string | |
networkId |
query | req | string | |
providerId |
query | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
currencyId |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
minUsdAmount |
string | req | |
maxUsdAmount |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /payments/withdraw/{id}¶
Returns withdraw by id. If "PENDING" - tries to update withdraw status from provider's api
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
status |
string | req | |
usdAmount |
string | req | |
networkId |
string | req | |
providerId |
string | req | |
recipientAddress |
string | req | |
recipientMemo |
string | req | |
confirmedAt |
string | req | |
updatedAt |
string | req | |
id |
string | req | |
txHash |
string | req | |
createdAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Payments SkinDeck API¶
POST /payments/skindeck/deposit/create¶
SkinDeck_createDepositTrade
Create deposit via SkinDeck
Auth: required (cookie — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
itemId |
string | req | Item ID |
offer |
? | req | Offer |
Response 201:
| field | type | required | description |
|---|---|---|---|
trade |
ref→SkinDeckTradeResponse | req |
Sample curl
curl -X POST http://localhost:4000/payments/skindeck/deposit/create \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /payments/skindeck/deposit/inventory¶
SkinDeck_getDepositInventory
Get available user inventory via SkinDeck
Auth: required (cookie — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
minPrice |
query | opt | number | Min price. |
maxPrice |
query | opt | number | Max price. |
sort |
query | opt | string | Sort by. |
search |
query | opt | string | Search. |
refresh |
query | opt | boolean | Refresh |
page |
query | req | number | |
take |
query | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
count |
number | req | |
inventory |
array | req | |
updatedAt |
string | req |
Sample curl
curl -X GET http://localhost:4000/payments/skindeck/deposit/inventory \
-H 'Cookie: access_token=<JWT>'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Promo API¶
GET /promo/bonuses¶
List of activated promos with statuses
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
isActive |
query | opt | boolean | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /promo/history¶
List of activated promos with statuses
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
isActive |
query | opt | boolean | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /promo/public¶
List of public promos
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
isActive |
query | opt | boolean | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /promo/public/{code}¶
Returns a detailed info about a promo code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
code |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
amount |
string | req | |
currencyId |
string | req | |
minTotalWagerUsdToClaim |
string | req | |
minTotalDepositUsdToClaim |
string | req | |
minDepositUsdToActivate |
string | req | |
maxBonusUsdAmount |
string | req | |
wagerMultiplierToComplete |
string | req | |
wagerUsdAmountToComplete |
string | req | |
id |
string | req | |
publicContent |
object | req | |
code |
string | req | |
title |
string | req | |
description |
string | req | |
imageUrl |
string | req | |
expiresAt |
string | req | |
minKYCLevelToClaim |
object | req | |
minVipLevelToClaim |
number | req | |
onlyZeroDepositsToClaim |
boolean | req | |
timeSecondsToComplete |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Promo Admin API¶
GET /admin/promo¶
Find many promo codes
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
isActive |
query | opt | boolean | |
type |
query | opt | string | |
search |
query | opt | string | |
affiliateCode |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/promo¶
Create a promo code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
minKYCLevelToClaim |
string | opt | |
minTotalWagerUsdToClaim |
string | opt | |
minTotalDepositUsdToClaim |
string | opt | |
title |
string | req | |
code |
string | req | |
isHidden |
boolean | opt | |
isActive |
boolean | opt | |
expiresAt |
string | req | |
claimsLeft |
number | opt | |
minVipLevelToClaim |
number | opt | |
affiliateCodeToClaim |
string | opt | |
lockWithdrawOnClaimHours |
number | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
amount |
string | req | |
currencyId |
string | req | |
isActive |
boolean | req | |
minKYCLevelToClaim |
string | req | |
minTotalWagerUsdToClaim |
string | req | |
minTotalDepositUsdToClaim |
string | req | |
minDepositUsdToActivate |
string | req | |
maxBonusUsdAmount |
string | req | |
wagerMultiplierToComplete |
string | req | |
wagerUsdAmountToComplete |
string | req | |
claimedCount |
number | opt | Number of users who have claimed this promo code |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdById |
number | req | |
title |
string | req | |
description |
string | req | |
imageUrl |
string | req | |
publicContent |
object | req |
Sample curl
curl -X PUT http://localhost:4000/admin/promo \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/promo/deposit¶
Create a first deposit promo code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
minDepositUsdToActivate |
string | req | |
maxBonusUsdAmount |
string | req | |
title |
string | req | |
description |
string | opt | |
code |
string | req | |
publicContent |
object | opt | |
isHidden |
boolean | req | |
isActive |
boolean | req | |
isPublic |
boolean | req | |
expiresAt |
string | req | |
lockWithdrawOnClaimHours |
number | opt | |
bonusMultiplier |
number | req | |
timeSecondsToComplete |
number | req | |
wagerMultiplierToComplete |
number | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
amount |
string | req | |
currencyId |
string | req | |
isActive |
boolean | req | |
minKYCLevelToClaim |
string | req | |
minTotalWagerUsdToClaim |
string | req | |
minTotalDepositUsdToClaim |
string | req | |
minDepositUsdToActivate |
string | req | |
maxBonusUsdAmount |
string | req | |
wagerMultiplierToComplete |
string | req | |
wagerUsdAmountToComplete |
string | req | |
claimedCount |
number | opt | Number of users who have claimed this promo code |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdById |
number | req | |
title |
string | req | |
description |
string | req | |
imageUrl |
string | req | |
publicContent |
object | req |
Sample curl
curl -X PUT http://localhost:4000/admin/promo/deposit \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/promo/deposit/{id}¶
Update a first deposit promo code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
minDepositUsdToActivate |
string | opt | |
maxBonusUsdAmount |
string | opt | |
title |
string | opt | |
description |
string | opt | |
code |
string | opt | |
publicContent |
object | opt | |
isHidden |
boolean | opt | |
isActive |
boolean | opt | |
isPublic |
boolean | opt | |
expiresAt |
string | opt | |
lockWithdrawOnClaimHours |
number | opt | |
bonusMultiplier |
number | opt | |
timeSecondsToComplete |
number | opt | |
wagerMultiplierToComplete |
number | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
amount |
string | req | |
currencyId |
string | req | |
isActive |
boolean | req | |
minKYCLevelToClaim |
string | req | |
minTotalWagerUsdToClaim |
string | req | |
minTotalDepositUsdToClaim |
string | req | |
minDepositUsdToActivate |
string | req | |
maxBonusUsdAmount |
string | req | |
wagerMultiplierToComplete |
string | req | |
wagerUsdAmountToComplete |
string | req | |
claimedCount |
number | opt | Number of users who have claimed this promo code |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdById |
number | req | |
title |
string | req | |
description |
string | req | |
imageUrl |
string | req | |
publicContent |
object | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/promo/deposit/{id} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/promo/deposit/{id}/games¶
Get a promo code game whitelist
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /admin/promo/deposit/{id}/games¶
Upsert a promo code game whitelist. 50 games per request.
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
gameWhitelist |
array | req |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/admin/promo/deposit/{id}/games \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PUT /admin/promo/many¶
Create many promo codes by template
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
minKYCLevelToClaim |
string | req | |
minTotalWagerUsdToClaim |
string | req | |
minTotalDepositUsdToClaim |
string | req | |
count |
number | req | |
title |
string | req | |
addTitleSeries |
boolean | req | |
isHidden |
boolean | req | |
isActive |
boolean | req | |
expiresAt |
string | req | |
minVipLevelToClaim |
number | req | |
affiliateCodeToClaim |
string | req | |
lockWithdrawOnClaimHours |
number | req |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
curl -X PUT http://localhost:4000/admin/promo/many \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/promo/{id}¶
Deactivate a promo code (can be restored)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
amount |
string | req | |
currencyId |
string | req | |
isActive |
boolean | req | |
minKYCLevelToClaim |
string | req | |
minTotalWagerUsdToClaim |
string | req | |
minTotalDepositUsdToClaim |
string | req | |
minDepositUsdToActivate |
string | req | |
maxBonusUsdAmount |
string | req | |
wagerMultiplierToComplete |
string | req | |
wagerUsdAmountToComplete |
string | req | |
claimedCount |
number | opt | Number of users who have claimed this promo code |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdById |
number | req | |
title |
string | req | |
description |
string | req | |
imageUrl |
string | req | |
publicContent |
object | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/promo/{id}¶
Find a promo code by ID
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
amount |
string | req | |
currencyId |
string | req | |
isActive |
boolean | req | |
minKYCLevelToClaim |
string | req | |
minTotalWagerUsdToClaim |
string | req | |
minTotalDepositUsdToClaim |
string | req | |
minDepositUsdToActivate |
string | req | |
maxBonusUsdAmount |
string | req | |
wagerMultiplierToComplete |
string | req | |
wagerUsdAmountToComplete |
string | req | |
claimedCount |
number | opt | Number of users who have claimed this promo code |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdById |
number | req | |
title |
string | req | |
description |
string | req | |
imageUrl |
string | req | |
publicContent |
object | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/promo/{id}¶
Update a promo code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
minKYCLevelToClaim |
string | opt | |
minTotalWagerUsdToClaim |
string | opt | |
minTotalDepositUsdToClaim |
string | opt | |
title |
string | req | |
code |
string | req | |
isHidden |
boolean | opt | |
isActive |
boolean | opt | |
expiresAt |
string | req | |
claimsLeft |
number | opt | |
minVipLevelToClaim |
number | opt | |
affiliateCodeToClaim |
string | opt | |
lockWithdrawOnClaimHours |
number | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
amount |
string | req | |
currencyId |
string | req | |
isActive |
boolean | req | |
minKYCLevelToClaim |
string | req | |
minTotalWagerUsdToClaim |
string | req | |
minTotalDepositUsdToClaim |
string | req | |
minDepositUsdToActivate |
string | req | |
maxBonusUsdAmount |
string | req | |
wagerMultiplierToComplete |
string | req | |
wagerUsdAmountToComplete |
string | req | |
claimedCount |
number | opt | Number of users who have claimed this promo code |
id |
string | req | |
createdAt |
string | req | |
updatedAt |
string | req | |
createdById |
number | req | |
title |
string | req | |
description |
string | req | |
imageUrl |
string | req | |
publicContent |
object | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/promo/{id} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/user-promo¶
Find claimed users' promo codes
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
userId |
query | opt | number | |
status |
query | opt | string | |
type |
query | opt | string | |
promoId |
query | opt | string | |
promoCode |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/user-promo/{id}¶
Cancel a user promo code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
customDecreaseAmount |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X DELETE http://localhost:4000/admin/user-promo/{id} \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Rakeback API¶
GET /rakeback¶
Rakeback_findOneRakeback
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
instant |
ref→RakebackInstantDto | req | |
daily |
ref→RakebackWithPeriodDto | req | |
weekly |
ref→RakebackWithPeriodDto | req | |
monthly |
ref→RakebackWithPeriodDto | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /rakeback/claim¶
Rakeback_claimRakeback
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
type |
string | req | |
double |
boolean | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
rakeback |
array | req |
Sample curl
curl -X POST http://localhost:4000/rakeback/claim \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Session API¶
GET /session¶
Get all sessions
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
onlyActive |
query | opt | boolean | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /session/log-out/current¶
Log out my device
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
Tracing context: Blind spot (medium). SessionService.logOutSingle has no manual span — Prisma session.delete auto-span is attributed straight to controller. See perf-trace-coverage-audit.md §logout.
DELETE /session/log-out/other¶
Log out of all devices except the current one
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
Tracing context: Same blind spot as /log-out/current.
DELETE /session/log-out/{sessionKey}¶
Log out of selected device by sessionKey
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sessionKey |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Sportsbook exteranal GR8 ( auth )¶
GET /sportsbook/integration/auth/get-sportsbook-public-key¶
Only for GR8. Cache - 15min
Auth: public
Response 200: string
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /sportsbook/integration/auth/get-sportsbook-token¶
Get JWT token for sportsbook IFrame.
Auth: public
Response 200:
| field | type | required | description |
|---|---|---|---|
token |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Sportsbook external GR8¶
GET /sportsbook/integration/{userId}/balance¶
Only for GR8.
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | string | |
currencies |
query | opt | ? |
Response 200:
| field | type | required | description |
|---|---|---|---|
sport |
object | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /sportsbook/integration/{userId}/transactions¶
Only for GR8.
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
id |
string | req | |
currency |
object | req | |
platform |
string | req | |
type |
string | req | |
initiatedAt |
string | req | |
createdAt |
string | req | |
context |
ref→TransactionContext | req | |
amountBreakdown |
ref→BalanceAmountDto | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
balances |
ref→UserSportsBookDeposit | req | |
status |
boolean | req | |
alreadyProcessed |
boolean | req | |
id |
string | req | |
currency |
object | req | |
platform |
string | req | |
type |
string | req | |
initiatedAt |
string | req | |
createdAt |
string | req | |
context |
ref→TransactionContext | req | |
amountBreakdown |
ref→BalanceAmountDto | req |
Sample curl
curl -X POST http://localhost:4000/sportsbook/integration/{userId}/transactions \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /sportsbook/integration/{userId}/transactions/{transactionId}¶
Only for GR8.
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
transactionId |
path | req | string | |
incomingType |
path | opt | string | |
betId |
path | opt | string | |
userId |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
balances |
ref→UserSportsBookDeposit | req | |
status |
boolean | req | |
alreadyProcessed |
boolean | req | |
id |
string | req | |
currency |
object | req | |
platform |
string | req | |
type |
string | req | |
initiatedAt |
string | req | |
createdAt |
string | req | |
context |
ref→TransactionContext | req | |
amountBreakdown |
ref→BalanceAmountDto | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
User API¶
PATCH /user/change-password¶
(Auth)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
oldPassword |
string | req | |
newPassword |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
result |
string | req |
Sample curl
curl -X PATCH http://localhost:4000/user/change-password \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /user/confirm-password-reset¶
(Anonymous)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
token |
string | req | |
newPassword |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
result |
string | req |
Sample curl
curl -X PATCH http://localhost:4000/user/confirm-password-reset \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /user/disable-2fa¶
(Auth) Disable 2FA
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /user/enable-2fa¶
(Auth)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
otpPassword |
string | req | |
mfaSecret |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
recoveryCodes |
array | req |
Sample curl
curl -X POST http://localhost:4000/user/enable-2fa \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /user/forgot-password¶
(Anonymous)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
userEmail |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
result |
string | req |
Sample curl
curl -X POST http://localhost:4000/user/forgot-password \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /user/generate-2fa¶
(Auth)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
secret |
string | req | |
authUrl |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /user/me¶
(Auth)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
createdAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
isStreamerMode |
boolean | req | |
vipLevel |
number | req | |
email |
string | req | |
googleEmail |
string | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
avatar |
string | req | |
roles |
array | req | |
permissions |
array | req | |
isBanned |
boolean | req | |
emailVerified |
boolean | req | |
emailVerificationPending |
boolean | req | |
kyc |
? | req | |
isEmailNotificationsEnabled |
boolean | req | |
intercomToken |
string | opt | |
mfaEnabled |
boolean | req |
Sample curl
Tracing context: Auto HTTP + Prisma. Auth guard hits Redis session cache (auto-spanned).
PATCH /user/me¶
(Auth)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
isPrivate |
boolean | opt | |
isStreamerMode |
boolean | opt | |
isEmailNotificationsEnabled |
boolean | opt | |
steamTradeLink |
string | opt |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
createdAt |
string | req | |
username |
string | req | |
isPrivate |
boolean | req | |
isStreamerMode |
boolean | req | |
vipLevel |
number | req | |
email |
string | req | |
googleEmail |
string | req | |
steamId |
string | req | |
steamTradeLink |
string | req | |
avatar |
string | req | |
roles |
array | req | |
permissions |
array | req | |
isBanned |
boolean | req | |
emailVerified |
boolean | req | |
emailVerificationPending |
boolean | req | |
kyc |
? | req | |
isEmailNotificationsEnabled |
boolean | req | |
intercomToken |
string | opt | |
mfaEnabled |
boolean | req |
Sample curl
curl -X PATCH http://localhost:4000/user/me \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /user/me/stats¶
(Auth)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
totalWagered |
string | req | |
totalPayouts |
string | req | |
totalDeposits |
string | req | |
totalWithdraws |
string | req | |
ltv |
string | req | |
totalLoss |
string | req | |
withdrawalLimit |
string | req | |
totalBets |
number | req | |
joined |
string | req | |
referredCode |
string | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /user/request-email-verification¶
(Auth)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /user/reset-2fa¶
(Auth) Reset 2FA with recovery code
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 201:
| field | type | required | description |
|---|---|---|---|
secret |
string | req | |
authUrl |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /user/verify-email¶
(Anonymous)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
token |
query | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
result |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /user/{username}/stats¶
(Anonymous)
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
username |
path | req | string |
Response 200:
| field | type | required | description |
|---|---|---|---|
exp |
string | req | |
totalWagered |
string | req | |
isPrivate |
boolean | req | |
username |
string | req | |
avatar |
string | req | |
vipLevel |
number | req | |
createdAt |
string | req | |
totalBets |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
User Limits API¶
POST /traffic-income/registration¶
TrafficArbitrage_createRegistration
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
provider |
string | req | |
subId |
string | req |
Response 201: (no body)
Sample curl
curl -X POST http://localhost:4000/traffic-income/registration \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /user-limits/self-exclusion¶
get self-exclusion
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
can |
boolean | req | |
expiresAt |
string | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /user-limits/self-exclusion¶
Create self-exclusion
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
excludeUntil |
string | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
can |
boolean | req | |
expiresAt |
string | opt |
Sample curl
curl -X POST http://localhost:4000/user-limits/self-exclusion \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
User tips API¶
GET /admin/tips¶
Get tips history
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
userId |
query | opt | number | |
page |
query | req | number | |
take |
query | req | number |
Response 200: allOf:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
| field | type | required | description |
|---|---|---|---|
data |
array | opt | |
total |
number | opt |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /tips¶
Tips_findMany
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
data |
array | req | |
take |
number | req | |
page |
number | req | |
total |
number | req | |
totalPages |
number | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /tips¶
Send tip to a user
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
currencyId |
string | req | |
recipientUsername |
string | req | |
isPublic |
boolean | req |
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X POST http://localhost:4000/tips \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
VipApplication¶
GET /vip-program/application¶
VipApplication_getApplication
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Response 200:
| field | type | required | description |
|---|---|---|---|
status |
object | req | |
name |
string | req | |
social |
string | req | |
transfer |
object | opt | |
favorites |
string | opt | |
imageUrl |
array | opt | |
createdAt |
string | req | |
updatedAt |
string | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /vip-program/application¶
VipApplication_upsertApplication
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
social |
string | req | |
name |
string | req | |
socialNick |
string | req | |
transferSite |
string | req | |
transferWagger |
number | req | |
transferReasons |
string | opt | |
transferAvgDeposit |
number | req | |
transferPlaysWeek |
number | req | |
favoritesGames |
string | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X POST http://localhost:4000/vip-program/application \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /vip-program/upload/stats¶
VipApplication_uploadImageStats
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Request body (multipart/form-data):
| field | type | required | description |
|---|---|---|---|
image |
file | opt |
Response 201:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X POST http://localhost:4000/vip-program/upload/stats \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
VipApplicationAdmin¶
GET /admin/vip-program/all¶
VipApplicationAdmin_getAdminApplications
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
sortBy |
query | req | string | |
sortOrder |
query | req | string | |
status |
query | opt | string | |
userId |
query | opt | number | |
search |
query | opt | string | |
page |
query | req | number | |
take |
query | req | number |
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
DELETE /admin/vip-program/{id}¶
VipApplicationAdmin_deleteApplication
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
GET /admin/vip-program/{id}¶
VipApplicationAdmin_getApplication
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Response 200: object
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
PATCH /admin/vip-program/{id}/status¶
VipApplicationAdmin_updateApplication
Auth: required (bearer — JWT in Authorization: Bearer … or access_token cookie)
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
id |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
status |
string | req |
Response 200:
| field | type | required | description |
|---|---|---|---|
success |
boolean | req |
Sample curl
curl -X PATCH http://localhost:4000/admin/vip-program/{id}/status \
-H 'Cookie: access_token=<JWT>' \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
Webhooks¶
POST /payments/integration/ccpayment/webhook¶
CCPaymentWebhook_webhook
Auth: public
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /payments/integration/nowpayments/deposit/{userId}¶
NowpaymentsWebhook_deposit
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
userId |
path | req | number |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
payment_id |
number | req | |
parent_payment_id |
number | req | |
invoice_id |
string | req | |
payment_status |
string | req | |
pay_address |
string | req | |
payin_extra_id |
string | req | |
price_amount |
number | req | |
price_currency |
string | req | |
pay_amount |
number | req | |
actually_paid |
number | req | |
actually_paid_at_fiat |
number | req | |
pay_currency |
object | req | |
order_id |
string | req | |
order_description |
string | req | |
purchase_id |
string | req | Unique ID for each transaction. Even in context of one payme |
outcome_amount |
number | req | |
outcome_currency |
object | req | |
payment_extra_ids |
array | req | |
fee |
ref→NowpaymentWebhookPaymentFeeDto | req |
Response 200: (no body)
Sample curl
curl -X POST http://localhost:4000/payments/integration/nowpayments/deposit/{userId} \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /payments/integration/nowpayments/webhook¶
NowpaymentsWebhook_notification
Auth: public
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
payment_id |
number | req | |
parent_payment_id |
number | req | |
invoice_id |
string | req | |
payment_status |
string | req | |
pay_address |
string | req | |
payin_extra_id |
string | req | |
price_amount |
number | req | |
price_currency |
string | req | |
pay_amount |
number | req | |
actually_paid |
number | req | |
actually_paid_at_fiat |
number | req | |
pay_currency |
object | req | |
order_id |
string | req | |
order_description |
string | req | |
purchase_id |
string | req | Unique ID for each transaction. Even in context of one payme |
outcome_amount |
number | req | |
outcome_currency |
object | req | |
payment_extra_ids |
array | req | |
fee |
ref→NowpaymentWebhookPaymentFeeDto | req |
Response 200: (no body)
Sample curl
curl -X POST http://localhost:4000/payments/integration/nowpayments/webhook \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /payments/integration/nowpayments/withdraw/{withdrawId}¶
NowpaymentsWebhook_withdraw
Auth: public
Parameters
| name | in | required | type | description |
|---|---|---|---|---|
withdrawId |
path | req | string |
Request body (application/json):
| field | type | required | description |
|---|---|---|---|
amount |
string | req | |
fee |
string | req | |
created_at |
string | req | |
requested_at |
string | req | |
updated_at |
string | req | |
id |
string | req | |
batch_withdrawal_id |
string | req | |
status |
string | req | |
error |
string | req | |
currency |
object | req | |
address |
string | req | |
extra_id |
string | req | |
hash |
string | req | |
ipn_callback_url |
string | req |
Response 200: (no body)
Sample curl
curl -X POST http://localhost:4000/payments/integration/nowpayments/withdraw/{withdrawId} \
-H 'Content-Type: application/json' \
-d '{ ... }'
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.
POST /payments/integration/skindeck/webhook¶
SkinDeck sends POST requests to your callback URL for each trade.
- Always respond with status 200, even for errors. Include error messages in the response body.
- If you don't include an "error" in the response, the action will proceed.
- You can view callback history and resend failed callbacks on the Skindeck dashboard.
- Ensure your system can handle potential duplicate callbacks without creating issues.
- Keep the client updated as trade statuses change. Not all statuses need to be shown to the user (e.g., you can merge the initiated and pending status, and the failed & canceled status).
- For initiating multiple deposits/withdrawals at once, multiple requests need to be sent. They will be queued on our backend to ensure proper processing order.
- When fetching the user's inventory, use the parameter sparingly. It should only be used on initial load or when the user specifically clicks the refresh button. Otherwise, use the cached inventory for quicker pagination and search operations.
Auth: public
Response 200: (no body)
Sample curl
Tracing context: auto HTTP span (@opentelemetry/instrumentation-nestjs-core) + Prisma auto-spans for any DB calls. No manual tracer.startActiveSpan wrapping.