eGaming - QProtocol events
eGaming - QProtocol events
This is for:
DeveloperegView
Experimentation Hub Core
Experimentation Hub Social proof
Experimentation Hub Abandonment recovery
The egView
event reports a page view and is a special event because it’s required by smartserve.js for data collection and processing.
It’s therefore essential that every page emits an egView
event and that it’s emitted before any other event.
Any CEH events emitted before the first |
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
type (String) |
Can be one of account, betslip, cashier, confirmation, content, event, game, gametypes, home, listing, promo, registration, search |
|
language (String) |
The language used in this view. Must be an IETF language code |
|
country (String) |
The selected country for the view. Must be an ISO Alpha 2 code |
|
currency (String) |
The ISO 4217 currency code for the user, (for example, |
|
subtypes (String[]) |
An unordered list of subtypes to describe the view |
|
environment (String) |
Reports the environment, that is, development, staging, or production |
|
siteVersion (String) |
The selected site version for the view (for example, desktop, mobile, tablet) |
|
Example JavaScript
uv.emit('egView', {
type: null,
subtypes: [
'Soccer',
'World Cup 2018',
'Qualifications'
],
environment: null,
language: 'en-us',
country: 'US',
siteVersion: 'desktop',
currency: 'USD'
})
egUser
Experimentation Hub Core
Experimentation Hub Abandonment recovery
The egUser
event is emitted once per view and reports visitor metadata.
The event should be emitted on every page as long as there’s data available for the user.
For many sites, the event will be present and well populated when the visitor logs on. Sites with a newsletter subscription form that the visitor has previously submitted, might be able to populate the name and email address for the visitor using the data collected on form submission.
It’s acceptable to emit hashed user Ids but be aware that to ingest data for use in Qubit’s platform, the user Ids in the provided dataset must be hashed in the same way. |
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
user.id (String) |
A unique user Id. Can also be a hash of the username and/or email address |
|
user.email (String) |
The user’s primary email address |
|
user.title (String) |
The user’s title |
|
user.firstName (String) |
The user’s first name |
|
user.lastName (String) |
The user’s last name |
|
user.gender (String) |
The user’s gender. Can be |
|
user.username (String) |
The username for the user |
|
user.firstSession (Boolean) |
True if it’s the user’s first session |
|
user.hasTransacted (Boolean) |
True if the user has completed 1 or more transactions |
|
user.loyalty.id (String) |
Loyalty program membership number |
|
user.loyalty.tier (String) |
The level of the loyalty program this user holds |
|
user.loyalty.tierPoints (Number) |
The number of tier points |
|
user.loyalty.membershipType (String) |
The type of loyalty membership |
|
user.loyalty.membershipPoints (Number) |
The number of points from this membership |
|
user.address.addressee (String) |
Full name of the person for whom the address is for |
|
user.address.company (String) |
The name of the company |
|
user.address.lines (String[]) |
An array of address lines NOT including city, region, postcode or country (maximum of 3 lines allowed) |
|
user.address.locality (String) |
The town or city |
|
user.address.region (String) |
E.g state in the US, county in the UK |
|
user.address.postalCode (String) |
Can be the country equivalent code (for example, zip code for the U.S) |
|
user.address.country (String) |
The name of the country |
|
user.address.countryCode (String) |
An ISO 3166-1 alpha-2 country code |
|
user.isGuest (String) |
True if the user is a guest user without a registered account |
|
user.age (Number) |
The user’s age in years |
|
user.phoneNumber (String) |
The user’s phone number. Should be formatted without spaces, braces, or hyphens |
|
user.countryCallingCode (String) |
The country calling code for the given phone number, formatted to include the |
|
user.balance (Price) |
The balance of the user. |
|
user.balance.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
user.balance.currency (String) |
The ISO 4217 currency (for example, |
|
user.deviceId (String) |
Device ID for the user. |
|
Example JavaScript
uv.emit('egUser', {
user: {
id: '2861102bace6e6620948564f0ce0a7cd',
title: 'Mr',
firstName: 'John',
lastName: 'Smith',
gender: 'Male',
username: 'JohnSmith',
email: 'john@johnsmith.com',
firstSession: null,
hasTransacted: true,
loyalty: {
id: '8989752-223',
tier: 'silver',
tierPoints: null,
membershipType: 'Clearsky Rewards',
membershipPoints: null
},
address: {
addressee: 'John Smith',
company: 'Amce Inc',
lines: [
'Flat 12',
'123 High Street'
],
locality: 'London',
region: 'New York',
postalCode: '10010',
country: 'United States',
countryCode: 'US'
},
isGuest: 'true',
age: 42,
phoneNumber: '2121234567',
countryCallingCode: '1',
balance: {
value: 9.99,
currency: 'USD'
},
deviceId: 'Q3OP6VG8HYE5'
}
})
egUserLogin
Experimentation Hub Core
Emitted when a user logs in.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
user.id (String) |
A unique user Id. Can also be a hash of the username and/or email address |
|
user.email (String) |
The user’s primary email address |
|
type (String) |
Type of log in |
|
user.title (String) |
The user’s title |
|
user.firstName (String) |
The user’s first name |
|
user.lastName (String) |
The user’s last name |
|
user.gender (String) |
The user’s gender. Can be |
|
user.username (String) |
The username for the user |
|
user.firstSession (Boolean) |
True if it’s the user’s first session |
|
user.hasTransacted (Boolean) |
True if the user has completed 1 or more transactions |
|
user.loyalty.id (String) |
Loyalty program membership number |
|
user.loyalty.tier (String) |
The level of the loyalty program this user holds |
|
user.loyalty.tierPoints (Number) |
The number of tier points |
|
user.loyalty.membershipType (String) |
The type of loyalty membership |
|
user.loyalty.membershipPoints (Number) |
The number of points from this membership |
|
user.address.addressee (String) |
Full name of the person for whom the address is for |
|
user.address.company (String) |
The name of the company |
|
user.address.lines (String[]) |
An array of address lines NOT including city, region, postcode or country (maximum of 3 lines allowed) |
|
user.address.locality (String) |
The town or city |
|
user.address.region (String) |
E.g state in the US, county in the UK |
|
user.address.postalCode (String) |
Can be the country equivalent code (for example, zip code for the U.S) |
|
user.address.country (String) |
The name of the country |
|
user.address.countryCode (String) |
An ISO 3166-1 alpha-2 country code |
|
user.isGuest (String) |
True if the user is a guest user without a registered account |
|
user.age (Number) |
The user’s age in years |
|
user.phoneNumber (String) |
The user’s phone number. Should be formatted without spaces, braces, or hyphens |
|
user.countryCallingCode (String) |
The country calling code for the given phone number, formatted to include the |
|
user.balance (Price) |
The balance of the user. |
|
user.balance.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
user.balance.currency (String) |
The ISO 4217 currency (for example, |
|
user.deviceId (String) |
Device ID for the user. |
|
firstLogin (Boolean) |
True only if this is the first time the user has logged in |
|
Example JavaScript
uv.emit('egUserLogin', {
user: {
id: '2861102bace6e6620948564f0ce0a7cd',
title: 'Mr',
firstName: 'John',
lastName: 'Smith',
gender: 'Male',
username: 'JohnSmith',
email: 'john@johnsmith.com',
firstSession: null,
hasTransacted: true,
loyalty: {
id: '8989752-223',
tier: 'silver',
tierPoints: null,
membershipType: 'Clearsky Rewards',
membershipPoints: null
},
address: {
addressee: 'John Smith',
company: 'Amce Inc',
lines: [
'Flat 12',
'123 High Street'
],
locality: 'London',
region: 'New York',
postalCode: '10010',
country: 'United States',
countryCode: 'US'
},
isGuest: 'true',
age: 42,
phoneNumber: '2121234567',
countryCallingCode: '1',
balance: {
value: 9.99,
currency: 'USD'
},
deviceId: 'Q3OP6VG8HYE5'
},
firstLogin: null,
type: 'Logging in on a phone app using touch id.'
})
egUserSignup
Experimentation Hub Core
Emitted when a user signs up for a newsletter or event, for example.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
user.id (String) |
A unique user Id. Can also be a hash of the username and/or email address |
|
user.email (String) |
The user’s primary email address |
|
type (String) |
The type of sign up (for example, newsletter or event) |
|
name (String) |
A meaningful name unique to the sign up |
|
user.title (String) |
The user’s title |
|
user.firstName (String) |
The user’s first name |
|
user.lastName (String) |
The user’s last name |
|
user.gender (String) |
The user’s gender. Can be |
|
user.username (String) |
The username for the user |
|
user.firstSession (Boolean) |
True if it’s the user’s first session |
|
user.hasTransacted (Boolean) |
True if the user has completed 1 or more transactions |
|
user.loyalty.id (String) |
Loyalty program membership number |
|
user.loyalty.tier (String) |
The level of the loyalty program this user holds |
|
user.loyalty.tierPoints (Number) |
The number of tier points |
|
user.loyalty.membershipType (String) |
The type of loyalty membership |
|
user.loyalty.membershipPoints (Number) |
The number of points from this membership |
|
user.address.addressee (String) |
Full name of the person for whom the address is for |
|
user.address.company (String) |
The name of the company |
|
user.address.lines (String[]) |
An array of address lines NOT including city, region, postcode or country (maximum of 3 lines allowed) |
|
user.address.locality (String) |
The town or city |
|
user.address.region (String) |
E.g state in the US, county in the UK |
|
user.address.postalCode (String) |
Can be the country equivalent code (for example, zip code for the U.S) |
|
user.address.country (String) |
The name of the country |
|
user.address.countryCode (String) |
An ISO 3166-1 alpha-2 country code |
|
user.isGuest (String) |
True if the user is a guest user without a registered account |
|
user.age (Number) |
The user’s age in years |
|
user.phoneNumber (String) |
The user’s phone number. Should be formatted without spaces, braces, or hyphens |
|
user.countryCallingCode (String) |
The country calling code for the given phone number, formatted to include the |
|
user.balance (Price) |
The balance of the user. |
|
user.balance.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
user.balance.currency (String) |
The ISO 4217 currency (for example, |
|
user.deviceId (String) |
Device ID for the user. |
|
Example JavaScript
uv.emit('egUserSignup', {
user: {
id: '2861102bace6e6620948564f0ce0a7cd',
title: 'Mr',
firstName: 'John',
lastName: 'Smith',
gender: 'Male',
username: 'JohnSmith',
email: 'john@johnsmith.com',
firstSession: null,
hasTransacted: true,
loyalty: {
id: '8989752-223',
tier: 'silver',
tierPoints: null,
membershipType: 'Clearsky Rewards',
membershipPoints: null
},
address: {
addressee: 'John Smith',
company: 'Amce Inc',
lines: [
'Flat 12',
'123 High Street'
],
locality: 'London',
region: 'New York',
postalCode: '10010',
country: 'United States',
countryCode: 'US'
},
isGuest: 'true',
age: 42,
phoneNumber: '2121234567',
countryCallingCode: '1',
balance: {
value: 9.99,
currency: 'USD'
},
deviceId: 'Q3OP6VG8HYE5'
},
type: null,
name: null
})
egFund
Experimentation Hub Core
Emitted when a user makes an action that affects the status of that user’s funds.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
user.id (String) |
A unique user Id. Can also be a hash of the username and/or email address |
|
user.email (String) |
The user’s primary email address |
|
type (String) |
The description of the action. Can be deposit or withdrawal |
|
user.title (String) |
The user’s title |
|
user.firstName (String) |
The user’s first name |
|
user.lastName (String) |
The user’s last name |
|
user.gender (String) |
The user’s gender. Can be |
|
user.username (String) |
The username for the user |
|
user.firstSession (Boolean) |
True if it’s the user’s first session |
|
user.hasTransacted (Boolean) |
True if the user has completed 1 or more transactions |
|
user.loyalty.id (String) |
Loyalty program membership number |
|
user.loyalty.tier (String) |
The level of the loyalty program this user holds |
|
user.loyalty.tierPoints (Number) |
The number of tier points |
|
user.loyalty.membershipType (String) |
The type of loyalty membership |
|
user.loyalty.membershipPoints (Number) |
The number of points from this membership |
|
user.address.addressee (String) |
Full name of the person for whom the address is for |
|
user.address.company (String) |
The name of the company |
|
user.address.lines (String[]) |
An array of address lines NOT including city, region, postcode or country (maximum of 3 lines allowed) |
|
user.address.locality (String) |
The town or city |
|
user.address.region (String) |
E.g state in the US, county in the UK |
|
user.address.postalCode (String) |
Can be the country equivalent code (for example, zip code for the U.S) |
|
user.address.country (String) |
The name of the country |
|
user.address.countryCode (String) |
An ISO 3166-1 alpha-2 country code |
|
user.isGuest (String) |
True if the user is a guest user without a registered account |
|
user.age (Number) |
The user’s age in years |
|
user.phoneNumber (String) |
The user’s phone number. Should be formatted without spaces, braces, or hyphens |
|
user.countryCallingCode (String) |
The country calling code for the given phone number, formatted to include the |
|
user.balance (Price) |
The balance of the user. |
|
user.balance.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
user.balance.currency (String) |
The ISO 4217 currency (for example, |
|
user.deviceId (String) |
Device ID for the user. |
|
amount (Price) |
The amount of funds being deposited or withdrawn. |
|
amount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
amount.currency (String) |
The ISO 4217 currency (for example, |
|
method (String) |
The method by which funds were deposited or withdrawn. |
|
depositLocation (String) |
The location of the deposit |
|
Example JavaScript
uv.emit('egFund', {
user: {
id: '2861102bace6e6620948564f0ce0a7cd',
title: 'Mr',
firstName: 'John',
lastName: 'Smith',
gender: 'Male',
username: 'JohnSmith',
email: 'john@johnsmith.com',
firstSession: null,
hasTransacted: true,
loyalty: {
id: '8989752-223',
tier: 'silver',
tierPoints: null,
membershipType: 'Clearsky Rewards',
membershipPoints: null
},
address: {
addressee: 'John Smith',
company: 'Amce Inc',
lines: [
'Flat 12',
'123 High Street'
],
locality: 'London',
region: 'New York',
postalCode: '10010',
country: 'United States',
countryCode: 'US'
},
isGuest: 'true',
age: 42,
phoneNumber: '2121234567',
countryCallingCode: '1',
balance: {
value: 9.99,
currency: 'USD'
},
deviceId: 'Q3OP6VG8HYE5'
},
type: 'deposit',
amount: {
value: 9.99,
currency: 'USD'
},
method: 'PayPal',
depositLocation: 'quick deposit or standard deposit'
})
egBetslipItemAction
Experimentation Hub Core
Experimentation Hub Social proof
Emitted for every interaction with the betslip, using the action
field to specify whether a line item was added or removed.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
betslip.id (String) |
Unique betslip Id |
|
betslip.totalStake (Price) |
The total stake of the betslip, rounded to 2 decimal places |
|
betslip.totalStake.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalStake.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.quantity (Number) |
The number of items in the betslip |
|
betslip.total (Price) |
The total cost of the betslip after the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.total.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.total.currency (String) |
The ISO 4217 currency (for example, |
|
bet.betId (String) |
A unique Id to identify the bet |
|
bet.price (Price) |
The price of the betslip line item after discounts, rounded to 2 decimal places |
|
bet.price.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.price.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.discount (Price) |
The amount discounted from vouchers or promotions, rounded to 2 decimal places |
|
betslip.discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.discount.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.tax (Price) |
The total amount of tax applied to the betslip, rounded to 2 decimal places |
|
betslip.tax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.tax.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalPotential (Price) |
The total potential of the entire betslip (bet return), rounded to 2 decimal places |
|
betslip.totalPotential.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalPotential.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalOdds (Number) |
The total odds of the betslip, expressed as a decimal, rounded to 2 decimal places |
|
betslip.subtotal (Price) |
The total cost of the betslip before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.subtotalIncludingTax (Price) |
The total cost of the betslip after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
bet.potentialReturn (Price) |
The potential return from the betslip line item, rounded to 2 decimal places |
|
bet.potentialReturn.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.potentialReturn.currency (String) |
The ISO 4217 currency (for example, |
|
bet.odds (Number) |
The betslip line item odds, expressed as a decimal (for example, 3.0 is the decimal equivalent of 2/1, 4.0 is 3/1) |
|
bet.startTime (Epochtimems) |
The start time of the bet event |
|
bet.multiBet (Boolean) |
True if this bet is part of a multibet |
|
bet.receiptId (String) |
An Id to connect bets that are from the same multibet - bets from the same multibet will have the same receiptId |
|
bet.betType (String) |
The type of bet (for example, |
|
bet.inplay (Boolean) |
True if the bet is currently in play |
|
bet.sport (String) |
The sport that has been bet on (for example, football) |
|
bet.competition (String) |
The competition that has been bet on (for example, |
|
bet.eventName (String) |
The name of the event that’s being bet on (for example, |
|
bet.eventId (String) |
An Id to identify the event |
|
bet.selection (String) |
The object being bet on, which could be a person, a team, an animal, etc |
|
bet.selectionId (String) |
An Id to identify the selection |
|
bet.marketName (String) |
The market name (for example, Match Betting) |
|
bet.marketId (String) |
An Id to identify the market type |
|
bet.originalPrice (Price) |
The original price of the betslip line item, rounded to 2 decimal places |
|
bet.originalPrice.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.originalPrice.currency (String) |
The ISO 4217 currency (for example, |
|
subtotal (Price) |
The total cost of the bet line item before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
discount (Price) |
The amount discounted from vouchers or promotions for the bet line item, rounded to 2 decimal places |
|
discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
discount.currency (String) |
The ISO 4217 currency (for example, |
|
subtotalIncludingTax (Price) |
The total cost of the bet line item after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
action (String) |
Can be either 'add', 'remove' for status changes. |
|
Example JavaScript
uv.emit('egBetslipItemAction', {
betslip: {
id: null,
totalStake: {
value: 9.99,
currency: 'USD'
},
quantity: null,
discount: {
value: 9.99,
currency: 'USD'
},
tax: {
value: 9.99,
currency: 'USD'
},
totalPotential: {
value: 9.99,
currency: 'USD'
},
totalOdds: null,
subtotal: {
value: 9.99,
currency: 'USD'
},
total: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
}
},
bet: {
betId: null,
price: {
value: 9.99,
currency: 'USD'
},
potentialReturn: {
value: 9.99,
currency: 'USD'
},
odds: null,
startTime: null,
multiBet: null,
receiptId: null,
betType: null,
inplay: null,
sport: null,
competition: null,
eventName: null,
eventId: null,
selection: null,
selectionId: null,
marketName: null,
marketId: null,
originalPrice: {
value: 9.99,
currency: 'USD'
}
},
subtotal: {
value: 9.99,
currency: 'USD'
},
discount: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
},
action: null
})
egBetslipSummary
Experimentation Hub Core
Experimentation Hub Social proof
Emitted for each time the basket is visible to the visitor either as an inline minibasket or in a view that shows only the basket. If the visitor’s basket is changed in any way, the summary is emitted again.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
betslip.id (String) |
Unique betslip Id |
|
betslip.totalStake (Price) |
The total stake of the betslip, rounded to 2 decimal places |
|
betslip.totalStake.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalStake.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.quantity (Number) |
The number of items in the betslip |
|
betslip.total (Price) |
The total cost of the betslip after the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.total.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.total.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.discount (Price) |
The amount discounted from vouchers or promotions, rounded to 2 decimal places |
|
betslip.discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.discount.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.tax (Price) |
The total amount of tax applied to the betslip, rounded to 2 decimal places |
|
betslip.tax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.tax.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalPotential (Price) |
The total potential of the entire betslip (bet return), rounded to 2 decimal places |
|
betslip.totalPotential.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalPotential.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalOdds (Number) |
The total odds of the betslip, expressed as a decimal, rounded to 2 decimal places |
|
betslip.subtotal (Price) |
The total cost of the betslip before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.subtotalIncludingTax (Price) |
The total cost of the betslip after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
Example JavaScript
uv.emit('egBetslipSummary', {
betslip: {
id: null,
totalStake: {
value: 9.99,
currency: 'USD'
},
quantity: null,
discount: {
value: 9.99,
currency: 'USD'
},
tax: {
value: 9.99,
currency: 'USD'
},
totalPotential: {
value: 9.99,
currency: 'USD'
},
totalOdds: null,
subtotal: {
value: 9.99,
currency: 'USD'
},
total: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
}
}
})
egBetslipTransactionSummary
Experimentation Hub Core
Experimentation Hub Social proof
Emitted each time a user transacts.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
betslip.id (String) |
Unique betslip Id |
|
betslip.totalStake (Price) |
The total stake of the betslip, rounded to 2 decimal places |
|
betslip.totalStake.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalStake.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.quantity (Number) |
The number of items in the betslip |
|
betslip.total (Price) |
The total cost of the betslip after the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.total.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.total.currency (String) |
The ISO 4217 currency (for example, |
|
transaction.id (String) |
An Id unique to the transaction |
|
betslip.discount (Price) |
The amount discounted from vouchers or promotions, rounded to 2 decimal places |
|
betslip.discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.discount.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.tax (Price) |
The total amount of tax applied to the betslip, rounded to 2 decimal places |
|
betslip.tax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.tax.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalPotential (Price) |
The total potential of the entire betslip (bet return), rounded to 2 decimal places |
|
betslip.totalPotential.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalPotential.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalOdds (Number) |
The total odds of the betslip, expressed as a decimal, rounded to 2 decimal places |
|
betslip.subtotal (Price) |
The total cost of the betslip before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.subtotalIncludingTax (Price) |
The total cost of the betslip after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
transaction.firstTransaction (Boolean) |
True only if this is the first ever transaction for the user |
|
transaction.paymentType (String) |
The type of payment |
|
transaction.billingAddress.addressee (String) |
Full name of the person for whom the address is for |
|
transaction.billingAddress.company (String) |
The name of the company |
|
transaction.billingAddress.lines (String[]) |
An array of address lines NOT including city, region, postcode or country (maximum of 3 lines allowed) |
|
transaction.billingAddress.locality (String) |
The town or city |
|
transaction.billingAddress.region (String) |
E.g state in the US, county in the UK |
|
transaction.billingAddress.postalCode (String) |
Can be the country equivalent code (for example, zip code for the U.S) |
|
transaction.billingAddress.country (String) |
The name of the country |
|
transaction.billingAddress.countryCode (String) |
An ISO 3166-1 alpha-2 country code |
|
transaction.parentId (String) |
If the transaction is an amendment to a previous transaction, should be the Id of the parent transaction |
|
Example JavaScript
uv.emit('egBetslipTransactionSummary', {
betslip: {
id: null,
totalStake: {
value: 9.99,
currency: 'USD'
},
quantity: null,
discount: {
value: 9.99,
currency: 'USD'
},
tax: {
value: 9.99,
currency: 'USD'
},
totalPotential: {
value: 9.99,
currency: 'USD'
},
totalOdds: null,
subtotal: {
value: 9.99,
currency: 'USD'
},
total: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
}
},
transaction: {
id: '83748372',
firstTransaction: true,
paymentType: 'paypal',
billingAddress: {
addressee: 'John Smith',
company: 'Amce Inc',
lines: [
'Flat 12',
'123 High Street'
],
locality: 'London',
region: 'New York',
postalCode: '10010',
country: 'United States',
countryCode: 'US'
},
parentId: '83748371'
}
})
egBetslipItemTransaction
Experimentation Hub Core
Experimentation Hub Social proof
Emitted for every line item within a transaction.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
betslip.id (String) |
Unique betslip Id |
|
betslip.totalStake (Price) |
The total stake of the betslip, rounded to 2 decimal places |
|
betslip.totalStake.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalStake.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.quantity (Number) |
The number of items in the betslip |
|
betslip.total (Price) |
The total cost of the betslip after the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.total.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.total.currency (String) |
The ISO 4217 currency (for example, |
|
bet.betId (String) |
A unique Id to identify the bet |
|
bet.price (Price) |
The price of the betslip line item after discounts, rounded to 2 decimal places |
|
bet.price.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.price.currency (String) |
The ISO 4217 currency (for example, |
|
transaction.id (String) |
An Id unique to the transaction |
|
betslip.discount (Price) |
The amount discounted from vouchers or promotions, rounded to 2 decimal places |
|
betslip.discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.discount.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.tax (Price) |
The total amount of tax applied to the betslip, rounded to 2 decimal places |
|
betslip.tax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.tax.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalPotential (Price) |
The total potential of the entire betslip (bet return), rounded to 2 decimal places |
|
betslip.totalPotential.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalPotential.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalOdds (Number) |
The total odds of the betslip, expressed as a decimal, rounded to 2 decimal places |
|
betslip.subtotal (Price) |
The total cost of the betslip before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.subtotalIncludingTax (Price) |
The total cost of the betslip after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
bet.potentialReturn (Price) |
The potential return from the betslip line item, rounded to 2 decimal places |
|
bet.potentialReturn.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.potentialReturn.currency (String) |
The ISO 4217 currency (for example, |
|
bet.odds (Number) |
The betslip line item odds, expressed as a decimal (for example, 3.0 is the decimal equivalent of 2/1, 4.0 is 3/1) |
|
bet.startTime (Epochtimems) |
The start time of the bet event |
|
bet.multiBet (Boolean) |
True if this bet is part of a multibet |
|
bet.receiptId (String) |
An Id to connect bets that are from the same multibet - bets from the same multibet will have the same receiptId |
|
bet.betType (String) |
The type of bet (for example, |
|
bet.inplay (Boolean) |
True if the bet is currently in play |
|
bet.sport (String) |
The sport that has been bet on (for example, football) |
|
bet.competition (String) |
The competition that has been bet on (for example, |
|
bet.eventName (String) |
The name of the event that is being bet on (for example, |
|
bet.eventId (String) |
An Id to identify the event |
|
bet.selection (String) |
The object being bet on, which could be a person, a team, an animal, etc |
|
bet.selectionId (String) |
An Id to identify the selection |
|
bet.marketName (String) |
The market name (for example, Match Betting) |
|
bet.marketId (String) |
An Id to identify the market type |
|
bet.originalPrice (Price) |
The original price of the betslip line item, rounded to 2 decimal places |
|
bet.originalPrice.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.originalPrice.currency (String) |
The ISO 4217 currency (for example, |
|
subtotal (Price) |
The total cost of the bet line item before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
discount (Price) |
The amount discounted from vouchers or promotions for the bet line item, rounded to 2 decimal places |
|
discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
discount.currency (String) |
The ISO 4217 currency (for example, |
|
subtotalIncludingTax (Price) |
The total cost of the bet line item after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
transaction.firstTransaction (Boolean) |
True only if this is the first ever transaction for the user |
|
transaction.paymentType (String) |
The type of payment |
|
transaction.billingAddress.addressee (String) |
Full name of the person for whom the address is for |
|
transaction.billingAddress.company (String) |
The name of the company |
|
transaction.billingAddress.lines (String[]) |
An array of address lines NOT including city, region, postcode or country (maximum of 3 lines allowed) |
|
transaction.billingAddress.locality (String) |
The town or city |
|
transaction.billingAddress.region (String) |
E.g state in the US, county in the UK |
|
transaction.billingAddress.postalCode (String) |
Can be the country equivalent code (for example, zip code for the U.S) |
|
transaction.billingAddress.country (String) |
The name of the country |
|
transaction.billingAddress.countryCode (String) |
An ISO 3166-1 alpha-2 country code |
|
transaction.parentId (String) |
If the transaction is an amendment to a previous transaction, should be the Id of the parent transaction |
|
Example JavaScript
uv.emit('egBetslipItemTransaction', {
betslip: {
id: null,
totalStake: {
value: 9.99,
currency: 'USD'
},
quantity: null,
discount: {
value: 9.99,
currency: 'USD'
},
tax: {
value: 9.99,
currency: 'USD'
},
totalPotential: {
value: 9.99,
currency: 'USD'
},
totalOdds: null,
subtotal: {
value: 9.99,
currency: 'USD'
},
total: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
}
},
bet: {
betId: null,
price: {
value: 9.99,
currency: 'USD'
},
potentialReturn: {
value: 9.99,
currency: 'USD'
},
odds: null,
startTime: null,
multiBet: null,
receiptId: null,
betType: null,
inplay: null,
sport: null,
competition: null,
eventName: null,
eventId: null,
selection: null,
selectionId: null,
marketName: null,
marketId: null,
originalPrice: {
value: 9.99,
currency: 'USD'
}
},
subtotal: {
value: 9.99,
currency: 'USD'
},
discount: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
},
transaction: {
id: '83748372',
firstTransaction: true,
paymentType: 'paypal',
billingAddress: {
addressee: 'John Smith',
company: 'Amce Inc',
lines: [
'Flat 12',
'123 High Street'
],
locality: 'London',
region: 'New York',
postalCode: '10010',
country: 'United States',
countryCode: 'US'
},
parentId: '83748371'
}
})
egGamePlay
Experimentation Hub Core
Experimentation Hub Social proof
Represents a bet in a virtual game.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
game.gameId (String) |
Describes a unique identifier for the virtual game. |
|
game.name (String) |
Describes a unique name for the virtual game. |
|
game.type (String) |
Describes the type of the virtual game. |
|
playValue (Price) |
The amount the user wants to play. |
|
playValue.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
playValue.currency (String) |
The ISO 4217 currency (for example, |
|
gamePlayId (String) |
The Id of the gameplay event. |
|
playType (String) |
The type of play. |
|
platform (String) |
The platform the game runs on. |
|
playMode (String) |
The type of funds used to play the game (for example, virtual, digital, free play, bonus) |
|
Example JavaScript
uv.emit('egGamePlay', {
game: {
gameId: '1234',
name: 'Rainbow Riches',
type: 'slots'
},
playType: 'spin',
playValue: {
value: 9.99,
currency: 'USD'
},
platform: 'Flash',
gamePlayId: 'A12e3',
playMode: 'free play'
})
egInteraction
Experimentation Hub Core
Emitted to track visitor interaction for certain elements on the page. These events are not emitted for all interactions on all elements, only those that are of interest.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
type (String) |
The interaction type (for example, click, view, hover, download, share) |
|
name (String) |
A meaningful name unique to the event. |
|
Example JavaScript
uv.emit('egInteraction', {
type: 'click',
name: 'TopNavHomeButton'
})
egBetSettle
Experimentation Hub Core
Emitted when a bet is settled.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
bet.betId (String) |
A unique Id to identify the bet |
|
bet.price (Price) |
The price of the betslip line item after discounts, rounded to 2 decimal places |
|
bet.price.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.price.currency (String) |
The ISO 4217 currency (for example, |
|
return (Price) |
The bet return if won |
|
return.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
return.currency (String) |
The ISO 4217 currency (for example, |
|
bet.potentialReturn (Price) |
The potential return from the betslip line item, rounded to 2 decimal places |
|
bet.potentialReturn.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.potentialReturn.currency (String) |
The ISO 4217 currency (for example, |
|
bet.odds (Number) |
The betslip line item odds, expressed as a decimal (for example, 3.0 is the decimal equivalent of 2/1, 4.0 is 3/1) |
|
bet.startTime (Epochtimems) |
The start time of the bet event |
|
bet.multiBet (Boolean) |
True if this bet is part of a multibet |
|
bet.receiptId (String) |
An Id to connect bets that are from the same multibet - bets from the same multibet will have the same receiptId |
|
bet.betType (String) |
The type of bet (for example, |
|
bet.inplay (Boolean) |
True if the bet is currently in play |
|
bet.sport (String) |
The sport that has been bet on (for example, football) |
|
bet.competition (String) |
The competition that has been bet on (for example, |
|
bet.eventName (String) |
The name of the event that is being bet on (for example, |
|
bet.eventId (String) |
An Id to identify the event |
|
bet.selection (String) |
The object being bet on, which could be a person, a team, an animal, etc |
|
bet.selectionId (String) |
An Id to identify the selection |
|
bet.marketName (String) |
The market name (for example, Match Betting) |
|
bet.marketId (String) |
An Id to identify the market type |
|
bet.originalPrice (Price) |
The original price of the betslip line item, rounded to 2 decimal places |
|
bet.originalPrice.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.originalPrice.currency (String) |
The ISO 4217 currency (for example, |
|
eventType (String) |
The type of bet event (for example, 'listing', 'detail') |
|
index (Number) |
The index of the bet as it’s positioned on the page (for example, the first bet in a listing would be 0, the next would be 1) |
|
settleType (String) |
Whether the bet was won or lost |
|
Example JavaScript
uv.emit('egBetSettle', {
bet: {
betId: null,
price: {
value: 9.99,
currency: 'USD'
},
potentialReturn: {
value: 9.99,
currency: 'USD'
},
odds: null,
startTime: null,
multiBet: null,
receiptId: null,
betType: null,
inplay: null,
sport: null,
competition: null,
eventName: null,
eventId: null,
selection: null,
selectionId: null,
marketName: null,
marketId: null,
originalPrice: {
value: 9.99,
currency: 'USD'
}
},
eventType: null,
index: null,
settleType: null,
'return': {
value: 9.99,
currency: 'USD'
}
})
egBet
Optional
Emitted when a bet is shown or rendered into a view or page.
All bet instances should result in a bet
event, whether the main focus of the page or as part of a listing.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
bet.betId (String) |
A unique Id to identify the bet |
|
bet.price (Price) |
The price of the betslip line item after discounts, rounded to 2 decimal places |
|
bet.price.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.price.currency (String) |
The ISO 4217 currency (for example, |
|
bet.potentialReturn (Price) |
The potential return from the betslip line item, rounded to 2 decimal places |
|
bet.potentialReturn.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.potentialReturn.currency (String) |
The ISO 4217 currency (for example, |
|
bet.odds (Number) |
The betslip line item odds, expressed as a decimal (for example, 3.0 is the decimal equivalent of 2/1, 4.0 is 3/1) |
|
bet.startTime (Epochtimems) |
The start time of the bet event |
|
bet.multiBet (Boolean) |
True if this bet is part of a multibet |
|
bet.receiptId (String) |
An Id to connect bets that are from the same multibet - bets from the same multibet will have the same receiptId |
|
bet.betType (String) |
The type of bet (for example, |
|
bet.inplay (Boolean) |
True if the bet is currently in play |
|
bet.sport (String) |
The sport that has been bet on (for example, football) |
|
bet.competition (String) |
The competition that has been bet on (for example, |
|
bet.eventName (String) |
The name of the event that is being bet on (for example, |
|
bet.eventId (String) |
An Id to identify the event |
|
bet.selection (String) |
The object being bet on, which could be a person, a team, an animal, etc |
|
bet.selectionId (String) |
An Id to identify the selection |
|
bet.marketName (String) |
The market name (for example, Match Betting) |
|
bet.marketId (String) |
An Id to identify the market type |
|
bet.originalPrice (Price) |
The original price of the betslip line item, rounded to 2 decimal places |
|
bet.originalPrice.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.originalPrice.currency (String) |
The ISO 4217 currency (for example, |
|
eventType (String) |
The type of bet event (for example, 'listing', 'detail') |
|
index (Number) |
The index of the bet as it’s positioned on the page (for example, the first bet in a listing would be 0, the next would be 1) |
|
Example JavaScript
uv.emit('egBet', {
bet: {
betId: null,
price: {
value: 9.99,
currency: 'USD'
},
potentialReturn: {
value: 9.99,
currency: 'USD'
},
odds: null,
startTime: null,
multiBet: null,
receiptId: null,
betType: null,
inplay: null,
sport: null,
competition: null,
eventName: null,
eventId: null,
selection: null,
selectionId: null,
marketName: null,
marketId: null,
originalPrice: {
value: 9.99,
currency: 'USD'
}
},
eventType: null,
index: null
})
egBetCashOut
Optional
Represents a Cash Out event, a real-time bet settlement.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
bet.betId (String) |
A unique Id to identify the bet |
|
bet.price (Price) |
The price of the betslip line item after discounts, rounded to 2 decimal places |
|
bet.price.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.price.currency (String) |
The ISO 4217 currency (for example, |
|
bet.potentialReturn (Price) |
The potential return from the betslip line item, rounded to 2 decimal places |
|
bet.potentialReturn.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.potentialReturn.currency (String) |
The ISO 4217 currency (for example, |
|
bet.odds (Number) |
The betslip line item odds, expressed as a decimal (for example, 3.0 is the decimal equivalent of 2/1, 4.0 is 3/1) |
|
bet.startTime (Epochtimems) |
The start time of the bet event |
|
bet.multiBet (Boolean) |
True if this bet is part of a multibet |
|
bet.receiptId (String) |
An Id to connect bets that are from the same multibet - bets from the same multibet will have the same receiptId |
|
bet.betType (String) |
The type of bet (for example, |
|
bet.inplay (Boolean) |
True if the bet is currently in play |
|
bet.sport (String) |
The sport that has been bet on (for example, football) |
|
bet.competition (String) |
The competition that has been bet on (for example, |
|
bet.eventName (String) |
The name of the event that is being bet on (for example, |
|
bet.eventId (String) |
An Id to identify the event |
|
bet.selection (String) |
The object being bet on, which could be a person, a team, an animal, etc |
|
bet.selectionId (String) |
An Id to identify the selection |
|
bet.marketName (String) |
The market name (for example, Match Betting) |
|
bet.marketId (String) |
An Id to identify the market type |
|
bet.originalPrice (Price) |
The original price of the betslip line item, rounded to 2 decimal places |
|
bet.originalPrice.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.originalPrice.currency (String) |
The ISO 4217 currency (for example, |
|
eventType (String) |
The type of bet event (for example, 'listing', 'detail') |
|
index (Number) |
The index of the bet as it’s positioned on the page (for example, the first bet in a listing would be 0, the next would be 1) |
|
cashOutType (String) |
The type of Cash Out (for example, partial or full) |
|
cashoutPercentage (Number) |
The Cash Out amount as a percentage of the bet return, which should be between 0 and 1 (for example, 0.5) |
|
return (Price) |
The bet return |
|
return.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
return.currency (String) |
The ISO 4217 currency (for example, |
|
Example JavaScript
uv.emit('egBetCashOut', {
bet: {
betId: null,
price: {
value: 9.99,
currency: 'USD'
},
potentialReturn: {
value: 9.99,
currency: 'USD'
},
odds: null,
startTime: null,
multiBet: null,
receiptId: null,
betType: null,
inplay: null,
sport: null,
competition: null,
eventName: null,
eventId: null,
selection: null,
selectionId: null,
marketName: null,
marketId: null,
originalPrice: {
value: 9.99,
currency: 'USD'
}
},
eventType: null,
index: null,
cashOutType: null,
cashoutPercentage: null,
'return': {
value: 9.99,
currency: 'USD'
}
})
egBetslipItem
Optional
Emitted for every bet in a betslip shown to the user, either as an inline mini basket, or in a view that shows only the betslip. If the betslip is changed in any way, events representing each bet are emitted again.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
betslip.id (String) |
Unique betslip Id |
|
betslip.totalStake (Price) |
The total stake of the betslip, rounded to 2 decimal places |
|
betslip.totalStake.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalStake.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.quantity (Number) |
The number of items in the betslip |
|
betslip.discount (Price) |
The amount discounted from vouchers or promotions, rounded to 2 decimal places |
|
betslip.discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.discount.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.tax (Price) |
The total amount of tax applied to the betslip, rounded to 2 decimal places |
|
betslip.tax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.tax.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalPotential (Price) |
The total potential of the entire betslip (bet return), rounded to 2 decimal places |
|
betslip.totalPotential.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.totalPotential.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.totalOdds (Number) |
The total odds of the betslip, expressed as a decimal, rounded to 2 decimal places |
|
betslip.subtotal (Price) |
The total cost of the betslip before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.total (Price) |
The total cost of the betslip after the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.total.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.total.currency (String) |
The ISO 4217 currency (for example, |
|
betslip.subtotalIncludingTax (Price) |
The total cost of the betslip after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
betslip.subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
betslip.subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
bet.betId (String) |
A unique Id to identify the bet |
|
bet.price (Price) |
The price of the betslip line item after discounts, rounded to 2 decimal places |
|
bet.price.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.price.currency (String) |
The ISO 4217 currency (for example, |
|
bet.potentialReturn (Price) |
The potential return from the betslip line item, rounded to 2 decimal places |
|
bet.potentialReturn.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.potentialReturn.currency (String) |
The ISO 4217 currency (for example, |
|
bet.odds (Number) |
The betslip line item odds, expressed as a decimal (for example, 3.0 is the decimal equivalent of 2/1, 4.0 is 3/1) |
|
bet.startTime (Epochtimems) |
The start time of the bet event |
|
bet.multiBet (Boolean) |
True if this bet is part of a multibet |
|
bet.receiptId (String) |
An Id to connect bets that are from the same multibet - bets from the same multibet will have the same receiptId |
|
bet.betType (String) |
The type of bet (for example, |
|
bet.inplay (Boolean) |
True if the bet is currently in play |
|
bet.sport (String) |
The sport that has been bet on (for example, football) |
|
bet.competition (String) |
The competition that has been bet on (for example, |
|
bet.eventName (String) |
The name of the event that is being bet on (for example, |
|
bet.eventId (String) |
An Id to identify the event |
|
bet.selection (String) |
The object being bet on, which could be a person, a team, an animal, etc |
|
bet.selectionId (String) |
An Id to identify the selection |
|
bet.marketName (String) |
The market name (for example, Match Betting) |
|
bet.marketId (String) |
An Id to identify the market type |
|
bet.originalPrice (Price) |
The original price of the betslip line item, rounded to 2 decimal places |
|
bet.originalPrice.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
bet.originalPrice.currency (String) |
The ISO 4217 currency (for example, |
|
subtotal (Price) |
The total cost of the bet line item before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
discount (Price) |
The amount discounted from vouchers or promotions for the bet line item, rounded to 2 decimal places |
|
discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
discount.currency (String) |
The ISO 4217 currency (for example, |
|
subtotalIncludingTax (Price) |
The total cost of the bet line item after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
Example JavaScript
uv.emit('egBetslipItem', {
betslip: {
id: null,
totalStake: {
value: 9.99,
currency: 'USD'
},
quantity: null,
discount: {
value: 9.99,
currency: 'USD'
},
tax: {
value: 9.99,
currency: 'USD'
},
totalPotential: {
value: 9.99,
currency: 'USD'
},
totalOdds: null,
subtotal: {
value: 9.99,
currency: 'USD'
},
total: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
}
},
bet: {
betId: null,
price: {
value: 9.99,
currency: 'USD'
},
potentialReturn: {
value: 9.99,
currency: 'USD'
},
odds: null,
startTime: null,
multiBet: null,
receiptId: null,
betType: null,
inplay: null,
sport: null,
competition: null,
eventName: null,
eventId: null,
selection: null,
selectionId: null,
marketName: null,
marketId: null,
originalPrice: {
value: 9.99,
currency: 'USD'
}
},
subtotal: {
value: 9.99,
currency: 'USD'
},
discount: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
}
})
egError
Optional
Emitted for every error.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
code (String) |
The error code. |
|
message (String) |
The error message. |
|
Example JavaScript
uv.emit('egError', {
code: null,
message: null
})
egFormSubmission
Optional
Should be emitted when a user submits a form.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
submissionId (String) |
An ID unique to the form submission. |
|
name (String) |
The name of the form. |
|
Example JavaScript
uv.emit('egFormSubmission', {
submissionId: null,
name: 'ContactUsEnquiry'
})
egVoucher
Optional
Emitted when a voucher code is entered.
Example schema
Field (JS Data Type) | Description | Required for |
---|---|---|
entry (String) |
The voucher code entered by the user |
|
entrySuccess (Boolean) |
Whether or not the voucher is successfully applied to the transaction. An entry must be valid to be successful |
|
voucher.id (String) |
A unique Id to identify the voucher used, which should be the same for all visitors that are using the voucher/promotion |
|
voucher.label (String) |
A name or label for the voucher/promotion |
|
transaction.id (String) |
An Id unique to the transaction |
|
transaction.firstTransaction (Boolean) |
True only if this is the first ever transaction for the user |
|
transaction.paymentType (String) |
The type of payment |
|
transaction.billingAddress.addressee (String) |
Full name of the person for whom the address is for |
|
transaction.billingAddress.company (String) |
The name of the company |
|
transaction.billingAddress.lines (String[]) |
An array of address lines NOT including city, region, postcode or country (maximum of 3 lines allowed) |
|
transaction.billingAddress.locality (String) |
The town or city |
|
transaction.billingAddress.region (String) |
E.g state in the US, county in the UK |
|
transaction.billingAddress.postalCode (String) |
Can be the country equivalent code (for example, zip code for the U.S) |
|
transaction.billingAddress.country (String) |
The name of the country |
|
transaction.billingAddress.countryCode (String) |
An ISO 3166-1 alpha-2 country code |
|
transaction.parentId (String) |
If the transaction is an amendment to a previous transaction, should be the Id of the parent transaction |
|
basket.id (String) |
Unique betslip Id |
|
basket.totalStake (Price) |
The total stake of the betslip, rounded to 2 decimal places |
|
basket.totalStake.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
basket.totalStake.currency (String) |
The ISO 4217 currency (for example, |
|
basket.quantity (Number) |
The number of items in the betslip |
|
basket.discount (Price) |
The amount discounted from vouchers or promotions, rounded to 2 decimal places |
|
basket.discount.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
basket.discount.currency (String) |
The ISO 4217 currency (for example, |
|
basket.tax (Price) |
The total amount of tax applied to the betslip, rounded to 2 decimal places |
|
basket.tax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
basket.tax.currency (String) |
The ISO 4217 currency (for example, |
|
basket.totalPotential (Price) |
The total potential of the entire betslip (bet return), rounded to 2 decimal places |
|
basket.totalPotential.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
basket.totalPotential.currency (String) |
The ISO 4217 currency (for example, |
|
basket.totalOdds (Number) |
The total odds of the betslip, expressed as a decimal, rounded to 2 decimal places |
|
basket.subtotal (Price) |
The total cost of the betslip before the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
basket.subtotal.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
basket.subtotal.currency (String) |
The ISO 4217 currency (for example, |
|
basket.total (Price) |
The total cost of the betslip after the application of taxes, discounts, promotions, etc, rounded to 2 decimal places |
|
basket.total.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
basket.total.currency (String) |
The ISO 4217 currency (for example, |
|
basket.subtotalIncludingTax (Price) |
The total cost of the betslip after the application of taxes, but before any discounts, promotions, etc, rounded to 2 decimal places |
|
basket.subtotalIncludingTax.value (Number) |
Depending on the context, this could be the value of the basket, product, package, total, subtotal, discount, shipping, item, game, bet, etc. Refer to our setup docs for more specific details for each vertical and event |
|
basket.subtotalIncludingTax.currency (String) |
The ISO 4217 currency (for example, |
|
Example JavaScript
uv.emit('egVoucher', {
entry: null,
entrySuccess: null,
voucher: {
id: 'AO8734',
label: 'SummerPromo'
},
transaction: {
id: '83748372',
firstTransaction: true,
paymentType: 'paypal',
billingAddress: {
addressee: 'John Smith',
company: 'Amce Inc',
lines: [
'Flat 12',
'123 High Street'
],
locality: 'London',
region: 'New York',
postalCode: '10010',
country: 'United States',
countryCode: 'US'
},
parentId: '83748371'
},
basket: {
id: null,
totalStake: {
value: 9.99,
currency: 'USD'
},
quantity: null,
discount: {
value: 9.99,
currency: 'USD'
},
tax: {
value: 9.99,
currency: 'USD'
},
totalPotential: {
value: 9.99,
currency: 'USD'
},
totalOdds: null,
subtotal: {
value: 9.99,
currency: 'USD'
},
total: {
value: 9.99,
currency: 'USD'
},
subtotalIncludingTax: {
value: 9.99,
currency: 'USD'
}
}
})