OptInContextResponse
The curated, recipient-facing view of an opt-in invitation --- just enough for a client to render the registration screen. Deliberately minimal: no internal ids, no inviter identity, no raw verification code, no persistence internals. Returned from the public token surface.
podcast_titlestring
Title of the podcast being invited to opt in
Example:
The Daily Tech Roundupnetwork_namestring
Name of the network that sent the invitation
Example:
Acme Podcast Networkstatusstring
Lifecycle status of the opt-in invitation behind the magic link
Possible values: [pending, started, completed, expired, cancelled]
Example:
pendingexpires_atdate-time
When the magic-link invitation expires and can no longer be used
Example:
2026-01-15T09:30:00Zverifiedboolean
Whether the recipient has already passed verification-code verification for this magic link
Example:
falsecode_expires_atdate-timenullable
When the current verification code expires, if one is outstanding; null when no code has been sent
Example:
2026-01-15T09:30:00ZOptInContextResponse
{
"podcast_title": "The Daily Tech Roundup",
"network_name": "Acme Podcast Network",
"status": "pending",
"expires_at": "2026-01-15T09:30:00Z",
"verified": false,
"code_expires_at": "2026-01-15T09:30:00Z"
}