General Requirements & Information
Preferred data format: CSV for large datasets, JSON for smaller payloads.
Timezone: All timestamps must be in UTC, formatted using the ISO 8601 standard (YYYY-MM-DD HH:MM:SS).
Spaces in URLs: Encode as + or %20.
Time range filtering:
Each endpoint must support from and to GET parameters and return records where
from <= last_modified < toTimestamps: Every record must include a modified_at (or equivalent) timestamp that only increases — timestamps must never decrease.
Authorization:
You can use any method — Basic Auth, OAuth, md5-signature, or login + password. Please provide clear examples or documentation of how authorization works on your side.
Polling Cadence & Offsets
Default: every minute we pull the previous closed minute (from <= modified_at < to).
Custom periods: any requested window (minutes/hours/days) supported via from/to.
Offsets: can apply delay offsets (e.g., “previous minute minus 2m”) across all endpoints to handle late writes.
Whitelisting
Please allow outbound IPs listed here to ensure stable imports & webhooks:
InTarget IPs to Whitelist:
https://docs.google.com/spreadsheets/d/1NC9mw9-sjNh2L451NFHzFX-WSAWNpJHbjuVbPPoR-f0/edit?usp=sharing
Data Sync Example
Every hour, InTarget fetches updated data from your product (“SpaceVegas”).
Example request
GET https://space-vegas.com/api/users?from=2020-10-10+07:00:00&to=2020-10-10+08:00:00
Expected behavior
Return all users created or modified within this time window.
id | registered_at | modified_at | birthday | |
58013 | 2020-10-06 02:02:14 | 2020-10-10 07:58:22 | 1985-07-10 | |
51153 | 2020-10-06 11:43:43 | 2020-10-10 07:12:09 | 2002-09-06 | — |
InTarget will insert new users and update existing ones, then continue with the next interval.
Endpoints Overview
Below are all supported data endpoints and their expected structures.
Players
Endpoint:
{
"id": "11ecc708-32d5-423b-bd59-7d114c26c979",
"first_name": "Aniyah",
"last_name": "Shanahan",
"gender": "male",
"country": "Liberia",
"city": "North Angusland",
"ip": "242.236.212.175",
"locale": "ro_MD",
"timezone": "Europe/London",
"birthday": "1974-10-17",
"registered_at": "2023-07-20 17:15:38",
"ref_code": "praesentium",
"user_agent": "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.0; Trident/5.1)",
"modified_at": "2023-07-20 15:19:03",
"is_blocked": true,
"status": "Normal",
"self_excluded": false,
"utm_source": "google",
"utm_medium": "organic",
"utm_campaign": "holiday_special"
}Field | Type | Required | Description | Allowed values / Format |
id | string | Yes | Player unique ID | UUID/string |
first_name | string | No | First name | — |
last_name | string | No | Last name | — |
gender | string | No | Gender | male, female |
country | string | No | Country | ISO 3166-1 alpha-2 or name |
city | string | No | City | — |
ip | string | No | Last known IP | IPv4/IPv6 |
locale | string | No | Preferred language + country | ISO-639 (e.g., en_US) |
timezone | string | No | IANA timezone | e.g., Europe/London |
birthday | date | No | Date of birth | YYYY-MM-DD |
registered_at | datetime | Yes | Registration timestamp | YYYY-MM-DD HH:MM:SS |
ref_code | string | No | Referral/code for traffic detection | — |
user_agent | string | No | UA of last significant action | — |
modified_at | datetime | Yes | Last profile change (monotonic non-decreasing) | YYYY-MM-DD HH:MM:SS |
is_blocked | boolean | No | User blocked and cannot log in | true/false or 1/0 |
status | string | No | Internal status | free text (e.g., Normal) |
self_excluded | boolean | No | Must be unsubscribed from all comms | true/false or 1/0 |
utm_source | string | No | UTM source | — |
utm_medium | string | No | UTM medium | — |
utm_campaign | string | No | UTM campaign | — |
Custom Fields in the "Players" feed
If you have any additional information about your player, we can import them as custom fields with the following data types:
Integer
Fractional number with two decimal places
String
Date (YYYY-MM-DD HH:MM:SS)
Arrays (tag1, tag2, tag3, etc)
Contacts
{
"player_id": "ec6a17d4-cd16-4d47-a927-711653025f62",
"email": "[email protected]",
"email_confirmed_at": "2023-07-20 21:57:21",
"email_subscribe": false,
"phone": "1-646-244-1503",
"phone_subscribe": true,
"phone_confirmed_at": "2023-07-20 23:59:38",
"push_token": "u2rX45EyFM6zcgFCQCVUNG:V8-TE5bCsEkFxVTDfY2-HJRR9BB2-K8ABrQCrczREbtkGMdOFo_tXg6FytWQHuZNkmWDOLy8cl7QoTFbgZLRaUrnlU_RO7uPBGq53VQEhCVxqbw8CJ7CP6HVBqzKaocWmjWcBwqNqwTt",
"created_at": "2023-07-20 19:57:47",
"modified_at": "2023-07-20 23:27:49"
}Field | Type | Required | Description | Format / Notes |
player_id | string | Yes | Links contact to player | — |
string | No | — | ||
email_confirmed_at | datetime | No | When email was confirmed | YYYY-MM-DD HH:MM:SS |
email_subscribe | boolean | No | Email subscribed to comms | true/false or 1/0 |
phone | string | No | Phone number | E.164 or local |
phone_confirmed_at | datetime | No | When phone was confirmed | YYYY-MM-DD HH:MM:SS |
phone_subscribe | boolean | No | Phone subscribed to comms | true/false or 1/0 |
push_token | string | No | Push device token | — |
created_at | datetime | Yes | Contact record created | YYYY-MM-DD HH:MM:SS |
modified_at | datetime | Yes | Last change (monotonic) | YYYY-MM-DD HH:MM:SS |
Transactions (Deposits, Withdrawals, Bonuses)
{
"id": "99a59fef-79ae-3be9-8517-0a3515b613fe",
"player_id": "0976dfcb-0110-4d5f-af4a-01664dc54f58",
"amount": 969,
"currency": "CVE",
"type": "normal",
"status": "Success",
"payment_system": "VISA",
"dir": "Out",
"ref_code": "odit",
"created_at": "2023-07-20 20:36:43",
"updated_at": "2023-07-20 20:36:43",
"wallet_id": "8BOfUkI3VLm6HoI2b6KnKd0pyim4X6D4",
"requisite": "4916-1553-9365-8",
"comment": "Ullam deserunt nam eos accusantium deserunt enim magnam. Adipisci cupiditate odio pariatur ipsum velit ea. Nostrum illum aut veniam eveniet quo non.",
"utm_source": "google",
"utm_medium": "organic",
"utm_campaign": "holiday_special"
}Field | Type | Required | Description | Allowed values / Format |
id | string | Yes | Transaction unique ID | UUID/string |
player_id | string | Yes | Player ID | — |
amount | number | Yes | Transaction amount | integer/decimal |
currency | string | Yes | Original currency | ISO 4217 (e.g., USD, EUR, AUD, …) |
dir | string | Yes | Direction | IN (deposit) / OUT (withdrawal) |
type | string | No | Operation type | Normal(Real), Prize(Bonus), Compensation, Cashback, Fake(Test), Other |
status | string | No | Transaction status | New,Process,Success,Fail |
payment_system | string | No | Payment system name | e.g., VISA, Mastercard, PIX, … |
ref_code | string | No | Referral code | — |
created_at | datetime | Yes | Created timestamp | YYYY-MM-DD HH:MM:SS |
updated_at | datetime | Yes | Last update timestamp (monotonic) | YYYY-MM-DD HH:MM:SS |
wallet_id | string | No | Affected wallet ID | — |
requisite | string | No | Masked requisite (card/email/phone/external wallet etc.) | e.g., 4916-****-****-8 |
comment | string | No | Free text | — |
utm_source | string | No | UTM source | — |
utm_medium | string | No | UTM medium | — |
utm_campaign | string | No | UTM campaign | — |
Logins
{
"id": "e3717c77-3798-3a3d-828c-af00604517b3",
"player_id": "2dc84cf0-bd9d-4415-80a4-c8d4a63f980b",
"ip": "71.35.116.25",
"created_at": "2023-07-20 16:54:01",
"ref_code": "odit",
"user_agent": "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.2; Trident/5.0)",
"host": "https://hessel.com/consequatur-id-quo-et-hic-sunt.html",
"is_success": true,
"utm_source": "google",
"utm_medium": "organic",
"utm_campaign": "holiday_special"
}
Field | Type | Required | Description | Allowed values / Format |
id | string | Yes | Login unique ID | UUID/string |
player_id | string | Yes | Player ID | — |
ip | string | No | IP address | IPv4/IPv6 |
created_at | datetime | Yes | Login attempt timestamp | YYYY-MM-DD HH:MM:SS |
ref_code | string | No | Referral code | — |
user_agent | string | No | User agent | — |
host | string | No | Real hostname / mirror | URL |
is_success | boolean | No | Login success | true/false or 1/0 |
utm_source | string | No | UTM source | — |
utm_medium | string | No | UTM medium | — |
utm_campaign | string | No | UTM campaign | — |
Auto Logins
{
"player_id": "2dc84cf0-bd9d-4415-80a4-c8d4a63f980b",
"login_token": "c58ac9c3-85a9-44af-b3a1-2c49de51139b",
"updated_at": "2023-07-20 16:54:01"
}Field | Type | Required | Description |
player_id | string | Yes | Player ID |
login_token | string | Yes | Token to build auto-login URL |
updated_at | datetime | Yes | Last token update time (monotonic) |
How It Works
The Auto Login feed enables automatic authentication of users during message delivery or campaign steps.
When integrated, the system can include a personalized login URL (for example, within an email or push notification), allowing users to access the product instantly without entering credentials.
Wallets (Balances)
{
"id": "-N5xU-htd_BCgT1G-5xR1C5Zo-6POPHO",
"player_id": "b6334f88-16bf-48b5-bf28-171342ad8a04",
"type": "Real",
"balance": 574,
"currency": "UGX",
"is_primary": true,
"created_at": "2023-07-21 00:00:01",
"modified_at": "2023-07-21 02:15:51"
}Field | Type | Required | Description | Allowed values / Format |
id | string | Yes | Wallet unique ID | — |
player_id | string | Yes | Player ID | — |
type | string | Yes | Wallet/balance type | Real(Normal), Prize(Bonus), Other |
balance | number | Yes | Current balance | integer/decimal |
currency | string | Yes | Wallet currency | ISO 4217 |
is_primary | boolean | No | Wallet is primary for a user | true/false |
created_at | datetime | Yes | Wallet created | YYYY-MM-DD HH:MM:SS |
modified_at | datetime | Yes | Last balance change (monotonic on change events) | YYYY-MM-DD HH:MM:SS |
Bonus Assignments
{
"id": "-N5xU-htd_BCgT1G-5xR1C5Zo-2456",
"player_id": "b6334f88-16bf-48b5-bf28-171342ad8a04",
"bonus_id": "e3717c77-3798-3a3d-828c-af00604517b3",
"end_date": 2023-08-21 02:15:51,
"created_at": 2023-07-21 00:00:01,
"modified_at": 2023-07-21 02:15:51,
"active": 0,
"used": 0
}
Field | Type | Required | Description | Allowed values / Format |
id | string | Yes | Unique assignment ID | — |
player_id | string | Yes | Player ID | — |
bonus_id | string | Yes | References Bonus List.id | — |
end_date | datetime | No | Expiration of assignment | YYYY-MM-DD HH:MM:SS |
created_at | datetime | No | Assignment created | YYYY-MM-DD HH:MM:SS |
modified_at | datetime | No | Last update | YYYY-MM-DD HH:MM:SS |
active | boolean | No | Assignment active | true/false or 1/0 |
used | boolean | No | Assignment already used | true/false or 1/0 |
Bonus List
{
"id": "-N5xU-htd_BCgT1G-5xR1C5Zo-2456",
"name": "Welcome Bonus",
"created_at": 2023-07-21 00:00:01,
"modified_at": 2023-07-21 00:00:01,
}Field | Type | Required | Description |
id | string | Yes | Bonus unique ID |
name | string | Yes | Human-readable name |
created_at | datetime | No | Created |
modified_at | datetime | No | Last update |
Casino Game Activity
Endpoint with game activity has its unique approach to fetch all game sessions. There are three steps of data composition:
Find all game session IDs that have at least one action within the time range
>=fromand<toFind all past and future actions of this session IDs, disregarding time.
Aggregate all data for each session. There must be one row in result data per one game session.
{
"player_id": "59a83d8c-edf9-461e-aa56-8887085d98a7",
"session_id": "6d13991f-f5ec-311a-9800-e18ad5df19e7",
"game_code": 5,
"game_name": "Lucky Lion",
"currency": "XAF",
"bet_count": 13,
"win_count": 5,
"bet_amount": 65,
"win_amount": 117,
"created_at": "2023-07-20 18:29:47",
"updated_at": "2023-07-20 18:29:47",
"game_vendor": "PARIPLAY",
"game_type": "slot",
"balance_type": "normal",
"ip": "223.102.23.37",
"user_agent": "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_8_6 rv:4.0; nl-NL) AppleWebKit/532.22.3 (KHTML, like Gecko) Version/4.1 Safari/532.22.3",
"ref_code": "qui",
"utm_source": "google",
"utm_medium": "organic",
"utm_campaign": "holiday_special"
}Field | Type | Required | Description |
player_id | string | Yes | Player ID |
session_id | string | Yes | Unique session ID |
game_code | string|int | No | Game identifier (numeric or string) |
game_name | string | Yes | Game name |
currency | string | Yes | Currency of bets/wins |
bet_count | integer | Yes | Total bets in session |
win_count | integer | Yes | Total winning rounds in session |
bet_amount | number | Yes | Sum of all bets |
win_amount | number | Yes | Sum of all wins |
created_at | datetime | Yes | First action timestamp |
updated_at | datetime | Yes | Last action timestamp |
game_vendor | string | No | Provider (e.g., PARIPLAY) |
game_type | string | No | slot, table_game, crash_games, instant_win, live_casino, lottery_and_keno |
balance_type | string | No | Real(Normal), Prize(Bonus), Other |
ip | string | No | IP used during session |
user_agent | string | No | UA during session |
ref_code | string | No | Referral/code |
utm_source | string | No | UTM source |
utm_medium | string | No | UTM medium |
utm_campaign | string | No | UTM campaign |
Sports Betting
Sports Betting Tournaments
{
"id": "vlbl-fivb-mens-world-championship",
"name": "FIVB Men's World Championship",
"sport_id": "vlbl",
"sport_name": "Volleyball",
"country_code": "International",
"start_date": "2023-08-28 14:44:03",
"end_date": "2023-08-31 14:44:03"
}Field | Type | Required | Description |
id | string | Yes | Tournament ID |
name | string | Yes | Tournament name |
sport_id | string | No | Sport code |
sport_name | string | No | Sport name |
country_code | string | No | Country / region |
start_date | datetime | Yes | Start |
end_date | datetime | No | End |
Sports Betting Events
{
"id": "iihf-match-ice-hockey-world-championship",
"tournament_id": "iihf-ice-hockey-world-championship",
"title": "Bolivia - Peru",
"status": "cancelled",
"start_date": "2023-08-28 14:47:07",
"updated_at": "2023-08-28 15:47:07",
"type": "outright"
}Field | Type | Required | Description | Allowed values |
id | string | Yes | Event ID | — |
tournament_id | string | Yes | Parent tournament ID | — |
title | string | Yes | Event title (e.g., Team A - Team B) | — |
status | string | Yes | Event status | not_started,abandoned,suspended,live,ended,closed,delayed,cancelled,unknown,prematch |
start_date | datetime | Yes | Scheduled start | YYYY-MM-DD HH:MM:SS |
updated_at | datetime | No | Last status update | YYYY-MM-DD HH:MM:SS |
type | string | Yes | Event type | match,outright |
Sports Betting Bets
{
"id": "2b2c4cd6-0631-3698-ba04-18dc2935eeca",
"player_id": "11ecc708-32d5-423b-bd59-7d114c26c979",
"status": "arbitrage_accepted",
"type": "single",
"stake": 490,
"win_amount": 442,
"currency": "CUC",
"ref_code": "odit",
"created_at": "2023-07-20 14:03:48",
"modified_at": "2023-07-20 21:10:44",
"utm_source": "google",
"utm_medium": "organic",
"utm_campaign": "holiday_special"
}Field | Type | Required | Description | Allowed values / Notes |
id | string | Yes | Bet ID | — |
player_id | string | Yes | Player ID | — |
status | string | No | Bet status | accepted,declined,force_decline,rolled_back,unsettled,place_error,created,arbitrage_accepted,placed,win,lost,cashout |
type | string | Yes | Bet type | e.g., single (other values allowed as used by your system) |
stake | number | No | Stake amount | — |
win_amount | number | No | Win amount | — |
currency | string | No | Bet currency | ISO 4217 |
ref_code | string | No | Referral code | — |
created_at | datetime | Yes | Created | YYYY-MM-DD HH:MM:SS |
modified_at | datetime | Yes | Last update (monotonic) | YYYY-MM-DD HH:MM:SS |
utm_source | string | No | UTM source | — |
utm_medium | string | No | UTM medium | — |
utm_campaign | string | No | UTM campaign | — |
Sports Betting Odds
{
"id": "f29525c1-add5-3f7e-862e-a94e4d5ca0ef",
"bet_id": "2b2c4cd6-0631-3698-ba04-18dc2935eeca",
"event_id": "tns-match-europe-tournament",
"ratio": 3.6,
"status": "win",
"market": "Match Result",
"created_at": "2023-07-20 22:42:49",
"updated_at": "2023-07-20 22:42:49"
}Field | Type | Required | Description | Allowed values / Notes |
id | string | Yes | Odds record ID | — |
bet_id | string | Yes | Links to bet | — |
event_id | string | Yes | Links to event | — |
ratio | number | No | Odds value | decimal |
status | string | No | Outcome status | win,not_resulted,running,refunded,lost,half_win,cancelled,rejected,half_loss |
market | string | Yes | Market name | e.g., Match Result |
created_at | datetime | Yes | Created | YYYY-MM-DD HH:MM:SS |
updated_at | datetime | Yes | Last update | YYYY-MM-DD HH:MM:SS |
Supported Cryptocurrencies
Our system supports a specific set of cryptocurrencies:
• BTC (Bitcoin)
• ETH (Ethereum)
• USDT (Tether)
• BNB (Binance Coin)
• SOL (Solana)
• USDC (USD Coin)
• XRP (Ripple)
• DOGE (Dogecoin)
• TON (Toncoin)
• ADA (Cardano)
• SHIB (Shiba Inu)
• AVAX (Avalanche)
• TRX (TRON)
• DOT (Polkadot)
• LINK (Chainlink)
• BCH (Bitcoin Cash)
• UNI (Uniswap)
• MATIC (Polygon)
• LTC (Litecoin)
• NEAR (NEAR Protocol)
Please ensure that all transactions and operations are performed using one of the above-supported cryptocurrencies to avoid any issues.
If the cryptocurrency you need is not listed above, please contact our support team for assistance.
