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

AddPartitionSpecificationUpdate
AddSchemaUpdate
AddSortOrderUpdate
AdminUserAttributes
Attributes for AuthAdminApi.createUser and AuthAdminApi.updateUserById.
AnalyticsBucket
A bucket backed by the Apache Iceberg table format, used for structured analytical data storage.
AppMetadata
Metadata the auth server or an admin controls; the signed-in user cannot modify it.
AssertCreate
AssertCurrentSchemaId
AssertDefaultSortOrderId
AssertDefaultSpecificationId
AssertLastAssignedFieldId
AssertLastAssignedPartitionId
AssertReferenceSnapshotId
AssertTableUuid
AssignUuidUpdate
AsyncJsonCodec
Encodes and decodes JSON asynchronously, so that a large payload does not block the calling isolate for long.
AuthAdminApi
Admin API namespace for managing users, exposed on AuthClient.admin.
AuthAdminPasskeyApi
Admin methods for managing the passkeys of users.
AuthAsyncStorage
Key-value storage the auth client keeps its session and pkce code verifiers in.
AuthClient
API client to interact with the Supabase Auth server.
AuthClientOptions
Configuration for the auth client used by SupabaseClient.auth.
AuthenticationMethodReferenceEntry
An authentication method reference (AMR) entry.
AuthInitialSession
The first event every new subscriber of AuthClient.onAuthStateChange receives, with the session at that moment or null if there is none.
AuthMFAAdminDeleteFactorResponse
The response of AuthAdminMFAApi.deleteFactor.
AuthMFAAdminListFactorsResponse
The response of AuthAdminMFAApi.listFactors.
AuthMFAApi
API namespace for managing the signed-in user's MFA factors, exposed on AuthClient.mfa.
AuthMFAChallengeResponse
The response of AuthMFAApi.challenge.
AuthMfaChallengeVerified
Emitted after a multi-factor authentication challenge is verified.
AuthMFAEnrollResponse
The response of AuthMFAApi.enroll.
AuthMFAGetAuthenticatorAssuranceLevelResponse
The response of AuthMFAApi.getAuthenticatorAssuranceLevel.
AuthMFAListFactorsResponse
The response of AuthMFAApi.listFactors.
AuthMFARecoveryCodesApi
API namespace for MFA recovery codes, exposed on AuthClient.mfa.recoveryCodes.
AuthMFARecoveryCodesGenerateResponse
The response of AuthMFARecoveryCodesApi.generate and AuthMFARecoveryCodesApi.regenerate.
AuthMFARecoveryCodesStatusResponse
The response of AuthMFARecoveryCodesApi.getStatus.
AuthMFAUnenrollResponse
The response of AuthMFAApi.unenroll.
AuthMFAVerifyResponse
The response of AuthMFAApi.verify and AuthMFAApi.challengeAndVerify.
AuthOAuthApi
API namespace for the OAuth 2.1 authorization server consent flow.
AuthPasskeyApi
API namespace for passkey (WebAuthn) authentication.
AuthPasswordRecovery
Emitted after the user follows a password recovery link or verifies a recovery code.
AuthResponse
Response of AuthClient.signUp and AuthClient.verifyOTP, the two calls that can complete without issuing a session.
AuthSessionUrlResponse
The response of AuthClient.getSessionFromUrl.
AuthSignedIn
Emitted after a successful sign-in.
AuthSignedOut
Emitted after the user signs out.
AuthState
An event emitted on AuthClient.onAuthStateChange.
AuthTokenRefreshed
Emitted after the access token is refreshed.
AuthUserUpdated
Emitted after the user's profile is updated.
Bucket
A storage bucket.
BucketOptions
Options for StorageBucketApi.createBucket and StorageBucketApi.updateBucket.
ByteStream
A stream of chunks of bytes representing a single piece of data.
CommitTableResult
The result of committing updates to a table.
CreateCustomProviderOptions
Parameters for creating a new custom provider.
CreateOAuthClientOptions
Parameters for creating a new OAuth client. Only relevant when the OAuth 2.1 server is enabled in Supabase Auth.
CreateTableRequest
Request describing a table to create.
CustomOAuthProvider
Custom OAuth/OIDC provider object returned from the admin API.
DecodedJwt
Decoded JWT structure
DownloadBehavior
Controls download behavior for signed and public URLs.
Factor
An MFA factor enrolled by a user.
FileObject
A file or folder entry returned by StorageFileApi.list.
FileObjectV2
A file entry returned by the storage v2 object listing API.
FileOptions
Options for an upload to storage.
FileSort
The column and direction that StorageFileApi.listPaginated sorts its results by.
FileVersion
A specific version of a file, for StorageFileApi.removeVersions.
FunctionResponse
The response of a successful FunctionsClient.invoke call.
FunctionsClient
Client for invoking Supabase Edge Functions.
FunctionsClientOptions
Configuration for the Edge Functions client used by SupabaseClient.functions.
GenerateLinkProperties
The generated link and its associated metadata, part of a GenerateLinkResponse.
GenerateLinkResponse
The response of AuthAdminApi.generateLink.
GetClaimsOptions
Options for getClaims method
GetClaimsResponse
Response from getClaims method
IcebergRestCatalog
Client for the Apache Iceberg REST Catalog exposed by Supabase Storage under an analytics bucket. It manages namespaces and tables within a warehouse (an analytics bucket).
IcebergType
A type in the Iceberg type system. Either a PrimitiveType represented by a type string, or one of the nested types StructType, ListType and MapType.
JWK
JSON Web Key (JWK) representation.
JWKSet
A JSON Web Key Set (JWKS), as published by Supabase Auth's /.well-known/jwks.json endpoint.
JwtHeader
JWT Header structure
JwtPayload
JWT Payload structure with standard claims
JwtRawParts
Raw encoded parts of a JWT
LifecycleRule
A rule of a bucket's lifecycle policy.
ListBucketsOptions
Filter, sort and pagination options for StorageBucketApi.listBuckets.
ListNamespacesOptions
Options for listing namespaces.
ListNamespacesResult
The result of listing namespaces.
ListTablesOptions
Options for listing tables.
ListTablesResult
The result of listing tables in a namespace.
ListType
A list type whose elements are of type element.
ListUsersResponse
Response of AuthAdminApi.listUsers, a page of users together with the pagination metadata the server reports for it.
LoadTableOptions
Options for loading a table.
LoadTableResult
The full result of loading, creating or registering a table, including the server provided configuration, vended storage credentials and the response ETag.
MapType
A map type with keys of type key and values of type value.
MemoryAuthAsyncStorage
An AuthAsyncStorage that keeps everything in memory only.
MultipartFile
A file to be uploaded as part of a MultipartRequest.
NoncurrentVersionExpiration
When the previous versions of an object expire.
OAuthAuthorizationDetailsResponse
Response type representing the details of a pending OAuth authorization request that still requires the user's consent.
OAuthAuthorizationRedirectResponse
Response type returned when the signed-in user has already granted consent to the requesting client.
OAuthAuthorizationResponse
Result returned by AuthOAuthApi.getAuthorizationDetails.
OAuthAuthorizedClient
OAuth client object returned from the OAuth 2.1 server when the client is authorized.
OAuthAuthorizingUser
The signed-in user a pending OAuth authorization request belongs to.
OAuthClient
OAuth client object returned from the OAuth 2.1 server. Only relevant when the OAuth 2.1 server is enabled in Supabase Auth.
OAuthConsentResponse
Response type for an OAuth authorization consent decision (approve or deny).
OAuthGrant
An OAuth grant representing a user's authorization of an OAuth client.
OAuthProvider
An OAuth provider identifier.
OAuthResponse
Response of OAuth signin
OIDCDiscoveryDocument
OIDC discovery document fields.
PaginatedFile
A file entry returned by StorageFileApi.listPaginated.
PaginatedFolder
A folder entry returned by StorageFileApi.listPaginated when using a delimiter.
PaginatedListResult
The result of StorageFileApi.listPaginated.
PaginatedSearchOptions
Options for StorageFileApi.listPaginated.
PartitionField
A single field of a PartitionSpecification.
PartitionSpecification
Describes how a table is partitioned.
Passkey
A passkey (WebAuthn credential) registered to a user.
PasskeyAuthenticationOptionsResponse
Response containing the options needed to sign in with a passkey.
PasskeyRegistrationOptionsResponse
Response containing the options needed to register a new passkey.
PhoneEnrollment
Phone enrollment information returned by AuthMFAApi.enroll.
PostgresChangeFilter
Creates a filter for realtime postgres change listener.
PostgresChangePayload
Data class that contains the Postgres change event payload.
PostgresColumn
A PostgreSQL column description used to convert a change payload's raw string values to their Dart-typed form.
PostgrestBuilder<T>
An executable PostgREST request that resolves to T when awaited.
PostgrestByteaCodec
Converts between the bytes of a bytea column and the text PostgREST carries them as.
PostgrestCastTarget<Value extends Object>
A Postgres type to cast to, paired with the Dart type that cast produces so the two cannot disagree.
PostgrestClient
A PostgREST api client written in Dartlang. The goal of this library is to make an "ORM-like" restful interface.
PostgrestClientOptions
Configuration for the PostgREST client used by SupabaseClient.from and SupabaseClient.rpc.
PostgrestColumn<Row, Value extends Object>
A stored NOT NULL column, see PostgrestStoredColumn.
PostgrestColumnExpression<Row, Value extends Object>
A single value of the row in a select list: a stored column, or an expression derived from one.
PostgrestComparison<Row>
One operator applied to one column, the shape a consumer that cannot apply a whole tree, such as a realtime stream, reads through PostgrestFilter.comparison.
PostgrestDate
A calendar date without a time of day or a timezone, the value of a Postgres date column.
PostgrestDerivedExpression<Row, Value extends Object>
A cast or an aggregate applied to another expression, or countAll: select position only, whatever it was applied to.
PostgrestEmbed<Row, Target>
An embedded relation selected as a whole into the parent's select list: some entries of the embedded table, or every column of it.
PostgrestEmbeddedPage
A limit or range applied to an embedded relation rather than to the table itself.
PostgrestExplainOptions
The options of a PostgrestResultShape.explain request, see PostgrestTransformBuilder.explain.
PostgrestFilter<Row>
A filter on the rows of a table, built from the operator methods on a PostgrestFilterableExpression and composed with &, | and not:
PostgrestFilterBuilder<T>
A builder for applying filters to a query.
PostgrestHttpTableExecutor
The executor that sends a request to PostgREST.
PostgrestInterval
A Postgres interval: a span of months, days and microseconds kept apart, the way Postgres stores it.
PostgrestJsonPath<Row, Value extends Object>
A JSON path read from a stored column, at every position the column is.
PostgrestNullableColumn<Row, Value extends Object>
A stored column the database allows to be NULL, see PostgrestStoredColumn.
PostgrestNullableVectorColumn<Row>
A stored pgvector vector or halfvec column the database allows to be NULL, see PostgrestVectorColumn.
PostgrestOrdering<Row>
One sort key for PostgrestTypedTransformBuilder.order: a column expression, optionally with a direction and a null placement.
PostgrestPartialRow<Row>
A row of a select list, as returned by PostgrestTypedQueryBuilder.selectOnly and PostgrestTypedTransformBuilder.selectOnly.
PostgrestQueryBuilder
The query builder class provides a convenient interface to creating request queries.
PostgrestRange<Bound extends Object>
A Postgres range value, such as an int4range or a tstzrange, with bounds of type Bound.
PostgrestReadable<Row, Output>
Something a value can be read for from a PostgrestPartialRow of Row: a stored column, a derived expression, or a relation.
PostgrestRelation<Row, Target>
A foreign key seen from the table whose rows are Row, pointing at the table whose rows are Target.
PostgrestResponse<T>
A Postgrest response
PostgrestRpcBuilder
Builds a stored procedure call.
PostgrestSelectable<Row>
Anything that can appear in a select list.
PostgrestStoredColumn<Row, Value extends Object>
A stored column of the table whose rows are Row: a PostgrestColumn when the database forbids NULL, a PostgrestNullableColumn when it allows it.
PostgrestTable<Row, Insert, Update>
Describes a database table (or view) together with the Dart types its rows are read as and written with.
PostgrestTableExecutor
Runs the requests of the typed table API.
PostgrestTableRequest
Everything a typed table builder has collected, ready to be run by a PostgrestTableExecutor.
PostgrestTableResult
What a PostgrestTableExecutor produced for a PostgrestTableRequest.
PostgrestTime
A time of day, the value of a Postgres time column, or with an offset the value of a timetz column.
PostgrestToManyColumn<Row, Value extends Object>
A column of a to-many embedded relation, seen from the parent.
PostgrestToManyEmbed<Row, Target>
A to-many relation selected as a whole, books(id,title).
PostgrestToManyRelation<Row, Target>
A to-many embedded relation (one-to-many or many-to-many) of the table whose rows are Row, pointing at the table whose rows are Target.
PostgrestToOneColumn<Row, Value extends Object>
A column of a to-one embedded relation, seen from the parent.
PostgrestToOneEmbed<Row, Target>
A to-one relation selected as a whole, author(id,name).
PostgrestToOneRelation<Row, Target>
A to-one embedded relation (many-to-one or one-to-one) of the table whose rows are Row, pointing at the table whose rows are Target.
PostgrestTransformBuilder<T>
A builder for shaping the result of a query, such as ordering or limiting it.
PostgrestTypedBuilder<T>
A typed PostgREST request that can be awaited.
PostgrestTypedFilterBuilder<Row, T>
The typed counterpart of PostgrestFilterBuilder.
PostgrestTypedQueryBuilder<Row, Insert, Update>
The typed counterpart of PostgrestQueryBuilder, returned by PostgrestClient.table.
PostgrestTypedTransformBuilder<Row, T>
The typed counterpart of PostgrestTransformBuilder.
PostgrestVectorCodec
Converts between the elements of a pgvector vector or halfvec column and the text PostgREST carries them as.
PostgrestVectorColumn<Row>
A stored NOT NULL pgvector vector or halfvec column of the table whose rows are Row.
Presence
A single shared state between users with Realtime Presence.
PrimitiveType
A primitive Iceberg type such as int, string, decimal(10,2) or fixed[16].
RawTableUpdate
RealtimeChannel
A subscription to a Realtime topic, created with RealtimeClient.channel.
RealtimeChannelConfig
Configuration for a RealtimeChannel's broadcast, presence, and RLS behavior.
RealtimeClient
Manages a persistent WebSocket connection to the Supabase Realtime server.
RealtimeClientOptions
Options to pass to the RealtimeClient.
RealtimeCloseEvent
Event details for when the connection closed.
RealtimeConnectionStatusChange
A connection status change emitted by RealtimeClient.onStatusChange.
RealtimeConstants
Default values used by RealtimeClient.
RealtimeMessage
A message as it travels over the Realtime WebSocket connection.
RealtimePresenceJoinPayload
Payload for PresenceEvent.join callback.
RealtimePresenceLeavePayload
Payload for PresenceEvent.leave callback.
RealtimePresencePayload
Base class for the payloads emitted by the presence streams.
RealtimePresenceSyncPayload
Payload for PresenceEvent.sync callback.
RealtimeSubscribeStatusChange
A subscription status change emitted by RealtimeChannel.onStatusChange.
RealtimeSystemPayload
Payload of a system event emitted by the server.
RegisterTableRequest
Request to register an existing metadata file as a table.
RemovePartitionSpecificationsUpdate
RemovePropertiesUpdate
RemoveSchemasUpdate
RemoveSnapshotReferenceUpdate
RemoveSnapshotsUpdate
ReplayOption
Configuration for broadcast replay feature. Allows replaying broadcast messages from a specific timestamp.
ResendResponse
The response of AuthClient.resend.
SearchOptions
Options for StorageFileApi.list.
Session
A signed-in user's authentication tokens.
SetCurrentSchemaUpdate
SetDefaultSortOrderUpdate
SetDefaultSpecificationUpdate
SetLocationUpdate
SetPropertiesUpdate
SetSnapshotReferenceUpdate
SignedUploadURLResponse
The response of StorageFileApi.createSignedUploadUrl.
SignedUrl
A signed URL for downloading a private object.
SignedUrlFailure
A failed SignedUrlResult: the path could not be signed (e.g. the file does not exist).
SignedUrlResult
Represents a per-item result from StorageFileApi.createSignedUrls.
SignedUrlSuccess
A successful SignedUrlResult: the file was found and a signed URL was generated.
SinglePresenceState
A single client connected through presence.
Snapshot
A snapshot of a table at a point in time.
SnapshotReference
A reference (branch or tag) pointing at a snapshot.
SortBy
The column and direction that StorageFileApi.list sorts its results by.
SortField
A single field of a SortOrder.
SortOrder
Describes how a table is sorted when written.
StorageClientOptions
Configuration for the storage client used by SupabaseClient.storage.
StorageCredential
Temporary storage credentials vended by the server for a table path prefix.
StorageFileApi
API namespace for managing the objects within a bucket, obtained with SupabaseStorageClient.from.
StorageVectorBucketApi
Index operations scoped to a single vector bucket.
StorageVectorIndexApi
Vector data operations scoped to a single index within a bucket.
StructType
A nested struct type containing fields.
SupabaseClient
Creates a Supabase client to interact with your Supabase instance.
SupabaseClientPlugin
Extends a SupabaseClient from the outside, without changing how the application calls it.
SupabaseQueryBuilder
A PostgrestQueryBuilder that can also stream a table's rows over Realtime with stream.
SupabaseQuerySchema
Used to perform rpc and from operations with a different schema than in SupabaseClient.
SupabaseRetryOptions
Configures how a client retries a request that failed in a way that is worth repeating.
SupabaseStorageClient
Client for Supabase Storage, exposed on SupabaseClient.storage.
SupabaseStreamBuilder
A stream of a table's rows kept up to date over Realtime, created with SupabaseQueryBuilder.stream.
SupabaseStreamFilterBuilder
A SupabaseStreamBuilder that can also filter which rows are streamed, created with SupabaseQueryBuilder.stream.
SupabaseTypedQueryBuilder<Row, Insert, Update>
The typed counterpart of SupabaseQueryBuilder, returned by SupabaseClient.table.
SupabaseTypedStreamBuilder<Row>
The typed counterpart of SupabaseStreamBuilder; emits the rows of the table converted into Row through PostgrestTable.rowFromJson.
SupabaseTypedStreamFilterBuilder<Row>
A SupabaseTypedStreamBuilder that can still be filtered with filter.
SupabaseVectorsClient
Client for the Storage Vectors API, reachable through supabase.storage.vectors.
TableField
A field within a StructType or a TableSchema.
TableIdentifier
Identifies a table by its namespace and name.
TableMetadata
Metadata describing the current state of a table, returned when loading or committing to a table.
TableRequirement
A precondition that must hold for a table commit to be applied. The server rejects the commit if any requirement is not met.
TableSchema
The schema of a table, a struct of fields.
TableUpdate
A single change applied to a table as part of a commit. The common data definition updates are modelled as dedicated subclasses. Updates that are not modelled (for example snapshot, statistics and encryption key updates) can be sent with TableUpdate.raw.
TOTPEnrollment
TOTP enrollment information returned by AuthMFAApi.enroll.
TraceContext
W3C trace context headers.
TracePropagationOptions
Options controlling W3C trace context propagation onto outgoing Supabase requests.
TransformOptions
Specifies the dimensions and the resize mode of the requesting image.
UpdateCustomProviderOptions
Parameters for updating an existing custom provider.
UpdateNamespacePropertiesResult
The result of a namespace properties update.
UpdateOAuthClientOptions
Parameters for updating an existing OAuth client. Only relevant when the OAuth 2.1 server is enabled in Supabase Auth.
UpgradeFormatVersionUpdate
UploadResponse
Response of an upload or update operation, describing where the object was stored.
User
A user account in Supabase Auth.
UserAttributes
Attributes for AuthClient.updateUser.
UserIdentity
A third-party identity linked to a User.
UserResponse
Response that contains a user
Vector
A single vector to insert or update through StorageVectorIndexApi.putVectors.
VectorBucket
Metadata describing a vector bucket.
VectorBucketEncryption
Encryption settings attached to a vector bucket.
VectorBucketList
The result of SupabaseVectorsClient.listBuckets.
VectorIndex
Metadata describing a vector index within a bucket.
VectorIndexList
The result of StorageVectorBucketApi.listIndexes.
VectorList
The result of StorageVectorIndexApi.listVectors.
VectorMatch
A vector returned from a get, list or query operation.
VectorQueryResult
The result of StorageVectorIndexApi.queryVectors.

