Balance
$500.00
⭐ New User Promo

Bet $5, Get $200 in Bonus Bets

Place your first $5 bet on any NFL Sunday matchup. If it wins, you get $200 in bonus bets β€” guaranteed.

Featured NFL Games

Cloudflare Worker Integration β€” GeoComply Γ— FanDuel

Location not verified Click "Verify Location" to run a geolocation check
Integration Architecture
🌐
User's BrowserFanDuel sportsbook β€” requests SDK + license
GET /api/sdk Β· GET /api/license
⚑
Cloudflare Worker/api/sdk β†’ proxies gc-html5.js  Β·  /api/license β†’ reads KV
Reads "gc_sdk_url" + "gc_license" from KV
πŸ—„οΈ
KV Namespace: FANDUEL_SECRETSGeoComply manages SDK version + license β€” operator touches neither
SDK + license delivered β†’ SDK initialised
πŸ“
Browser Geolocation APISDK collects location Β· result returned to your app
Operator Setup β€” 3 Steps
1
Create a KV Namespace
Run once in your Cloudflare dashboard or via Wrangler CLI. This is where GeoComply will write the license.
# Wrangler CLI wrangler kv:namespace create FANDUEL_SECRETS
2
Bind the KV to your Worker
Add the binding to wrangler.toml. The namespace ID comes from step 1.
# wrangler.toml [[kv_namespaces]] binding = "FANDUEL_SECRETS" id = "<namespace-id>"
3
GeoComply pushes the license β€” you're done
GeoComply writes the license key to your KV namespace automatically and keeps it fresh. You never handle license rotation.
# GeoComply does this for you: FANDUEL_SECRETS["gc_license"] = <signed-license-token> # TTL managed by GeoComply β€” always valid
Worker Code
api/sdk.js β€” proxies SDK from GeoComply CDN
export async function onRequestGet({ env }) { // SDK URL managed in KV by GeoComply const url = await env.FANDUEL_SECRETS.get("gc_sdk_url") ?? "https://cdn.geocomply.com/gc-html5.js"; const js = await fetch(url); return new Response(await js.text(), { headers: { "Content-Type": "application/javascript" } }); }
api/license.js β€” serves license from KV
export async function onRequestGet({ env }) { // License written by GeoComply, never by operator const license = await env.FANDUEL_SECRETS.get("gc_license"); return Response.json({ license }); }
Live KV State
FANDUEL_SECRETS β†’ "gc_license"
Not fetched yet β€” click Verify Location
The license shown above was served from KV by the Cloudflare Worker at /api/license. No token management code lives in your app.