Skip to main content
Voight accepts raw HTTP POST from any runtime that speaks JSON over HTTPS — curl, Python, Go, Rust, browsers, embedded devices. No dependency required.

Endpoint

Authentication

Generate your vk_ key at voight.xyz/dashboard/settings.

Minimal payload

Response:
The server returns the resolved agentId (a CUID) — store it locally if you want subsequent events to skip label resolution.

Full payload schema

All fields except agentId are optional. The server defaults type: 'decision' if omitted.

Privacy on the HTTP path

The HTTP path does not apply PII scrubbing — that’s a client-side operation that requires the SDK. If you’re calling HTTP directly, you’re responsible for scrubbing sensitive content before it leaves your machine. To have the dashboard render audit chips on HTTP events, include metadata.privacyLevel: 'minimal' | 'standard' | 'full'. The scrubbing itself is your responsibility on this path. If you’re already on Node, library mode exposes scrubPii() directly — same patterns, no hook handler required.

Examples

Python

Go

Rust

Browser / fetch

CORS is configured to allow https://voight.xyz and https://www.voight.xyz. For other origins, you’ll need server-side proxying.

Status codes

Rate limits

Per pricing tier: Quotas are advisory today, enforced server-side starting v1.0. Burst rate-limiting (per-second) is in place to prevent abuse.

Next