Reusable share link
One public link per interview that anyone can open, each visit creating its own interview and transcript, with a pre-interview form and host-set limits.
A reusable share link is a single public URL per interview that anyone can open. Unlike a normal invitation (one person, one transcript), the share link is a factory: every visitor who opens it and submits the short pre-interview form gets their own invitation, their own transcript and their own sentiment analysis.
It is off by default. You turn it on, and configure it, from an interview’s Share tab.
How it differs from invitations
| Invitation | Reusable share link | |
|---|---|---|
| URL | /i/{slug}, one per person | /share/{slug}, one per interview |
| Who | You create and send it | Anyone with the link opens it |
| Result | One transcript | A new transcript per visitor |
| Default | Created with the interview | Off until you enable it |
The actual interview experience is identical: once a visitor submits the form, they land on the normal /i/{slug} page (microphone setup, consent, conversation). Only the entry point differs.
The pre-interview form
Before starting, a visitor fills a short form. For each of name and email you choose one of three policies:
- Don’t ask: the field is not shown.
- Optional: the field is shown but can be left blank.
- Required: the field must be filled (and a valid email format is enforced for email).
“Required” only collects the value, it does not verify it (no email confirmation).
Limits
All limits are optional. Together they let you bound cost, run a time-boxed campaign and keep the data clean.
- Max responses: the link closes after this many interviews. This is your main volume and cost ceiling: maximum spend is roughly
max responses x interview max minutes x price per minute. - Open / close window: the link is only active between two dates. Outside the window it shows a “closed” or “not yet open” page.
- One response per contact (dedup): a given email can only produce one interview. Only meaningful when the email is required. A visitor who returns with an unfinished interview resumes it; one who already completed it is told so.
- Max per IP / day: a soft anti-flood cap for anonymous links. It is coarse (people behind the same office or mobile network share an IP, a VPN bypasses it), so prefer dedup-by-contact when you collect a contact.
- Access code: a shared secret that gates the link (semi-private). Visitors must enter it to start.
- Allowed email domains: restrict starts to specific email domains (for example
acme.com), useful for internal studies. Only available, and only enforced, when email is required.
Always-on protection
Independently of your limits, a short-window per-IP rate limit always applies to the start endpoint to stop hammering. And because each interview is metered, the per-interview max minutes caps the length of every single call, while the organization balance gates whether a call can run at all. No minutes are spent until a visitor actually talks.
Resuming
If a visitor closes the tab mid-interview and reopens the share link on the same device, they are sent back to their unfinished interview instead of starting a new one. This is per-browser; the dedup-by-contact limit is the per-person equivalent.
API
The share configuration is part of the API-key surface:
GET /interviews/{id}/sharereturns the configuration (slug,url,enabled, the threeask*policies, the limits, andinterviewsStartedCount).PATCH /interviews/{id}/shareupdates any subset of those fields. Passnullon a nullable limit to clear it.
The visitor-facing endpoints (GET /shares/by-slug/{slug} and POST /shares/by-slug/{slug}/start) are open: the slug is the only credential, exactly like the public invitation lookup.