How it works

One script tag, any page

1. Paste the snippet

Put a placeholder where the game should appear, and load the embed once per page:

HTML
<div data-gridnic-game="sudoku" data-mode="daily"></div>
<script src="https://cdn.gridnic.com/v1/embed.js" data-tenant="YOUR-ID" async></script>

The script mounts one sandboxed iframe per placeholder. The iframe sizes itself to its content, so there are no scrollbars. You can place several games on one page.

2. Pick the game and mode

AttributeValues
data-gridnic-gamesudoku, tango, queens, nonogram, numberlink, zip, hashi, kakuro, wordguess, snake, blocks, wordsearch, diagonalsudoku, colorsudoku, numbergroups, greaterthan, numberruns, sumsudoku, sudokupatch, rectangles, squaresums, strikesum, numberpyramid, equationgrid, railtracks, wordfillin, wordsquare, numberfillin, cluesearch, dailyquiz, trueorfalse, pairs, chesspuzzle, findthecity, bubbleletters, pinthecity, mahjong, solitaire, jigsaw, matchthree, solitaire3, pictureswap, opensolitaire, letterweb, slidingpuzzle, pyramidsolitaire, wordlinks, crosswordtiles, lettertrail, letterrows, wordwheel, threeplays. See the games.
data-modedaily (default), endless, archive
data-dateA past date, YYYY-MM-DD, to open that day's puzzle
data-tiereasy, medium, hard, expert
data-sync-urlNo value. Your page URL names the puzzle on screen (?puzzle=…), so readers can share, refresh or go Back to a specific puzzle. One embed per page.

3. Your look and language

Your colors (light and dark), typeface, corner radius, spacing, language and text direction live in your tenant config on our side. Nothing from your page's CSS reaches the game, and nothing from the game reaches your page. If your page sets <html data-theme="dark">, the games follow.

4. Consent and privacy

If your page runs an IAB TCF v2 consent platform, the embed reads its consent: storage needs purpose 1, analytics needs purposes 1 and 8. Until consent is given, the game keeps progress in memory only and sends nothing to Google Analytics; Gridnic counts only anonymous plays and completions, with no IDs. The embed itself sets no cookies.

No script tags allowed?

Some CMSs strip scripts. Use a plain iframe instead. It works the same, but it can't resize itself, so give it a fixed height:

HTML
<iframe src="https://cdn.gridnic.com/v1/frame/YOUR-ID/sudoku?mode=daily"
        title="Sudoku" style="width:100%;height:760px;border:0"
        sandbox="allow-scripts allow-same-origin allow-popups allow-popups-to-escape-sandbox"></iframe>

Where it can run

Your tenant has a list of allowed origins. The game refuses to render on any other site, and the API accepts results only from your origins and the game frame.

Stable URLs

Everything lives under /v1/. We never break /v1/; a breaking change gets a new path.

Start free trialBook a demo