EmbetOverlay properties
Props and ref methods for EmbetOverlay.
Concept: Initialization
The @livelike/embet-rn package hosts the overlay in a WebView, loads @livelike/embet from unpkg, and bridges messages to React Native.
Component props
| Prop | Type | Required | Description |
|---|---|---|---|
clientId | string | Yes | Client ID provided by emBET |
customId | string | Yes | Your event or stream ID |
accessToken | string | No | Returning user access token |
sdkVersion | string | No | Pinned Web SDK version on unpkg (default latest; pin e.g. 1.4.0 in production) |
segmentation | EmbetProfileData | No | Segmentation passed to embet.init() |
segmentationEnabled | boolean | No | Enable segmentation targeting in the Web SDK (default true) |
htmlUrl | string | No | HTTPS URL of your bridge HTML. Omit to use the bundled page from @livelike/embet-rn. The page must load bridge.umd.min.js and call EmbetBridge.init() — recipe. |
style | object | No | React Native styles on the WebView container (layout, flex, dimensions) |
onInitialized | (profile) => void | No | Web SDK finished init; persist profile.accessToken for new users |
onError | (error) => void | No | SDK or WebView errors |
onCustomIdChange | (customId) => void | No | Event ID changed |
onSdkLoading | (version) => void | No | Web SDK script started loading |
onSdkLoaded | (version) => void | No | Web SDK script loaded |
onEvent | (event) => void | No | Overlay events — see Event manager and Event manager (feature) |
onPlaceBet | (payload) => Promise<result> | Sportsbook | Called when the user places a bet in the WebView. Required for embedded betslip; omit when configureBetSlip uses mode: 'DEEPLINK'. See Betslip. |
Imperative API (EmbetOverlayRef)
EmbetOverlayRef)Attach a ref and call methods after onInitialized:
import { useRef } from 'react';
import { EmbetOverlay, type EmbetOverlayRef } from '@livelike/embet-rn';
const overlayRef = useRef<EmbetOverlayRef>(null);
// After onInitialized:
overlayRef.current?.updateOdds(markets);
overlayRef.current?.updateProfileData({ country: 'AT' });
overlayRef.current?.configureBetSlip({
currency: '€',
currencyDisplay: 'suffix',
decimalSign: ',',
maxAmount: 1000,
mode: 'DEEPLINK', // OTT only — omit for embedded sportsbook
});
overlayRef.current?.configureResize({
enabled: true,
hostElement: 'body',
});| Method | Description |
|---|---|
updateOdds(data) | Push market/outcome data — Odds |
updateProfileData(data) | Update segmentation on the profile — Segmentation |
configureBetSlip(config) | Maps to embet.betSlipConfig (currency, mode, etc.). Does not include onPlaceBet — use the onPlaceBet prop. Betslip · feature. |
configureResize(config) | Same behavior as Web embet.resizeConfig — Layout and resizing |
Hooks
For state outside the overlay:
import { useEmbet, useEmbetProfile } from '@livelike/embet-rn';useEmbet exposes init state, profile, and setCustomId / setAccessToken. Prefer EmbetOverlay for the standard integration.
Updated 25 days ago
