Introduction
Veristiq provides a "Fairness-as-a-Service" layer for your gaming or competition platform. By integrating our API, you delegate the critical task of random winner selection and audit logging to an independent third party.
This separation of concerns is crucial for regulatory compliance (like the DCMS Voluntary Code) and builds trust with your user base. You keep your user data and payment logic; we only store anonymized entry hashes and cryptographic proofs.
Quickstart Guide
Create a Competition
Define your competition parameters. This establishes the "container" for entries and the rules for the draw.
Log Entries
As users buy tickets, stream them to Veristiq. We verify eligibility and hash them instantly.
Execute Draw
When the timer ends, trigger the draw. Our CSPRNG engine selects a winner from the hashed pool.
Display Proof
Get the public audit URL. Embed this link in your "Winner" announcement.
const competition = await veristiq.competitions.create({ name: "Summer Giveaway", max_tickets: 5000, draw_at: "2025-08-01T12:00:00Z" });// On ticket sale...await veristiq.entries.create({ competition_id: competition.id, user_reference: "user_123", ticket_number: 105 });// At draw time...const result = await veristiq.draws.run(competition.id); console.log(result.audit_url);// -> https://veristiq.io/audit/8f92...
Authentication
All API requests must be authenticated using Bearer tokens. You can generate API keys in your Operator Dashboard.
Secret Keys (sk_)
Full access. Keep confidential. Use only on server-side.
Public Keys (pk_)
Read-only access to public audit data. Safe for client-side use.
Entries & Hashing
We do not store PII (Personally Identifiable Information). When you submit an entry, you provide a `user_reference` (like a User ID or Email). We immediately generate a SHA-256 hash of this reference combined with the competition salt.
- Privacy FirstYour user data never leaves your system in raw form.
- Immutable LogOnce hashed and chained, entries cannot be altered or deleted.
The Draw Process
Veristiq uses a cryptographically secure pseudo-random number generator (CSPRNG) seeded with high-entropy environmental noise. The draw process is atomic and verifiable.
Entry pool is frozen. Final hash computed.
Entropy is gathered from external sources.
Winner index is calculated deterministically.