Sandbox
An isolated test environment pre-loaded with anonymized demo data. Experiment freely — nothing you do here touches production.
What the sandbox is
The sandbox is a physically separate environment at https://sandbox-api.kliq-ai.eu. It runs its own database seeded with anonymized Duvel demo data (real store structure, scrubbed identities) and its own CV pipeline, so you can submit observations, trigger grading jobs, and explore every API endpoint without affecting live data.
Key properties:
- Isolated by key prefix. A
kliq_test_key cannot reachapi.kliq-ai.eu, and akliq_sk_key cannot reachsandbox-api.kliq-ai.eu. The server rejects the wrong prefix with401 Unauthorized. See Environments for the full environment matrix. - Seeded demo data. Locations, stores, catalog items, and past observations are pre-populated so you can read data immediately without creating anything first.
- No live-data features. Salesforce push, WhatsApp notifications, and other outbound integrations are disabled in the sandbox. API calls that trigger those integrations succeed locally but the external side-effect is suppressed.
Sandbox vs. staging
Staging (staging-api.kliq-ai.eu) is the KLIQ team's internal pre-release environment and is not available to external developers. The sandbox is the environment designed for external evaluation and integration testing.
How to get a sandbox key
Sandbox keys are issued by the KLIQ team. They are not self-serve. Contact your account executive or email sdk@kliq-ai.eu and request a sandbox key. The KLIQ team provisions it through the platform-admin sandbox panel and sends you a kliq_test_ key by secure channel.
Do not use a sandbox key in production
Sandbox keys (kliq_test_...) are scoped to the sandbox environment only. They will not authenticate against production endpoints, and sandbox data is not your real tenant data.
Limits
The sandbox is intentionally constrained to prevent runaway usage during evaluation:
| Limit | Value |
|---|---|
| Initial credit grant | 200 credits (≈ 40 AI gradings at 5 credits each) |
| Key expiry | 30 days from issuance |
| Rate limit | 20 requests / 60 s per key |
| Quotas | Small per-tenant caps on locations, observations, and CV jobs |
When your credit balance reaches zero, every API call that consumes credits returns 402 Payment Required. Read-only calls (listing locations, fetching results) do not consume credits and continue to work after balance is exhausted.
Keys can be revoked at any time by the KLIQ team. A revoked key returns 401 Unauthorized on all requests.
Need more credits?
If you are running a proof-of-concept and exhaust the initial grant, reach out to your account executive. Additional credit top-ups can be applied without issuing a new key.
Connect the SDK to the sandbox
Pass environment: 'test' when initializing KliqClient. A kliq_test_ key also auto-routes to the sandbox if you omit the environment option, but the explicit form is recommended — it is self-documenting and will be caught by type-checking if you accidentally swap a production key.
import { KliqClient } from '@kliq-ai/sdk';
const kliq = new KliqClient({
apiKey: process.env.KLIQ_TEST_API_KEY!, // kliq_test_...
environment: 'test',
});
// Scope to your sandbox tenant (provided with your key)
const tenant = kliq.forTenant('YOUR_SANDBOX_TENANT_ID');
// List pre-seeded demo locations
const locations = await tenant.locations.list();
console.log(locations.data);Auto-routing
If you initialize KliqClient with a kliq_test_ key and no environment option, the SDK detects the key prefix and automatically targets sandbox-api.kliq-ai.eu. The explicit environment: 'test' form is still preferred for clarity.
Try it now
The playground below calls a read endpoint on the sandbox using a shared demo key. No API key required on your end — the proxy holds the credentials server-side.
/v1/tenants/DEMO/observationsSandbox vs. production comparison
| Sandbox | Production | |
|---|---|---|
| Base URL | https://sandbox-api.kliq-ai.eu | https://api.kliq-ai.eu |
| Key prefix | kliq_test_ | kliq_sk_ |
| Data | Anonymized demo data | Your real tenant data |
| Credits | 200 (fixed grant) | Billed by usage |
| Expiry | 30 days | No expiry (until revoked) |
| Rate limit | 20 req / 60 s | Standard production limits |
| Outbound integrations | Suppressed | Active |
| Provisioning | Contact sales | Self-serve in platform-admin |
Next steps
Environments
Full environment matrix: production, staging, and sandbox base URLs and key prefixes
Authentication
API keys, JWT tokens, OAuth scopes, and how key prefixes enforce environment isolation
Getting Started
Install the SDK and run your first inspection in under 5 minutes
Inspection Flow
End-to-end: photo capture, AI grading, human review, final report