Enums

AccessDelegation
Access delegation mechanisms that can be requested from the server for table read and write operations.
AuthChangeEvent
The kind of change reported on AuthClient.onAuthStateChange.
AuthenticationMethodReference
A method used to verify a user's identity, reported in an AuthenticationMethodReferenceEntry.
AuthenticatorAssuranceLevel
How strongly a session's identity has been verified.
AuthFlowType
The OAuth flow used for sign-in, sign-up, and password recovery.
BucketSortColumn
The column that StorageBucketApi.listBuckets can sort its results by.
ChannelResponse
The result of sending a message on a RealtimeChannel, such as a broadcast.
CountOption
Returns count as part of the response when specified.
CustomProviderType
Type of a custom OAuth/OIDC provider managed through the admin API.
DistanceMetric
Distance metric used when comparing vectors during a similarity search.
ErrorCode
A machine-readable identifier for an AuthApiException, returned by the Supabase Auth server as the error_code field.
ExplainFormat
The format of the plan returned by PostgrestTransformBuilder.explain.
FactorStatus
Whether an MFA Factor can be used to satisfy a challenge.
FactorType
The kind of second factor an MFA Factor uses.
FileSortColumn
The column that StorageFileApi.listPaginated can sort its results by.
GenerateLinkType
The kind of link AuthAdminApi.generateLink generates.
HttpMethod
An HTTP request method.
LifecycleRuleStatus
Whether a LifecycleRule runs.
ListInclusion
Whether a listing includes entries that are not current objects, such as noncurrent versions or delete markers.
NullOrder
Where null values are ordered relative to non null values in a SortField.
OAuthClientGrantType
OAuth client grant types supported by the OAuth 2.1 server. Only relevant when the OAuth 2.1 server is enabled in Supabase Auth.
OAuthClientRegistrationType
OAuth client registration type. Only relevant when the OAuth 2.1 server is enabled in Supabase Auth.
OAuthClientResponseType
OAuth client response types supported by the OAuth 2.1 server. Only relevant when the OAuth 2.1 server is enabled in Supabase Auth.
OAuthClientType
OAuth client type indicating whether the client can keep credentials confidential. Only relevant when the OAuth 2.1 server is enabled in Supabase Auth.
OtpChannel
Messaging channel to use (e.g. whatsapp or sms)
OtpType
The kind of one-time password AuthClient.verifyOTP verifies.
PostgresChangeEvent
The kind of Postgres change a PostgresChangeFilter listens for.
PostgresChangeFilterType
Specifies the type of filter to be applied on realtime Postgres Change listener.
PostgrestFilterOperator
A PostgREST filter operator and the token it is sent as.
PostgrestResultShape
The form a PostgrestTableRequest asks its result back in.
PostgrestTableOperation
The database operation a PostgrestTableRequest performs.
PostgresType
A PostgreSQL column type, as sent in the type field of a column description.
PresenceEvent
The kind of change a presence callback is reporting.
RealtimeConnectionStatus
The status of the WebSocket connection reported by RealtimeClient.onStatusChange.
RealtimeHeartbeatStatus
The lifecycle status of a heartbeat reported to RealtimeClient.onHeartbeat.
RealtimeLogLevel
The verbosity of logging the Realtime server does for a connection, sent as the log_level connection parameter.
RealtimeProtocolVersion
The wire protocol version negotiated with the Realtime server.
RealtimeSubscribeStatus
The status of a RealtimeChannel.subscribe call.
RequestImageFormat
The image format StorageFileApi.createSignedUrl and friends request a transformed image in.
ResizeMode
Specifies how image cropping should be handled when performing image transformations.
SignOutReason
The reason why an AuthChangeEvent.signedOut event was emitted.
SignOutScope
Determines which sessions should be logged out.
SnapshotReferenceType
The kind of reference a SnapshotReference points to.
SocketState
The connection state of a RealtimeClient's underlying socket.
SortDirection
The direction that a sorted result set is ordered in.
TableSnapshotScope
Which snapshots the server should include when loading a table.
TextSearchType
The type of tsquery conversion to use on query.
VectorDataType
Supported data types for vector components.
VersioningStatus
Whether a bucket keeps previous versions of its objects.
Web3Chain
The blockchain used to sign in with a Web3 wallet.

