API Documentation
Integrate with our secure casino backend infrastructure
Getting Started
Welcome to the CasinoCore API documentation. Our API allows you to integrate with our secure casino backend infrastructure, handling user authentication, wallet operations, and game mechanics.
Base URL
https://api.casinocore.com/v1Authentication
All API requests require authentication using HttpOnly cookies
Authentication
OAuth authentication endpoints for user login and registration
POST
/v1/auth/register
Register a new user
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| string | Required | User email address | |
| password | string | Required | User password (min 8 characters) |
| username | string | Required | Unique username |
Responses
User registered successfully
{
"success": true,
"data": {
"user_id": "123",
"access_token": "jwt_token",
"refresh_token": "refresh_token"
}
}Invalid request parameters
{
"success": false,
"error": "Email already in use"
}POST
/v1/auth/login
Authenticate a user
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| string | Required | User email address | |
| password | string | Required | User password |
Responses
Authentication successful
{
"success": true,
"data": {
"user_id": "123",
"access_token": "jwt_token",
"refresh_token": "refresh_token"
}
}Invalid credentials
{
"success": false,
"error": "Invalid email or password"
}POST
/v1/auth/refresh
Refresh access token
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| refresh_token | string | Required | Refresh token received during login |
Responses
Token refreshed successfully
{
"success": true,
"data": {
"access_token": "new_jwt_token"
}
}Invalid refresh token
{
"success": false,
"error": "Invalid or expired refresh token"
}Wallet
Endpoints for managing user deposits and withdrawals
GET
/api/v1/wallet/balance
Get user wallet balance
Responses
Balance retrieved successfully
{
"success": true,
"data": {
"balance": 1250,
"currency": "USD"
}
}Unauthorized
{
"success": false,
"error": "Authentication required"
}POST
/api/v1/wallet/deposit
Initiate a deposit
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | Required | Amount to deposit |
| method | string | Required | Payment method (credit_card, paypal, bitcoin, ethereum) |
Responses
Deposit initiated successfully
{
"success": true,
"data": {
"transaction_id": "tx123",
"amount": 100,
"status": "pending",
"payment_url": "https://payment.gateway.com/checkout/123"
}
}Invalid request parameters
{
"success": false,
"error": "Amount must be at least 10.00"
}POST
/api/v1/wallet/withdraw
Request a withdrawal
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | Required | Amount to withdraw |
| method | string | Required | Withdrawal method (bank_transfer, paypal, bitcoin, ethereum) |
| address | string | Required | Destination address or account |
| password | string | Required | User password for security verification |
Responses
Withdrawal requested successfully
{
"success": true,
"data": {
"transaction_id": "tx456",
"amount": 100,
"fee": 1,
"net_amount": 99,
"status": "pending"
}
}Invalid request parameters
{
"success": false,
"error": "Insufficient balance"
}Invalid password
{
"success": false,
"error": "Invalid password"
}Games
Endpoints for game operations and bet placement
GET
/api/v1/games
Get list of available games
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| category | string | Optional | Filter by game category (slots, table, cards, etc.) |
| limit | number | Optional | Number of games to return (default: 20) |
| offset | number | Optional | Pagination offset (default: 0) |
Responses
Games retrieved successfully
{
"success": true,
"data": {
"games": [
{
"id": "game1",
"name": "Blackjack",
"category": "cards",
"min_bet": 1,
"max_bet": 1000
}
],
"total": 50
}
}POST
/api/v1/games/{game_id}/bet
Place a bet on a game
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| game_id | string | Required | Game identifier |
| amount | number | Required | Bet amount |
| bet_data | object | Required | Game-specific bet data (varies by game type) |
Responses
Bet placed successfully
{
"success": true,
"data": {
"bet_id": "bet123",
"game_id": "game1",
"amount": 10,
"outcome": {
"result": "win",
"payout": 20
},
"provably_fair": {
"server_seed_hash": "abc123",
"client_seed": "def456",
"nonce": 1
}
}
}Invalid bet parameters
{
"success": false,
"error": "Bet amount exceeds maximum allowed"
}Unauthorized
{
"success": false,
"error": "Authentication required"
}GET
/api/v1/games/history
Get user bet history
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| game_id | string | Optional | Filter by game |
| start_date | string | Optional | Filter by start date (ISO format) |
| end_date | string | Optional | Filter by end date (ISO format) |
| limit | number | Optional | Number of records to return (default: 20) |
| offset | number | Optional | Pagination offset (default: 0) |
Responses
History retrieved successfully
{
"success": true,
"data": {
"bets": [
{
"bet_id": "bet123",
"game_id": "game1",
"amount": 10,
"outcome": "win",
"payout": 20,
"timestamp": "2024-06-15T14:23:45.000Z"
}
],
"total": 150
}
}Unauthorized
{
"success": false,
"error": "Authentication required"
}Provably Fair
Endpoints for the provably fair verification system
GET
/api/v1/provably-fair/server-seed/current
Get current server seed hash
Responses
Server seed hash retrieved successfully
{
"success": true,
"data": {
"serverSeedHash": "a77c676f4f5df5d421f9997f1e20c6995f9f3d2d9d57cd99c27d8e22a315d90a",
"createdAt": "2024-06-15T14:23:45.000Z"
}
}Unauthorized
{
"success": false,
"error": "Authentication required"
}POST
/api/v1/provably-fair/client-seed
Set a new client seed
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| clientSeed | string | Required | New client seed |
Responses
Client seed updated successfully
{
"success": true,
"data": {
"clientSeed": "your-custom-seed-string",
"previousServerSeed": "original-server-seed-revealed",
"previousServerSeedHash": "a77c676f4f5df5d421f9997f1e20c6995f9f3d2d9d57cd99c27d8e22a315d90a",
"newServerSeedHash": "b88d787f5f6df6e532f0098f2e31d7006f0f4e3e0e68de00d38d9f33b426e01b"
}
}Unauthorized
{
"success": false,
"error": "Authentication required"
}GET
/api/v1/provably-fair/verify/{bet_id}
Get verification data for a specific bet
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| bet_id | string | Required | Bet identifier |
Responses
Verification data retrieved successfully
{
"success": true,
"data": {
"betId": "bet123",
"serverSeed": "original-server-seed-revealed",
"clientSeed": "client-seed-used",
"nonce": 42,
"result": 0.7523841253648291,
"gameOutcome": {
"type": "dice",
"roll": 75
}
}
}Bet not found
{
"success": false,
"error": "Bet not found"
}