How it works
The GoStudio API uses HTTP Bearer authentication. Include your token in theAuthorization header on every request:
Caller types
Every endpoint in this API declares which caller type it accepts. Sending a token that belongs to a disallowed caller type returns403 forbidden.
As a developer building on the API, you will use the
user caller type unless you are building a server-side integration with explicit internal access.Getting a user token
User tokens are Supabase JWTs issued when a user logs into GoStudio.From your application
This is the supported path. Use the Supabase Auth client to read the session token, and read it again on every request rather than caching it — the client refreshes the token for you:By hand, for a one-off test
- Log in at gostudio.ai.
- Open DevTools (F12) → Application tab → Cookies.
- Click
https://www.gostudio.aiin the left pane. - Find the cookie named
sb-<project-ref>-auth-token. Large sessions are split into numbered chunks (sb-<project-ref>-auth-token.0,sb-<project-ref>-auth-token.1, …) — concatenate their values in order. - URL-decode the concatenated value to get the session JSON, then copy the
access_tokenstring. It starts witheyJ....
Token expiry
User tokens expire after approximately 1 hour. When a token expires, the API returns:Endpoint access matrix
POST /apps/watermark-remover/webhook is called by the AI provider, not by you. It is authenticated by the provider’s signature rather than by a caller token, and takes no GoStudio credentials.