Mixins

PostgrestFilterableExpression<Row, Value extends Object>
A column expression that can also sit on the left of a filter operator.
PostgrestNullableExpression<Row, Value extends Object>
A filterable expression whose value the database allows to be NULL, which is what makes isNull available.
PostgrestOrderableExpression<Row, Value extends Object>
A column expression that can be used as an order key.
SupabaseApiException
Mixed into the exceptions that report a response from a Supabase service.

Extensions

PostgrestArrayFilters on PostgrestFilterableExpression<Row, List<Element>>
Filters that only apply to array columns.
PostgrestBooleanFilters on PostgrestFilterableExpression<Row, bool>
IS checks that only apply to boolean columns.
PostgrestRangeFilters on PostgrestFilterableExpression<Row, PostgrestRange<Bound>>
Filters that only apply to range columns, typed PostgrestRange<Bound>.
PostgrestTextFilters on PostgrestFilterableExpression<Row, String>
Filters that only apply to text columns.
PostgrestTypedRowsBuilder on PostgrestTypedTransformBuilder<Row, List<Element>>
The single-row shapes of a builder that resolves to a list of rows, the full Row of a select() or the PostgrestPartialRow of a selectOnly.

Constants

postgrestBytea → const PostgrestByteaCodec
The bytea codec, see PostgrestByteaCodec.
postgrestVector → const PostgrestVectorCodec
The pgvector codec, see PostgrestVectorCodec.

