Preview docs. Hallucination Guard is the only live endpoint today.
The rest of the API surface ships through the rest of 2026. Join the waitlist to be first in line and shape what we build first.
Getting started
Webhooks
Async operations like Meeting Memory ingest and weekly digest delivery fire HTTP callbacks to a URL you register. Verify signatures on every delivery.
Events
meeting_memory.ingest.completed: transcript indexed and structured-extractedmeeting_memory.digest.weekly: weekly digest available for retrievalvoice_profile.train.completed: async profile crystallization finished (only fires for >100-sample trainings, which run async)key.compromised: Prism detected your key on a public source and revoked it
Endpoint registration
curl https://api.prism.dev/v1/webhooks/endpoints \
-H "Authorization: Bearer $PRISM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://yours.com/webhooks/prism",
"events": ["meeting_memory.digest.weekly"]
}'Delivery shape
{
"tk-key">"id": "evt_8c3...",
"tk-key">"type": "meeting_memory.digest.weekly",
"tk-key">"created_at": "2026-04-29T14:00:00Z",
"tk-key">"data": { "tk-key">"...": "..." }
}Signature verification
Each delivery includes Prism-Signature, an HMAC-SHA256 of the raw body using your endpoint secret. Reject any payload that fails verification.
import crypto from "crypto";
function verify(signature, rawBody, secret) {
const expected = crypto
.createHmac("sha256", secret)
.update(rawBody)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected),
);
}Retries
Non-2xx responses trigger retries on an exponential schedule: 30s, 5m, 30m, 2h, 12h. After the final retry the event is parked for manual replay from the dashboard.
Idempotency
Use event.id as your idempotency key. Prism may deliver the same event twice during a network partition. Your handler should de-dupe by id.