Appearance
hizi documentation changelog
v2.3.25 - 16.10.2026
[Hizi App]
- Published a search index for AI agents at https://docs.hizi.io/docs-index.json. The index holds the pages of the site in short sections, each with a link. It does not hold the changelog or the generated API reference pages. The
search_docstool of the hizi MCP server uses it.
v2.3.24 - 12.10.2026
[Operator API]
- Corrected the error handling for credit transactions on doTransactions.
hashesProcesseddecides the result of a credit, not the HTTP status code. A credit hash with anerrorCodeis a final error: hizi marks the gameround as stranded and does not void the debit. A missing credit hash keeps the credit pending. - Corrected the retry logic for a call with a credit and no debit. hizi makes up to 5 immediate retries with no delay, and does not queue the credit at increasing intervals.
- Documented when hizi sends a pending credit again: at the next launch of the same game, after your getGameURL call returns, and from the hourly janitor until the maximum gameround age.
- Corrected Scenario 2: hizi does not send a void for the debit after an error on a credit call.
- Removed an internal header from the retry rule for 5xx errors in the response codes and in the OpenAPI spec.
[Game Studio API]
- Removed an internal header from the retry rule for 5xx errors in the OpenAPI spec.
v2.3.23 - 08.10.2026
[Operator API]
- Added a Void of the first debit section to doTransactions. A void of the first debit cancels the whole gameround. The operator reverses the debit and any credit of that gameround.
- Stated that a void always has the hash of a debit and never refers to a credit. For games on the native hizi game studio protocol, the first debit uses the gameRound hash as its hash.
- Added Scenario 3, a sample for a doTransactions call that times out and the void that follows.
- Corrected the signature rule: a void that hizi sends after a failed debit has an amount, and the signature includes it.
- Stated that hizi can send the void type in upper case (
VOID) with an amount and a currency. Updated the void sample. - Corrected the end transaction: hizi does not send it after a void of the first debit.
v2.3.22 - 30.09.2026
[Engine]
- Removed the Source Audit and Gaps page from the SDK guide. It was an internal page and not documentation for readers.
- Removed the links to that page from the SDK overview, the settings reference, the release checklist and the jurisdictions page.
[Local Development]
- Removed two internal pages from the site. They were notes for contributors, not documentation.
v2.3.21 - 30.09.2026
- Documentation housekeeping to remove references to unsupported game engine integration methods.
v2.3.20 - 25.09.2026
[Operator API]
- Added a Launch URL rules section to getGameURL. It states that a launch URL works one time only, and for one game only.
- Added a sample flow for a change from Game A to Game B.
- Corrected the validity time of the launch URL from 60 seconds to 120 seconds.
- Clarified the most frequent cause of SESSIONINVALID (1008).
v2.3.19 - 24.09.2026
[Operator Interface]
- Added a Reality Check section to the Playtech (POP) page. It explains the dialog after error 38 and the
sendRealityCheckResponsecall. - Listed
sendRealityCheckResponseas a required method for Playtech (POP). - Linked the Playtech (POP) flow from the
sendRealityCheckResponsemethod.
v2.3.18 - 23.09.2026
[Engine]
- Added a Load Config page to the generator docs. It explains how the engine returns
IGameConfig.loadConfigin theloadConfigreply. - Listed the reserved key names that the engine writes over, and the
loadConfigkeys that some game types read. - Linked the page from the
IGameConfigtable and from the SDK loading sequence.
v2.3.17 - 18.09.2026
[Game Studio API]
- Clarified HTTP connections and base URLs in the integration guides, API reference, and AI indexes.
v2.3.16 - 04.09.2026
[Hizi App]
- Added a Websockets page. It explains the per-game switch, its default value, and the publish step.
- Documented the Websocket password field. The field requires the SHA-1 hex digest of the shared secret.
- Linked the page from the Hizi App overview, sidebar, and What's What in the hizi app.
- Corrected the Logs entry in What's What in the hizi app. Users search site logs inside the app.
v2.3.15 - 18.09.2026
[Game Studio API]
- Moved External Game Engines to the end of the Game Studio API group and the overview list.
v2.3.14 - 17.09.2026
[Game Studio API]
- Added a dedicated External Game Engines page with a template link, sidebar entry, and overview link.
- Described the hosting options and setup steps.
- Added a jurisdiction restriction note with instructions to contact us before production use.
v2.3.13 - 17.09.2026
[Game Studio API]
- Added
POST /getPlayerData. - Added
POST /setPlayerData.
v2.3.12 - 14.09.2026
[Game Studio API]
- Documented
POST /startGameOrAddBet. The call places a bet: it starts a new gameround on the first bet, and appends a further debit to the open gameround on each later bet. It is the supported way to hold more than one bet in one gameround. - Explained why a second
POST /startGameRoundon an open gameround fails with error 12GAMEROUNDALREADYSTARTED. A player has only one open gameround at a time, and/startGameRoundalways opens a new one. The/startGameRoundsection now points at/startGameOrAddBetfor the second bet. - Described how
/startGameOrAddBetchooses between "start" and "add bet". It comparesexternalGameProviderRoundIdwith the gameround on the session token, then comparesdebitInformation.externalGameProviderTransactionIdwith the first bet of that gameround. - Listed the three limits of an added bet: the call ignores
endGameandcreditInformation, a repeateddebitInformation.externalGameProviderTransactionIdfails with error 37TRANSACTIONALREADYEXISTS, and a bet cannot join a gameround that started withoutexternalGameProviderRoundId. - Added two request examples and one reply example for the new call, on the Calls provided by API V2 page and in the OpenAPI specification.
- Extended the notes on Data structures.
externalGameProviderRoundIdbecomes the gameround hash.externalGameProviderTransactionIdidentifies one bet, is limited to 32 characters, and must differ for each bet in a gameround. - Added
startGameOrAddBetto the round-lifecycle ordering diagram in the OpenAPI specification. - Added
/startGameOrAddBetto the summary table of engine calls at the top of Calls provided by API V2. The table listed every other call. - Stated which of the two bet calls to use.
/startGameRoundsuits every game that takes one debit per gameround, and it is the safer call, because it starts exactly one gameround and takes exactly one debit. Use/startGameOrAddBetonly for a game that expects more than one debit. This guidance appears on both call sections and in the OpenAPI specification. - Linked every call on Calls provided by API V2 to its page in the OpenAPI reference. Each row of the two summary tables now links to the reference, and each of the 23 call sections carries an API reference link under its heading.
v2.3.11 - 15.09.2026
[Engine]
- Correct factual errors on the per-vertical game pages, found by an audit against the engine, the creator and the SDK.
- Roulette: remove
maxRoundStakeandmaxRoundWin, which no config carries. DocumentuseTargetRTP. Name the real limits:gameSettings.maxExposureand 500 bets per round. State that the cap rewritesgameResult.totalWinonly. Correct the exact integer stake checks, theadjust_oddsweight formula, the un-floored per-betwinAmount, and an import of a type the SDK does not export. - Mines: a mines game ships no
loadConfigof its own. Read the grid, the mine count and the multiplier from the scenario. Read the mine-count options frombuyFeatures. Correct the house-edge description. - Plinko: the field is
multipliers, keyedrows-{N}-risk-{level}, not a nestedbucketsmap. AddminRows,maxRowsandrisks. Correct two multiplier arrays and one buy-feature id. - Keno: a wrong
playerNumberscount returnsINVALIDPARAMETER. The engine auto-picks only for an absent or empty field. AddnumberRange. Correct one buy-feature id and the high-risk payout threshold. - Blackjack:
cappedcomes from the operator'smaxExposure. Every provably fair row is anintrow.insurance.wondoes reach the wire asfalse. - Hilo: the builder rounds the multipliers, not the engine. Under
adjustMultipliersthe rounding moves the real RTP off target. Correct the Ace and King rows forstrictExtremes. The choice index is not fixed, so match on the feature suffix. - Frogger:
pfVerifyneeds one action per hop. The field iscashoutMultiplier, and a death entry carries none. Correct one buy-feature id and the collect response. - Bingo: the engine rejects a bad config at bet time with
GAMECONFIGNOTSUPPORTED. Correct the win count for two full rows and the exposure ceiling undersummode. - Crash:
minMultiplieris also the base factor of the curve. - Overunder: the builder rounds the multipliers and adjusts the weights, not the engine.
v2.3.10 - 15.09.2026
[Engine]
Preserve SDK error codes and operator data in controller and loader failures. Correct stake conversion and effective bound descriptions.
Add a focused SDK index for agents. Link it from the site and engine indexes. Order frontend text by the guide.
Replace duplicated Operator Interface instructions with links to the existing Operator Interface documentation.
Rework the SDK docs into an ordered frontend guide, with a checked slot controller.
Cover all 57 SDK settings, loading, audio, stakes, rules, operator events, jurisdiction behavior, and recovery.
Add Match, Progressive, and Blank guides. Correct slot scenarios, gamble, banking, feature purchases, and Crash transport.
Document source revisions and platform gaps. Add acceptance checks for every supported creator mode.
Publish a generated frontend text bundle with checked example source for AI agents.
Run TypeScript, request-behavior, download, link, and anchor checks during documentation builds.
Correct errors found by an audit against the SDK, engine, creator and Operator Interface sources. The socket example now asks for
arraybuffer, so a binary frame from the router no longer discards every reply and broadcast.tokenDatacarries nototalBetortotalWin.sendRealityCheckResponserejects on failure. A bank request that rounds to a zero multiplier leaves the remainder outstanding. A consolidated slot round returns one step per call, never an array.Make SDK
login()the only documented connect path.login()andrefresh()return the session identity intokenData(playerId,operatorId,gameId,language,currency,currencyMultiplier,mode,gameRound). Remove the adapter that replaced the login call: it risked a second exchange of a single-use launch token and duplicated SDK code. OnlygameVariables.rcElapsedand the singularfreePlayInfoare lost, and both are now stated as integration requirements. The example file keeps only a launch-parameter helper.
[Operator Interface]
- Replace the broken ReelLink balance link with the engine SDK balance operation.
[Operator API]
- Replace the outdated jurisdiction table with the current SDK inventory. Clarify settings types and custom-stake limits.
v2.3.9 - 15.09.2026
[Game Studio API]
- Documented the error codes that
/voidGameRoundreturns.GAMEROUNDNOTFOUND(14) means the gameround hash is unknown.GAMEROUNDNOTACTIVE(13) means the gameround is no longer open.TRANSACTIONSARERETRYING(26) means a credit was already processed. All three come back as an HTTP 400 response, and you must not retry them. An HTTP 5xx response, a timeout, or a network error on this call is different: retry it.
v2.3.8 - 15.09.2026
[Engine]
- The site now publishes
llms.txtindex files for AI agents, one per section, with a parent index at https://docs.hizi.io/llms.txt. The engine section keeps its own file at https://docs.hizi.io/engine/llms.txt. It also keeps its groups and its "Optional" block. Every description in it is unchanged. - Added three engine pages the old file did not list: Bingo, SDK Freeplays, and Generator Progression Counters. A person wrote the old file by hand, so nothing added a new page to it. The build now generates the file from the page list. A new page cannot go missing again.
- Rewrote the "For LLMs" section on the engine landing page. It pointed at the engine file and called it an index of the whole site. It now names all three files and says what each one covers.
- Changed the site crawl policy.
robots.txtnow welcomes AI systems. It setsContent-Signal: search=yes, ai-input=yes, ai-train=yes, use=fulland it names the index files. Note that Cloudflare prepends a managed block ahead of this file for the whole zone. That block still denies the AI crawlers. Somebody must turn it off in the Cloudflare dashboard before the new policy reaches a crawler. - The site now publishes https://docs.hizi.io/sitemap.xml. That address returned a 404 error before. It also publishes https://docs.hizi.io/llms-full.txt, which holds the full text of every page in one file.
[Operator API]
- The section now publishes https://docs.hizi.io/operator-api/llms.txt. The file lists every page in sidebar order. It also lists all 31 operations of the OpenAPI specification, each with its verb, its path, and its summary.
[Game Studio API]
- The section now publishes https://docs.hizi.io/game-studio-api/llms.txt. The file lists every page in sidebar order. It also lists all 28 operations of the OpenAPI specification, each with its verb, its path, and its summary.
[Operator Interface]
- The section now publishes https://docs.hizi.io/operator-interface/llms.txt. The file lists the guide, the API reference, and the note for each of the ten supported operators.
[Operator & Game Settings]
- The section now publishes https://docs.hizi.io/operator-game-settings/llms.txt.
[Hizi App]
- The section now publishes https://docs.hizi.io/hizi-app/llms.txt.
v2.3.7 - 14.09.2026
[Engine]
- Documented the four certified figures on the SDK
ILoadConfigConfigpage:maxPayout,maxPayoutOdds,maxWinandmaxWinOdds. The type carried them through its index signature only, so the page listed none of them. The entry for each field gives the unit (a multiplier of stake), the "1 in N" meaning of an odds field, and the cases in which a game omits the field. Added the same four fields to theloadConfigresponse sample on the SDK Endpoints page. - Added a warning that
maxPayoutOddscurrently repeatsmaxWinOdds. The generator computes one odds value, from the chance that an ordinary round hitsmaxWin, and writes it to both fields. The generator Types page saidmaxPayoutOddswas the probability of reachingmaxPayout, which is not what the field holds today. Corrected that entry. - Documented that the generator omits
maxWinOddswhen only a buy feature reaches the top prize. - Noted on
maxPayoutCapthat the engine does not set it on aloadConfigreply.
v2.3.6 - 02.09.2026
[Engine]
- Split the word "feature" into two words on the generator and SDK pages. A table is a set of entries saved beside the
basegametable. A feature is a game mechanic (free spins, a buy feature, a wager feature). This follows the same rename in the hizi-engine-creator UI. The prose now says "table" where it means a set of entries (for example "across all tables", "a synthetic table namedbf_<id>"). Wire fields such asfeature,featureWeights, andfeatureToBuykeep their names.
v2.3.5 - 31.08.2026
[Operator API]
- Repaired 17 dead links that the migration from Google Docs left behind. Each one pointed at a Google Docs bookmark ID (for example
#kix.ie16ui44qznz). Thehashlinks now point at the Basic types table on the Data types page. The signing-example link now points at the multi-call gameround sample. - Replaced three dangling "see here" cross-references with real links. Two point at Structure of player details. One points at Structure of hashesProcessed.
- Corrected the player detail field
affilatetoaffiliatein two sample payloads on the Operator → hizi.io page. The field table on the same page and the OpenAPI schema both call itaffiliate. - Corrected the sample profile name
jurisidiction-detojurisdiction-de. Appendix C lists the profile asjurisdiction-de. - Corrected 8 malformed JSON keys on the hizi.io → Operator page. Each one read
"gameCode: "and was missing the closing quote on the key. - Corrected the Step 4a sample of a multi-call gameround. It declared two sibling arrays instead of one
transactionsarray with two entries. Removed two trailing commas from other samples in the same table. - Quoted the JSON keys in the
registerPlayerresponse sample and in thegetGameListresponse sample. Replaced the curly quotes in thegetGameListsample with straight quotes. Added the missing closing brace to that sample. - Documented the
HISTORYlaunch mode on the Operator → hizi.io page. The page said games launch in three modes but described onlyREALandDEMO. - Corrected the launch URL validity window. One sentence said 60 seconds and the next said 50 seconds. The window is 60 seconds.
- Corrected three sample tables captioned "Sample call to report a bonus win". They belong to doGameRoundReport, doGameRoundResult, and reportAnimationEnd. None of them reports a bonus win.
- Corrected the
reportAnimationEndsection. It repeated the heading and the endpoint description ofdoGameRoundReport. - Corrected the heading "Authentification" to "Authentication" on the Common definitions page.
- Rewrote the two blocks of HTTP header fields on the Common definitions page as tables. The blocks used space alignment, which HTML collapses, so each block rendered as one run-on line.
- Wrapped the
playerdetailssample on the Operator → hizi.io page in a code block. It rendered as a paragraph, so the sample lost its JSON structure. - Changed the two sample launch URLs from
httptohttps. The overview page states that hizi does not support HTTP. - Lowercased "Hizi" to "hizi" in the amounts callout on the overview page.
- Corrected "Usecase" to "Use case" on the hizi.io → Operator page.
[Engine]
- Repaired the flow diagram on the hizi engine overview page. Two lines overflowed their boxes, so the diagram rendered misaligned.
[Operator & Game Settings]
- Replaced the curly quotes in the "Deny traffic from Ontario" sample with straight quotes. Removed the trailing comma. The sample was not valid JSON.
v2.3.4 - 28.08.2026
[Hizi App]
- Added a note to Step 4 of the Create your engine page in the Studio Quickstart guide. The note tells the user to set the Game's status from DRAFT to PUBLISHED in the game settings.
v2.3.3 - 28.08.2026
[Hizi App]
- Removed the GitLab icon link from the top-right of every page. The link pointed at a private GitLab project, which readers of this public site cannot open.
v2.3.2 - 28.08.2026
[Engine]
- Corrected the hizi engine generator reference against version 0.8.0 of
@hizi.io/engine-generator.getOutputFiles()is gone from the API page.getEntries()andgetConfig()replace it.addResult()now shows its real signature:optionsis required,scenariohas nonullform, and the page documents theprogressionInfoandforcedoptions. The entry match key now listsfeatureandprogressionInfo. The constructor table gainedmaxTotalScenarioRowsandmaxEntriesPerGame, with the thresholds at whichaddResult()warns and throws. The API page gained thescenarioRowCountproperty, and theresolveBuyFeatures(),isCashAward(),isFeatureAward(), and limit-constant exports. - Added the missing types to the generator Types page:
IProgressionInfo, and theIGameConfigfieldsrng,minStake,maxStake,enableCardGamble,enableLadderGamble,ladderMultipliers,ladderLives,maxPayout,maxPayoutRoute,maxWin,maxPayoutOdds,maxWinOdds, andcertifiedVersion.IGameConfigalso gets its own section heading, which it lacked.IBuyFeatureConfiggainedmaxPayout. - Documented
computeMaxPayout()and its result types on the KPI Math page. Corrected the win-bucket labels to the six that the package generates. RenamedTVolatilityClassto its public nameVolatilityClass. CorrectedIKpiEntryand theIGameRtpfield list. Rewrote the cash-counter RTP section: a counter withresetOnFeatureEndis now walked per entry fromprogressionInfo, and the total-mass formula is only the fallback upper bound. - Corrected
start(), which opensscenarios.jsonlonly.end()writesentries.jsonl. Corrected the zero-win scenario cap to 2,000, the entry ordering inentries.jsonl(weight descending, across all features), and the illustrative numbers in the slot game example. The generator index no longer lists the removedstakeboostbuy-feature strategy. - Added the caveat that
progressionInfois part of the entry match key, so it does change the generated output even though it does not change gameplay.
v2.3.1 - 27.08.2026
[Operator API]
- Replaced the hero banner on the landing page with a normal overview page. Merged the separate Introduction page into it.
/operator-api/is now the one overview for the section. It gives the scope, the amount-units warning, and the parts of the API. One "What's In This Section" list then links to the rest of the section. The old feature cards are gone, so the page no longer holds a heading per link. The page is listed in the section sidebar. Every page in the section shows breadcrumbs.
[Game Studio API]
- Replaced the hero banner on the landing page with a normal overview page. Merged the separate Introduction page into it.
/game-studio-api/is now the one overview for the section. It gives the scope (including RGS-to-RGS) and the further-references table. One "What's In This Section" list then links to the rest of the section. The old feature cards are gone. Two of those cards only repeated a fact from the scope or from the table, so the page drops them. The page is listed in the section sidebar. Every page in the section shows breadcrumbs.
[Operator Interface]
- Replaced the hero banner on the landing page with a normal overview page.
/operator-interface/is now the overview for the section. The intro states the event-based protocol, the aggregator support, and the TypeScript types. Three feature-card headings held those facts before. The registry login and the install steps keep their own page at/operator-interface/guide/getting-started. The overview links to that page first under "Next Steps". Both pages are listed in the section sidebar. Every page in the section shows breadcrumbs.
[Operator & Game Settings]
- Replaced the hero banner on the landing page with a normal overview page. Merged the separate Introduction page into it.
/operator-game-settings/is now the one overview for the section. One "What's In This Section" list links to the two settings pages. It replaces three feature cards, two of which pointed at the same page. The page is listed in the section sidebar. Every page in the section shows breadcrumbs.
[Engine]
- Replaced the hero banners on the hizi engine, Generator, and SDK landing pages with normal overview pages. Merged the separate "What is hizi engine?" page into
/engine/./engine/,/engine/generator/, and/engine/sdk/are now the overview for their section. Each overview says what the thing is and how it works. The "Next Steps" list then links to the rest of the section. The setup steps keep their own page in each of the three sections:/engine/getting-started,/engine/generator/getting-started, and/engine/sdk/getting-started. The install steps and the quick-start walkthroughs are on those pages, not on the overview. Each overview links to its Getting Started page first under "Next Steps". The old feature cards are gone. Their links moved into "Next Steps". Their facts moved into the prose and the lists that already cover them. The code samples and tables are unchanged. Every page in the section shows breadcrumbs.
[Local Development]
- The retirement notices now have a sidebar and breadcrumbs, so a reader who arrives from an old link can see where they are and navigate out.
[Hizi App]
- Added an overview page and a sidebar for the section, which previously had neither. Both pages show breadcrumbs.
- Fixed the home page's Hizi App topic card. It linked to Getting Started. Every other topic card links to its section overview. The card now links to the Hizi App overview too.
- Split the single Getting Started page into four pages: Getting Started, What's What in the hizi app, Glossary, and Currencies. The Overview page links to all four. The sidebar lists all five Hizi App pages. No prose changed, only the page each section lives on.
v2.3.0 - 27.08.2026
[Hizi App]
- Added a new Studio Quickstart section: the ordered, end-to-end path for a game studio building a game on the hizi engine with its own frontend, from engine config to operator-ready. Five steps: create your engine, set your frontend URL, install the SDK, place bets and collect, and implement the Operator Interface. Each step is a short checklist that links to the existing hizi app, engine, SDK, and Operator Interface pages for the detail, instead of repeating it. Written in ASD-STE100 style.
- Added a "Getting started as a studio building games on hizi" card as the first card on the home page, pointing at the new quickstart guide.
- Split the home page into a Guides section (currently just the new Studio Quickstart guide) above the existing Topics section, instead of a single mixed grid of nine cards.
- Added a CLAUDE.md policy requiring all documentation content to follow ASD-STE100 Simplified Technical English.
v2.2.3 - 27.08.2026
[Engine]
- Rewrote all engine, generator, and SDK pages in ASD-STE100 Simplified Technical English: short sentences, active voice, and one idea per sentence. Code samples, headings, and identifiers are unchanged.
[Game Studio API]
- Rewrote all Game Studio API pages in ASD-STE100 style, including the prose and the hero/feature card text.
[Operator API]
- Rewrote all Operator API pages and appendices in ASD-STE100 style, including the prose and the hero/feature card text.
[Operator Interface]
- Rewrote all Operator Interface guide, API, and per-operator pages in ASD-STE100 style.
[Operator & Game Settings]
- Rewrote all Operator & Game Settings pages in ASD-STE100 style.
[Local Development]
- Rewrote the Local Development pages in ASD-STE100 style.
[Hizi App]
- Rewrote the Hizi App getting-started page, this changelog, the site home page, and the shared Response Codes page in ASD-STE100 style.
v2.2.2 - 27.08.2026
[Game Studio API]
- Corrected
BETLIMITREACHED(11). The previous text describedpassThroughData.clientMessage.msgas commonly absent for this code. In production, the field is reliably present, the same as forREALITYCHECK(38). Presence depends on the operator's own account configuration or responsible-gambling (RG) configuration, not on the error code.
v2.2.1 - 27.08.2026
[Game Studio API]
- Rewrote the note about idempotency (whether a repeated call has the same effect as one call) in the retry-handling appendix. It now states which calls do not deduplicate a retry:
addWin,startGameRound,wagerWin,collectWin,endGameRound. It states which call deduplicates a retry:voidGameRound. None of these calls are safe to retry after the gameRound closes. - Fixed two wrong error-code references. The previous text cited
errorCode 15for "round already closed" and "round never started". The correct codes are 13 and 14. - Clarified that
/getGameRoundInfofails on a closed round./getGameRoundHistoryInfofails on an open round. Call/getGameRoundInfofirst. If it fails, call/getGameRoundHistoryInfoinstead of only querying/getGameRoundInfo. - Removed a reference to
reconcileTransactions. This call belongs to the Operator API, not the Game Studio API that a game studio can call.
v2.2.0 - 26.08.2026
[Engine]
- Split the single "Engine & Creator Docs" home page card into three cards. Hizi Engine explains how the engine works. Hizi Engine Generator covers turning simulations into the served JSONL files. Hizi Engine SDK covers integrating a frontend. Each card has its own visitor-focused description.
- Merged the Games section into the SDK docs.
/engine/sdk/*and/engine/games/*now share one sidebar with a "Game Guides" group. The SDK Overview lists the eleven per-game guides. The Games overview now reads as part of the SDK section. All existing/engine/games/...URLs stay the same. - Gave the Generator and SDK sections their own landing pages, with a hero and a feature grid. These pages match the engine landing page. These sections no longer use plain overview pages. The existing overview content stays on the page below the hero.
- Updated
llms.txtto describe two audiences instead of three: generator authors, and frontend/SDK authors, including per-game integration. - Made the Engine section self-contained. Its own landing page and sidebar no longer show the Generator or SDK as sub-parts of Engine. The Generator and SDK are now separate top-level sections. You can reach them from the home page.
[Hizi App]
- Moved the Hizi App card to the first position on the home page.
- Removed the "About this site" section from the bottom of the home page.
v2.1.21 - 26.08.2026
[Engine]
- Added a Bingo game guide. It covers the three creator templates: Bingo 75, Bingo 90, and Bingo 80. It also covers the fully parameter-driven
loadConfig/scenario contract. - Fixed the cell-index formula. The previous formula was hardcoded to a 5-column grid, but a board's
colsvalue varies. Added the missing Bingo 80 paytable table. Added Bingo 80's real highest-mode RTP (Return to Player), for the board that actually ships in that pay mode. This sits alongside the illustrative Bingo 75/90 figures. - Reworded a passage that described the board-as-config design by contrast with a "variant" concept. This "variant" concept no longer exists in the code.
v2.1.20 - 19.08.2026
[Engine]
- Documented how the KPI math scores
playerChoiceprogression-counter awards.computeGameRtp()/computeEffectiveEntries()default to a uniform selection-fraction assumption acrossonComplete.awards, not real player behaviour, for the single blended RTP number. Only theplayerChoiceAnalysis: truemin/max range reflects worst-case and best-case player choice. Added this to KPI Math. Cross-linked it from the generator's Progression Counters page.
v2.1.19 - 19.08.2026
[Engine]
- Added a generator-side Progression Counters page (
engine/generator/progression-counters). It mirrors the Buy-Features page. The new page covers four topics. It covers recordingprogressionAwardsonaddResult(). It covers configuringprogressionCounters(includingresetOnFeatureEndandprogressionInfo) atend(). It includes a runnable example. It covers how the KPI-math functions fold counters into RTP. Cross-linked the page from the API, Types, Output Format, and KPI Math pages. Also cross-linked it from the existing SDK · Progression Counters page. - Fixed the
IProgressionCounterConfigsnippet on KPI Math. The snippet was missingresetOnFeatureEndandstakeSpecific. It also showed feature-only awards and omitted cash options. Added the missingresetOnFeatureEndfield to the Types reference. - Corrected the API Reference's description of entry-matching for
addResult().progressionAwardsis part of the key that the engine uses to detect duplicate entries. Entries that differ only in counter increments do not merge. - Corrected the SDK · Progression Counters page in three ways. First, the hizi-engine runtime no longer supports
resetOnFeatureEnd; it no longer resets a counter. The page now flags this with a warning and points to Single-Gameround Jackpots for that shape of mechanic instead. Second, theprogressionAwardsexamples used a flat{ counter: number }shape. This does not match the current step-indexed{ counter: { step: number } }API. Third,engineData.progressionCountersis only present once a counter has actually incremented, not on every response. Added the sameresetOnFeatureEndcaveat to the new generator page and to the Types reference.
v2.1.18 - 14.08.2026
[Game Studio API]
- Documented
passThroughData.clientMessage(thePassThroughData/NativeClientMessagestructures) as the field for player display on responsible-gambling prompts. Clarified thatX-H-ERROR-MSGis diagnostic, log-only text, not localized copy for the player.
v2.1.17 - 14.08.2026
[Game Studio API]
- Removed the "Operator API reference" row from the introduction page's Further references table. The site header already links to the Operator API docs. The row duplicated that link and confused readers.
v2.1.16 - 14.08.2026
[Engine]
- Moved the documentation of the buy-feature ID to its single remaining location. The engine no longer duplicates
buyFeatureIdat the reply root ofplaceBet/collect. Read it instead fromresult.engineData.buyFeatureId. This field is now guaranteed present on every reply of a bought round. The reason:collectreplies now always carry aresultwith closedengineData. Updated theIPlaceBetReply/ICollectReplyreferences on Endpoints and the Buy-Features cross-link.
v2.1.15 - 14.08.2026
[Game Studio API]
- Deep-linked the "Further references" table on the Introduction page to the exact Response Codes & Error Codes sections. These sections cover error codes, HTTP return codes, and response headers. Renamed the row labels to match those section names. Also removed the redundant "Definition of V2 interfaces" row, which pointed at this page's own section.
v2.1.14 - 14.08.2026
[Local Development]
- Retired this section. The local-development/
core-dockersetup path is no longer a supported integration path. Replaced the Getting Started, Troubleshooting, and overview pages with a retirement notice. The notice stays live so existing links do not 404. Removed the section's sidebar. Dropped its card from the home page.
[Game Studio API]
- Updated the integration-models comparison table and callout on Basics. The local-development/
core-dockersetup path for the hizi.io-hosted-engine model is now retired. The table no longer links to it as an active guide.
v2.1.13 - 14.08.2026
[Engine]
- Removed this section from the global topbar dropdown navigation. You can now reach it from the left sidebar once inside the section, and from the home page.
- Reworded the home page feature card to lead with visitor intent. For example: "you want to create a game using the hizi engine". Before, the card just listed content.
[Operator Interface]
- Removed this section from the global topbar dropdown navigation. You can now reach it from the left sidebar once inside the section, and from the home page.
- Reworded the home page feature card to lead with visitor intent.
[Operator API]
- Removed this section from the global topbar dropdown navigation. You can now reach it from the left sidebar once inside the section, and from the home page.
- Reworded the home page feature card to lead with visitor intent.
[Game Studio API]
- Removed this section from the global topbar dropdown navigation. You can now reach it from the left sidebar once inside the section, and from the home page.
- Reworded the home page feature card to lead with visitor intent.
[Operator & Game Settings]
- Removed this section from the global topbar dropdown navigation. You can now reach it from the left sidebar once inside the section, and from the home page.
- Reworded the home page feature card to lead with visitor intent.
[Local Development]
- Removed this section from the global topbar dropdown navigation. You can now reach it from the left sidebar once inside the section, and from the home page.
- Reworded the home page feature card to lead with visitor intent. For example: "you want to run the hizi stack on your own machine".
[Hizi App]
- Added a home page entry point: a feature card linking to the Getting Started guide. Before this change, the page had no link anywhere on the site.
- Reworded the home page feature card to lead with visitor intent.
v2.1.12 - 14.08.2026
[Operator API]
- Removed the outdated "(vX.Y.Z)" version tag from the homepage feature card, the landing-page hero, and the introduction page. This changelog is now the only place on the site that shows a version number.
[Game Studio API]
- Removed the outdated "(vX.Y)" version tag from the homepage feature card, the landing-page hero, and the introduction page. The reason is the same as above.
v2.1.11 - 11.08.2026
[Operator & Game Settings]
- Fixed a copy-paste error where the "Enable animation end reporting" section described
maxExposureinstead ofreportAnimationEnd. - Clarified the "Default game settings (specific games)" description to state it applies only to the named game, not all games.
- Fixed the "Default profile" section, which called
defaultProfilea "protocol".defaultProfileactually sets a settings profile (for example,jurisdiction-de). This is a different concept from the operator's integration protocol, described later on the page. - Removed stray private-use Unicode glyphs (copy-paste artifacts). These glyphs rendered as broken characters in the GAMEKONG and BETCONSTRUCT protocol sections' headings and code samples. Fixed a malformed
### ---heading. The heading should have been a plain horizontal rule.
[Operator API]
- Removed a stray private-use Unicode glyph from the
doGameRoundResultmsgfield description.
v2.1.10 - 10.08.2026
[Hizi App]
- Added a "FAQs" section to the Getting Started page, beneath the glossary. It includes a "Currencies" topic. This topic covers the default currency list, multipliers, and custom currencies. It also includes a walkthrough for adding a new cryptocurrency.
v2.1.9 - 07.08.2026
[Game Studio API]
- Standardised terminology in prose across the site, for these terms:
RGS-to-RGS,third-party,gameround(s),freeplay(s),free spin(s),long-lived/short-livedtoken, andgame engine. API identifiers, error codes, endpoint names, and code samples stay the same.
[Operator API]
- Applied the same terminology standardisation to the Operator API pages, the appendices and the shared Response Codes table.
[Operator Interface]
- Applied the same terminology standardisation to the Operator Interface methods reference.
[Engine]
- Applied the same terminology standardisation to the Engine, SDK and Generator pages.
[Hizi App]
- Applied the same terminology standardisation to the Hizi App Getting Started page and its glossary.
v2.1.8 - 06.08.2026
[Engine]
- Documented the new
buyFeatureIdfield. The engine returns this field onplaceBet/collectreplies for a round opened by buying a feature. The engine echoes it back on every reply for that round, including continuations and the closingcollect. Added the field to theIPlaceBetReply/ICollectReplyreference on Endpoints. Cross-linked it from Buy-Features.
v2.1.7 - 04.08.2026
[Hizi App]
- Updated the Glossary on the Getting Started page with clearer term definitions and old-backoffice equivalents.
v2.1.6 - 31.07.2026
[Engine]
- Fixed a bug in the access-restricted internal guide. Users could sometimes reach the guide without its access check. This happened when a user navigated to the guide from elsewhere on the site, rather than opening it directly.
v2.1.5 - 31.07.2026
[Engine]
- Removed screenshots from the internal QA and testing guide.
v2.1.4 - 31.07.2026
[Engine]
- Added an internal QA and testing guide (access-restricted) for the hizi engine. Cross-linked it from a few related pages.
v2.1.3 - 31.07.2026
[Engine]
- Added a "Freeplays" SDK guide (
/engine/sdk/free-plays). It covers how a frontend readsfreePlaysAvailablefromlogin/refresh/loadConfig. It covers how the frontend picks between multiple packages. It covers how the frontend spends one viaplaceBet({ useTicket, useTicketFeatureType }). It covers how the frontend keeps its local list in sync, becauseplaceBetdoes not echo the list back. Linked the guide from Game Flow, Buy Features, and theIFreePlayInfotype entry.
v2.1.2 - 31.07.2026
[Hizi App]
- Added a getting-started page for the hizi app backoffice (app.hizi.io). The page covers three onboarding paths: build with the hizi engine, import your own game, and distribute to operators. It includes a section-by-section overview of the app's 27 backoffice pages. It includes a glossary of common terms. The page is not yet linked from navigation. The team shares it directly with registered tenants for now.
v2.1.1 - 29.07.2026
[Engine]
- Editorial polish across the engine game and SDK pages.
[Local Development]
- Editorial polish of the getting-started and troubleshooting pages.
v2.1.0 - 29.07.2026
[Operator API]
- Added a machine-readable OpenAPI 3.0 specification. It covers every documented call, callback, backoffice endpoint, freeplay or discount call, and health or certified-hash endpoint. In some places, the source docs are ambiguous or self-contradictory (for example,
getGameRoundResult's response type, orregisterPlayer's reply shape). The spec's descriptions call out these places instead of silently resolving them. - Fixed the
reportAnimationEndsample call, mislabeled asPOST /gameRoundinstead ofPOST /reportAnimationEnd. - Added a sample
internalPlayerIdvalue to theregisterPlayersuccess response. - Added a browsable OpenAPI Reference, one page per operation.
vitepress-openapigenerates each page from the spec. Each page shows request and response schemas, authentication, and copy-paste code samples. The "Try it out" console is hidden for now. Neither API can actually run from this console. The reasons: computed HMAC signing, and no CORS support on the real servers for this origin.
[Game Studio API]
- Added a machine-readable OpenAPI 3.0 specification. It covers game launch, the full round-lifecycle call set, calls the game engine must implement, and freeplays. The spec models request signing as three chained header security schemes, with the HMAC construction documented inline. The spec documents round ordering (start → wager → end → collect) per operation. OpenAPI has no native construct for call sequencing.
- Clarified in the
voidGameRoundspec that a returnedbalanceis not guaranteed accurate.errorCodeonly appears on failure. - Documented the actual mandatory fields for
getGameConfiguration:stakes,currency,currencyMultiplier,expectedRtp,maxPayoutOdds,gameCode. The team confirmed these fields against the original red-highlighted source. That source did not survive migration to markdown. - Added a browsable OpenAPI Reference, same as the Operator API.
v2.0.8 - 29.07.2026
[Operator API]
- Moved "Response Codes & Error Codes" out of the Operator API section, to a shared top-level page (
/response-codes). This page is linked from both the Operator API and Game Studio API nav, sidebar, and homepage cards. Both areas reference it. Dropped the internal-only response headers (X-H-OPERATOR-ERROR_ID,X-H-REPEATCOUNT,X-H-DELAYNEXTRETRY,X-H-DONOTDELAY). These headers are not relevant to external integrators. Fixed a dangling unlinked reference to it in Appendix E: Discounts. - Linked the new page from the Operator API Introduction for visibility.
[Game Studio API]
- Linked the shared "Response Codes & Error Codes" page from the Game Studio API nav, sidebar, and homepage card.
- Repointed three rows in the Game Studio API Introduction's reference table. The rows: "API return codes", "HTTP status codes", and "custom HTTP headers". These rows now link straight to the new page, instead of to the generic Operator API link.
v2.0.7 - 29.07.2026
[Engine]
- Documented the per-transform
boardStatesbreakdown for base spins ('Input'→'After Expanding Wilds'→'After Substitution'→'After Duplication'). Cross-linked it from the Symbol Substitutions and Duplications section.
v2.0.6 - 28.07.2026
[Engine]
- Documented
singleGameRoundProgressionDataon the Slot Game Responses page. This field supports the new within-round jackpot mechanic, Single-Gameround Jackpots. The documentation covers its shape, how to read the meter, and trigger handling. It also covers how this mechanic differs from Progression Counters. The differences: where it lives, its persistence, and how its cash counts towardmaxPayoutand max-exposure. Cross-linked this from Progression Counters and Response Handling.
v2.0.5 - 27.07.2026
[Game Studio API]
- Documented inbound request signing (per-endpoint signed fields). Documented the
currencyMultiplierandbaseStakefields. - Clarified authentication of the calls that the RGS makes.
doAutoCloseis unsigned; attribute it viaX-H-AUTH-ID. An egress-IP restriction is recommended fordoAutoClose, but not required.healthandcertifiedfilesmust stay open to all IPs, for external monitoring and certification bodies.
v2.0.4 - 24.07.2026
[Engine]
- Documented
engineData.progressionEventson the Progression Counters and Response Handling pages. This field is the per-step feed of progression-counter increments. It also carries any awards resolved as a counter completes: cash wins, feature awards, and player-choice requests. Added a fullIProgressionEventtype reference. - Documented the
resetOnFeatureEndcounter field for feature-scoped progression that resets when a feature run ends. - Corrected the progression-counter description in the generator KPI-math reference: a counter awards cash or feature spins, not only feature spins.
v2.0.3 - 23.07.2026
[Operator API]
- Reworded "single source of truth" references.
[Operator & Game Settings]
- Reworded "single source of truth" references.
[Local Development]
- Reworded "single source of truth" references.
v2.0.2 - 22.07.2026
[Operator API]
- Clarified that all amounts use 1/100 of the base currency as a fixed factor, not the currency's ISO minor unit. Added up-front callouts to the Introduction and hizi.io → Operator pages.
- De-duplicated the currency-multiplier note on
maxExposure,maxStake, andminStakein Appendix C.
v2.0.1 - 22.07.2026
[Game Studio API]
- Marked the jackpot payload fields as not currently implemented.
v2.0.0 - 22.07.2026
- Consolidated the previously separate per-area changelogs into this single changelog. The areas: Operator Interface, Operator API, Game Studio API, Operator & Game Settings, and Local Development. Added a top-level Changelog navigation item. Versioning restarts here. From this version, all documentation areas share one version.