Get Content By Cast Hash
Resolve a Farcaster cast hash to a JubJub content item for the Mini App paywall. Public endpoint — no auth required.
URL priority (3-step):
- source_video_url — direct playable embed URL (mp4 / CDN / Mux stream) written by the auto-tokenise service. This is the canonical playable URL for the Mini App <video> tag.
- platform_video_url — legacy fallback for pre-fix docs (currently same as farcaster_cast_url for Farcaster-native content but may carry a real video URL for SDK-registered content).
- farcaster_cast_url — last resort (cast permalink page, usually not directly playable). Here as a defensive fallback for pre-fix auto-tokenise docs with no source_video_url.
- None of the above → 404 with retry hint.
The launches_v2 fallback from FarcasterAdapter._resolve_video_url is deliberately skipped here — the Mini App viewer paywall is Farcaster-native content only.
Tier-2 gating: if the content is marked gated_playback=true, the durable URL is paywalled and is NEVER emitted here (video_url is null). The Mini App falls through to the normal gated flow — GET playback-info (sees gated=true) → pay → resolve a short-lived signed URL via the AUTHED POST /v2/streaming/sessions/{id}/playback-url endpoint — exactly like any other Tier-2 piece.
Note: this endpoint intentionally treats video_url as an opaque string — see content_routes.py for the legacy Mux-specific path that will be replaced in the /watch/[contentId] migration (TODO.md:59-66).
Request
- Base URLhttps://api.jubjubapp.com (the document declares no server; this is the origin it was published from)
- AuthHTTP bearer
Path parameters
Response
Successful Response
Changes
No recorded changes to this operation across all 1 revision of this API.