gixointegration guideBack to playground

Test eight products and nine workflows.

Presentations and stories (Lumen) includes decks and Lumen story (Stanza). Production recipes use saved item IDs with source receipts and out-of-date markers; the sandbox tests each workflow independently. Arc converts to a Lumen sales deck; a Business report is a separate source, not an Arc conversion.

Use the playground to test a module, then download the full example in your language. The examples below call deterministic integration fixtures. They make no model calls and consume no allowance.

1. Choose your runtime

Download one full example from the playground. Each file contains its own submit, poll and download flow. Use a clean working directory for the example and its output.

LanguageRun the downloaded example
JavaScriptnode quill.mjs (Node.js 22 or later)
TypeScriptnode --experimental-strip-types quill.ts (Node.js 22.6 or later)
Pythonpython3 quill.py (Python 3.11 or later, standard library only)
C#dotnet run --file quill.cs (.NET SDK 10.0.400 or compatible .NET 10)
JavaJava 17 or later. Download the dependency pom.xml, run mvn org.apache.maven.plugins:maven-dependency-plugin:3.8.1:copy-dependencies -DoutputDirectory=lib, then java -cp 'lib/*' quill.java. Jackson is pinned in the POM.
Gogo run quill.go (Go 1.22 or later, standard library only)
PHPphp quill.php (PHP 8.1 or later; HTTP stream wrappers enabled)
Rubyruby quill.rb (Ruby with JSON, OpenSSL and Net::HTTP)
cURLbash quill.sh (Bash, cURL and jq)

Examples default to https://gixo.ai. To test a local or staging instance, set GIXO_BASE_URL to its origin before running. Do not point examples at an untrusted service. No API key is required for simulation. To exercise a scoped platform credential, supply it as the GIXO_PLATFORM_KEY environment variable through your secret manager; every full example forwards it on submit, poll and download. Use only a trusted Gixo HTTPS origin (or your loopback fixture), since the example sends the credential to GIXO_BASE_URL. The key never appears in the example source or URL. If Python reports CERTIFICATE_VERIFY_FAILED, update the trusted certificates supplied by your Python distribution; keep certificate verification enabled.

2. Submit, poll, download

  1. POST the module's JSON input to /api/platform/sandbox/{module}. A successful request returns 202, an ID and statusUrl.
  2. GET that status URL until status is succeeded or failed. Real generation is asynchronous; the deterministic simulator completes immediately.
  3. On success, download one of exports. Fixture downloads are HTML samples. The real API reports each module's supported native formats separately.
  4. Keep review findings alongside the output. A completed draft with findings stays available; a no-output provider failure has no export.

Simulation IDs identify public constant fixtures, not stored copies of your submitted text. The simulator performs bounded envelope checks; the real adapter also applies its complete product validation. Simulation is useful for integration testing, not evidence of generation quality, production idempotency or paid fulfillment.

3. Exercise the failure paths

Use ?scenario=provider-error for a simulated provider failure with no usable output, or ?scenario=review-findings for completed output with a visible finding. The default is success. Change the scenario in the playground to copy the corresponding request.

400 INVALID_REQUEST means input needs correction. An unknown module or fixture ID returns 404. 429 means the shared anonymous request budget is exhausted: respect Retry-After where returned and wait before trying again. Ordinary rate limits still apply even though simulation costs no allowance.

For real requests, preserve the accepted ID and status URL through reloads or connection loss. Reuse the same idempotency key and body when explicitly retrying submission; generate a new key only for a new request. Never blindly restart a paid generation because a status request timed out.

4. Move to real output

The native integration guide describes quote/accept, saved-operation recovery, source IDs, protected downloads and paid MCP. Select real native mode in the playground for individual request examples in nine languages.

Sign in through Gixo to check evaluation or production eligibility. Integration simulation, real evaluation and paid usage are separate modes. Live platform rates and purchase plans appear when published in the current environment. Review the accepted maximum before starting paid work.

The existing production API reference describes current Enterprise keys, six published module contracts, scopes and account requirements. The platform catalogue reports which contracts exist. Folio, Lumen story (Stanza) and Sequence adapters must be enabled before they are represented as live public contracts. A retail subscription does not become a platform purchase merely because the same account owns it.

Platform keys

Sign in at the Gixo key console to create, list or revoke your own platform keys. Choose an environment and explicit module read/write permissions. The environment is stored on the server; request headers cannot change it. These keys are separate from existing Enterprise keys and cannot access retail, checkout or key-management routes. Creating a key grants no paid or trial allowance, and native generation additionally requires enabled adapters and an approved rate card in this environment.

Send exactly one credential, in Authorization: Bearer <key> or X-Gixo-Api-Key. Call GET /api/platform/credentials/current to verify its environment, expiry and permissions. A permitted module's simulator accepts the same header; simulation also remains available without credentials. A .write permission allows submission, and .read allows polling and downloading its simulated output. Stanza and Lumen have separate platform permissions.

Save the returned secret immediately in a server-side secret manager. It is shown once, never returned by the key list and never embedded in downloaded examples. Revoke a key in the console to end access on its next request. Evaluation keys expire after one day; sandbox and production keys after 1–90 days. Disabled and closing accounts lose access immediately. A credential can identify your app before purchase; paid admission will also require a verified active account, allowance and accepted price.

Other tools

Import the Postman collection and run each module folder in order. It stores only the current status/download URL in collection variables; it contains no credentials. The platform OpenAPI document describes the compiled public routes.

Open-source notices