Functions

decodeJwt(String token) → DecodedJwt
Decodes a JWT token without performing validation
defaultPersistSessionKey(String supabaseUrl) → String
The key the user session is persisted under for the project at supabaseUrl.
validateExpiration(int? expiresAt) → void
Validates the expiration time of a JWT

Typedefs

BroadcastChannel = ({void Function() close, Stream<Map<String, dynamic>> onMessage, void Function(Map) postMessage})
A cross-tab broadcast channel used to propagate auth state changes between browser tabs on web.
Headers = Map<String, String>
HTTP request or response headers.
PostgrestConverter<S, T> = S Function(T data)
Converts a decoded response body to the value a query resolves to.
PostgrestList = List<PostgrestMap>
A list of rows, as decoded from a JSON array response body.
PostgrestListResponse = PostgrestResponse<PostgrestList>
A PostgrestResponse whose data is a PostgrestList.
PostgrestMap = Map<String, dynamic>
A single row, as decoded from a JSON object response body.
PostgrestMapResponse = PostgrestResponse<PostgrestMap>
A PostgrestResponse whose data is a PostgrestMap.
RealtimeDecode = Future<RealtimeMessage> Function(Object frame)
Deserializes a raw incoming WebSocket frame (String or binary) into a message.
RealtimeEncode = Future<Object> Function(RealtimeMessage message)
Serializes an outgoing message into the String or binary frame written to the WebSocket.
RowConverter<Row> = Row Function(Map<String, dynamic> json)
Converts a single decoded PostgREST row into Row.
SupabaseStreamEvent = List<Map<String, dynamic>>
A snapshot of the rows a SupabaseStreamBuilder stream emits.
TimerCalculation = Duration Function(int tries)
Returns the delay before the next retry, given the number of tries so far.
TraceContextProvider = FutureOr<TraceContext?> Function()
Supplies the current W3C trace context for outgoing Supabase requests.
WebSocketTransport = WebSocketChannel Function(String url, Map<String, String> headers)
Opens the WebSocket connection used by a RealtimeClient.

