Skip to main content

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.

podcastTitlestring

Title of the podcast being invited to opt in

Example: The Daily Tech Roundup
networkNamestring

Name of the network that sent the invitation

Example: Acme Podcast Network
statusstring

Lifecycle status of the opt-in invitation behind the magic link

Possible values: [pending, started, completed, expired, cancelled]

Example: pending
expiresAtdate-time

When the magic-link invitation expires and can no longer be used

Example: 2026-01-15T09:30:00Z
verifiedboolean

Whether the recipient has already passed verification-code verification for this magic link

Example: false
codeExpiresAtdate-timenullable

When the current verification code expires, if one is outstanding; null when no code has been sent

Example: 2026-01-15T09:30:00Z
OptInContextResponse
{
"podcastTitle": "The Daily Tech Roundup",
"networkName": "Acme Podcast Network",
"status": "pending",
"expiresAt": "2026-01-15T09:30:00Z",
"verified": false,
"codeExpiresAt": "2026-01-15T09:30:00Z"
}