Skip to main content

Authentication

Write endpoints require a Supabase session JWT as a Bearer token:
The server derives a trusted supabase_<uuid> id from the token, so user ids in the body/query can’t be spoofed. Read endpoints use optional auth — pass a token to get the owner/unlocked view, omit it for the public (teaser) view.

Endpoints

Gated fields

Before a caller has unlocked a signal, the projection hides the paid alpha:
  • stance is null and sources is [] (with sourcesCount teasing how many exist).
  • thesis is omitted.
After unlock (or for the owner), stance, thesis, and the full sources array appear, and unlocked: true.
See the Signals concept for the product behavior.