Exceptions / Errors

AuthApiException
Thrown when the auth service answered with an error.
AuthException
Thrown when an auth operation fails.
AuthInvalidJwtException
Thrown when a JWT could not be parsed or verified, for example by AuthClient.getClaims.
AuthPKCEGrantCodeExchangeError
Thrown when a PKCE flow deep link is missing the code query parameter needed to exchange it for a session.
AuthRetryableApiException
Thrown when the auth service answered with a 5xx status, which is worth retrying.
AuthRetryableFetchException
Thrown when a request never reached the auth service, for example on a network failure, and is worth retrying.
AuthSessionMissingException
Thrown when required session data is unavailable, such as when no session is active or a required access or refresh token is empty.
AuthUnknownException
Thrown when a response could not be interpreted as an auth error, either because it carried no body or because the body was not JSON.
AuthWeakPasswordException
Thrown when a password fails the project's strength requirements.
FunctionException
Thrown when invoking an Edge Function fails.
FunctionsApiException
Thrown when the Edge Function responded with a non-2xx status code.
FunctionsFetchException
Thrown when the request to the Edge Function could not be sent, for example because of a network or transport failure.
FunctionsRelayException
Thrown when the Supabase relay returns an error while invoking the Edge Function, indicated by the x-relay-error response header.
IcebergApiException
The Iceberg REST Catalog API answered with an error response.
IcebergAuthenticationTimeoutException
Authentication timed out and the request should be retried with fresh credentials (HTTP 419).
IcebergCommitStateUnknownException
A table commit was sent but its outcome is unknown, so retrying it could duplicate data.
IcebergConflictException
The request conflicts with the current state, for example the resource already exists or a commit lost a race (HTTP 409).
IcebergException
Error thrown by IcebergRestCatalog operations when the Iceberg REST Catalog API returns an error response or a request fails at the network level.
IcebergNetworkException
A request failed at the network level, before any response was received.
IcebergNotFoundException
The requested namespace or table does not exist (HTTP 404).
IcebergServerException
The server failed to handle the request (HTTP 5xx).
IcebergUnknownException
Any Iceberg failure that does not fit a more specific subtype.
PostgrestApiException
Thrown when PostgREST answered with an error.
RealtimeSubscribeException
Delivered to the stream's error handler when the underlying Realtime channel fails to subscribe.
RequestAbortedException
Thrown when an HTTP request is aborted.
StorageApiException
Thrown when storage answered with an error.
StorageException
Thrown when a storage operation fails.
SupabaseException
Base class for the exceptions thrown by the Supabase client packages.