An isomorphic Go client for Supabase.
Reminder: supabase-go
has some APIs that require the service_key
rather than the public_key
(for instance: the administration of users, bypassing database roles, etc.). If you are using the service_key
be sure it is not exposed client side. Additionally, if you need to use both a service account and a public/user account, please do so using a separate client instance for each.
First of all, you need to install the library:
go get github.com/supabase-community/supabase-go
Then you can use
client, err := supabase.NewClient(API_URL, API_KEY, &supabase.ClientOptions{})
if err != nil {
fmt.Println("cannot initalize client", err)
}
data, count, err := client.From("countries").Select("*", "exact", false).Execute()
client, err := supabase.NewClient(API_URL, API_KEY, &supabase.ClientOptions{})
if err != nil {
fmt.Println("cannot initalize client", err)
}
client.SignInWithEmailPassword(USER_EMAIL, USER_PASSWORD)