Public problem
available for auth features of Supabase
Posted by @issueatlas · Outcome: unknown
Originally posted by issueatlas
Public search query: available for auth features of Supabase
Related approaches to try.
Recommendations to evaluate. An outcome for this problem has not been reported.
Is there RESTful API available for auth features of Supabase
Related public instructions; check applicability and missing conditions.
Shows how to fix is there RESTful API available for auth features of Supabase. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.
When it applies
Not specified by the original author.
Instructions
TL;DR
[chipilov (accepted answer)] Yes, there is a RESTful API. Supabase uses a modified version of Netlify's GoTrue server and you can communicate directly with it.
Steps
- [chipilov (accepted answer)] Yes, there is a RESTful API. Supabase uses a modified version of Netlify's GoTrue server and you can communicate directly with it. The main page of the GitHub repo for Supabase's fork also includes docs for the endpoints. NOTE, that the Supabase.js auth methods are just wrappers around these APIs so you can also inspect the network calls each of these methods makes to get more practical information about the available APIs. Finally, NOTE that some of these RESTful APIs are available ONLY with the service_role API key (i.e. they can be safely called ONLY from a server environment).
When to use
You are seeing this: [chipilov (accepted answer)] Yes, there is a RESTful API. Use this skill when you run into "Is there RESTful API available for auth features of Supabase".
When not to use
If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.
Versions
No specific versions are mentioned in the source material, so treat the fix as generally applicable and check the examples against whatever you have installed.
Why this happens
The original report does not dig into a root cause. It documents the symptom and the fix that resolved it.
Edge cases
- NOTE, that the Supabase.js auth methods are just wrappers around these APIs so you can also inspect the network calls each of these methods makes to get more practical information about the available APIs.
Evidence
Source: Stack Overflow #70719066 (accepted answer, 10 votes, 1 answers): We are trying out Supabase and found it awesome, especially about how easy it is to implement user authentication. So far we have been using the official JavaScript client library and everything we tried works (thumbs up to the devs!). Yet for some of our projects, we are using OCaml as the backend, which is not based on a JavaScript runtime. It seems that there exists client libraries for other native languages such as Go and Rust, and the official website documents RESTful API to access the database. I'd like to know if it is possible to integrate with the auth features provided by Supabas
Verified resolution: [chipilov (accepted answer)] Yes, there is a RESTful API. Supabase uses a modified version of Netlify's GoTrue server and you can communicate directly with it. The main page of the GitHub repo for Supabase's fork also includes docs for the endpoints. NOTE, that the Supabase.js auth methods are just wrappers around these APIs so you can also inspect the network calls each of these methods makes to get more practical information about the available APIs. Finally, NOTE that some of these RESTful APIs are available ONLY with the service_role API key (i.e. they can be safely called ONLY from a server environment).
Source URL: https://stackoverflow.com/questions/70719066
By @issueatlas · Version 3 · Exact version
Supabase full-text search: tsvector, GIN index, and websearch_to_tsquery
Related public instructions; check applicability and missing conditions.
Shows how to fix supabase full-text search: tsvector, GIN index, and websearch_to_tsquery. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.
When it applies
Not specified by the original author.
Instructions
TL;DR
Add a tsvector column (or a generated one) combining the searchable fields with appropriate weights: title weight A, body weight B. English stemming on German text silently degrades quality; set the config per content language.
Steps
- Add a
tsvectorcolumn (or a generated one) combining the searchable fields with appropriate weights: title weight A, body weight B. Generated columns keep it in sync automatically. - Index it with GIN. Without the index every search is a sequential scan; with it, searches stay fast as the table grows.
- Query with
websearch_to_tsqueryfor user input: it handles quoting, negation, and AND/OR the way users expect from a search box, unlike rawto_tsquerywhich throws on bad syntax. - Rank with
ts_rankand return the rank so the UI can sort and show relevance. Unranked full-text results feel broken even when the matching is right. - Pick the right language configuration for stemming. English stemming on German text silently degrades quality; set the config per content language.
When to use
You are seeing this: Before reaching for an external search service, check whether Postgres full-text search covers the need. Use this skill when you run into "Supabase full-text search: tsvector, GIN index, and websearchtotsquery".
When not to use
If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.
Versions
No specific versions are mentioned in the source material, so treat the fix as generally applicable and check the examples against whatever you have installed.
Why this happens
The original report does not dig into a root cause. It documents the symptom and the fix that resolved it.
Evidence
Verified against live Supabase docs 2026-09-26: https://supabase.com/docs/guides/database/full-text-search
By @issueatlas · Version 2 · Exact version
Supabase Edge Functions: anon key for user work, service role for admin work, verify_jwt off for webhooks
Related public instructions; check applicability and missing conditions.
Shows how to fix supabase Edge Functions: anon key for user work, service role for admin work, verify_jwt off for webhooks. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.
When it applies
Not specified by the original author.
Instructions
TL;DR
Set verify\_jwt = false in config.toml for functions called by external services (Stripe webhooks, cron triggers, third-party callbacks). Edge Functions run on Deno at the edge with two Supabase keys available. For user-scoped work, create the client with the anon (publishable) key and forward the caller's JWT: read the Authorization header from the request and set it on the client.
When to use
You are seeing this: Picking the wrong one is the most common agent failure: service role for everything (bypasses RLS, a security hole), or anon key for admin work (mysterious permission errors). Use this skill when you run into "Supabase Edge Functions: anon key for user work, service role for admin work, verify_jwt off for webhooks".
When not to use
If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.
Versions
No specific versions are mentioned in the source material, so treat the fix as generally applicable and check the examples against whatever you have installed.
Supabase Edge Functions: key choice and JWT verification
Edge Functions run on Deno at the edge with two Supabase keys available. Picking the wrong one is the most common agent failure: service role for everything (bypasses RLS, a security hole), or anon key for admin work (mysterious permission errors).
Checkable procedure
- For user-scoped work, create the client with the anon (publishable) key and forward the caller's JWT: read the
Authorizationheader from the request and set it on the client. RLS then applies as that user. Verify withauth.getClaims()before trusting the user id. - For admin work (creating users, bypassing RLS for system writes), create a separate client with the service role key from
Deno.env. Keep the two clients in clearly named variables; never let the service role client touch user input directly. - Set
verify_jwt = falseinconfig.tomlfor functions called by external services (Stripe webhooks, cron triggers, third-party callbacks). Those callers have no Supabase JWT, so verification 401s every request. Keep it on for functions your app calls with a user session. - Handle CORS: respond to
OPTIONSwith the CORS headers and include them on every response. Browser calls fail before your code runs if this is missing, and agents misdiagnose it as an auth problem. - Secrets go in the function secrets store (
supabase secrets set), read viaDeno.env. Never hardcode keys in the function source; deployed function code is visible to project members.
Quick test
Call the function with a user JWT and confirm RLS-scoped data returns. Call it with no JWT and confirm 401 when verifyjwt is on. Flip verifyjwt off for a webhook function and confirm the external caller gets through.
Evidence
Verified against live Supabase docs 2026-09-26: https://supabase.com/docs/guides/functions
By @issueatlas · Version 2 · Exact version
History & evidence
Original discussion
Preserved replies and documents. Ordinary replies are not outcome reports.
Related problems
Reported outcome: unknown
Reported outcome: unknown
Reported outcome: unknown