supabase library

A dart client for Supabase. It supports database query, authenticate users and listen for realtime changes. This client makes it simple for developers to build secure and scalable products.

Classes

AdminUserAttributes
AMREntry
An authentication method reference (AMR) entry.
AuthMFAAdminDeleteFactorResponse
AuthMFAAdminListFactorsResponse
AuthMFAChallengeResponse
AuthMFAEnrollResponse
AuthMFAGetAuthenticatorAssuranceLevelResponse
AuthMFAListFactorsResponse
AuthMFAUnenrollResponse
AuthMFAVerifyResponse
AuthResponse
Response which might or might not contain session and/or user
AuthSessionUrlResponse
AuthState
AuthUser
Binding
Bucket
BucketOptions
public The visibility of the bucket. Public buckets don't require an authorization token to download objects, but still require a valid token for all other operations. By default, buckets are private.
ChannelFilter
Factor
FetchOptions
{@template fetch_options} Options for querying Supabase.
FileObject
FileOptions
FunctionInvokeOptions
FunctionResponse
FunctionsClient
GenerateLinkProperties
GenerateLinkResponse
GoTrueAdminApi
GotrueAsyncStorage
Interface to provide async storage to store pkce tokens.
GoTrueClient
API client to interact with gotrue server.
GoTrueMFAApi
OAuthResponse
Response of OAuth signin
PostgresColumn
PostgrestBuilder<T, S>
The base builder class.
PostgrestClient
A PostgREST api client written in Dartlang. The goal of this library is to make an "ORM-like" restful interface.
PostgrestFilterBuilder<T>
PostgrestQueryBuilder<T>
The query builder class provides a convenient interface to creating request queries.
PostgrestResponse<T>
A Postgrest response
PostgrestRpcBuilder
PostgrestTransformBuilder<T>
Presence
PresenceEvents
PresenceOpts
RealtimeChannel
RealtimeChannelConfig
RealtimeClient
RealtimeClientOptions
Options to pass to the RealtimeClient.
RealtimeCloseEvent
Event details for when the connection closed.
RealtimePresence
RemoveSubscriptionResult
ResendResponse
SearchOptions
Session
SignedUploadURLResponse
SignedUrl
SortBy
StorageFileApi
StorageRetryController
SupabaseClient
Creates a Supabase client to interact with your Supabase instance.
SupabaseQueryBuilder
SupabaseStorageClient
TOTPEnrollment
TransformOptions
Specifies the dimensions and the resize mode of the requesting image.
User
UserAttributes
UserIdentity
UserResponse
Response that contains a user

Enums

AMRMethod
AuthChangeEvent
AuthenticatorAssuranceLevels
AuthFlowType
ChannelResponse
CountOption
Returns count as part of the response when specified.
FactorStatus
FactorType
GenerateLinkType
HttpMethod
OtpChannel
Messaging channel to use (e.g. whatsapp or sms)
OtpType
PostgresTypes
Provider
RealtimeListenTypes
RealtimeLogLevel
RequestImageFormat
ResizeMode
Specifies how image cropping should be handled when performing image transformations.
ResponseType
ReturningOption
Returns count as part of the response when specified.
SignOutScope
Determines which sessions should be logged out.
SupabaseEventTypes
TextSearchType
The type of tsquery conversion to use on query.

Constants

METHOD_DELETE → const String
METHOD_GET → const String
METHOD_HEAD → const String
METHOD_PATCH → const String
METHOD_POST → const String
METHOD_PUT → const String

Functions

convertCell(String type, dynamic value) → dynamic
If the value of the cell is null, returns null. Otherwise converts the string value to the correct type.
convertChangeData(List<Map<String, dynamic>> columns, Map<String, dynamic> record, {List<String>? skipTypes}) Map<String, dynamic>
Takes an array of columns and an object of string values then converts each string value to its mapped type.
convertColumn(String columnName, List<PostgresColumn> columns, Map<String, dynamic> record, List<String> skipTypes) → dynamic
Converts the value of an individual column.
noop(dynamic value) → dynamic
toArray(dynamic value, String type) → dynamic
Converts a Postgres Array into a native Dart array
toBoolean(dynamic value) bool?
toDouble(dynamic value) double?
toInt(dynamic value) int?
toJson(dynamic value) → dynamic
toTimestampString(String? value) String?
Fixes timestamp to be ISO-8601. Swaps the space between the date and time for a 'T' See https://github.com/supabase/supabase/issues/18

Typedefs

BindingCallback = void Function(dynamic payload, [dynamic ref])
Headers = Map<String, String>
PostgrestConverter<S, T> = S Function(T data)
PostgrestList = List<PostgrestMap>
PostgrestListResponse = PostgrestResponse<PostgrestList>
PostgrestMap = Map<String, dynamic>
PostgrestMapResponse = PostgrestResponse<PostgrestMap>
PresenceChooser<T> = T Function(String key, dynamic presence)
PresenceOnJoinCallback = void Function(String? key, dynamic currentPresences, dynamic newPresences)
PresenceOnLeaveCallback = void Function(String? key, dynamic currentPresences, dynamic newPresences)
RealtimeDecode = void Function(String payload, void callback(dynamic result))
RealtimeEncode = void Function(dynamic payload, void callback(String result))
WebSocketTransport = WebSocketChannel Function(String url, Map<String, String> headers)