Skip to main content
Versive can send an HTTPS webhook after an interview is completed. Webhooks are an organization-level integration provisioned with the Versive team; creating and rotating destinations is not part of the public v1 REST API. Contact [email protected] to configure one for your organization.

Event

The current public event type is: The HTTP request body contains the event type and the completed interview and study:
The interview payload can include transcript, recording, timing, and metadata fields. Treat the entire request as sensitive research data, log only the fields you need, and do not expose the destination publicly. interview.used_fallback_transcription is true if any of the interview’s recorded answers was transcribed by a fallback model rather than one of Versive’s primary transcription models. It is false when only primary models were used, or when no transcription was recorded. An attempt that fails and then succeeds on another primary model does not set the flag, and transcribing an answer again later does not clear it. Text generation and speech synthesis do not affect the flag. Real-time voice interviews transcribe speech live on a separate path, so the flag is always false for them.

Verify every request

Deliveries are signed by Svix. Verify the svix-id, svix-timestamp, and svix-signature headers against your endpoint secret before parsing or processing the payload. Use a maintained Svix library when one is available for your language, reject stale timestamps, and preserve the raw request body for signature verification. See the Svix verification guide for language-specific examples.

Retries and idempotency

Return a 2xx response only after your service has accepted the event. Use the svix-id header as an idempotency key because a delivery may be retried. Queue slow work and respond promptly rather than performing long-running processing in the request handler. For changes to available events or webhook management, follow the versioning policy.