Zaprosite za zgodnji dostop

Vnesite svoje ime in službeni e-poštni naslov. Poslali vam bomo povezavo za potrditev zahteve za dostop do Taja.

Supabase Connector

Stanje konektorja: Načrtovano Še ni izdelano. Tajo danes ne poganja tega konektorja.

Ponazoritev · vzorčni podatki

Primer sinhronizacije

Preglejte en zapis

Vir

Supabase

Stanje konektorja: Načrtovano

Cilj

Vaše drugo orodje

Stanje konektorja: Orodje po meri

Izvorno poljeCiljno poljeVzorčna vrednost
record.id source_id record_1042
record.updated_at updated_at 2026-10-18T08:00:00Z
record.value value sample_value
  1. Osnutek
  2. Preglejte en zapis
  3. Odobrite to različico

Stanja veljajo za posamezne konektorje in ne zagotavljajo, da je ta sinhronizacija pripravljena. Polja so ponazoritvena. Pred zagonom sinhronizacije preverite dejansko shemo in dovoljenja.

Poveži svoj projekt Supabase za sinhronizacijo zapisov baze podatkov, podatkov avtentikacije uporabnikov, dogodkov shranjevanja datotek in sprememb v realnem času za avtomatizacijo angažiranja strank.

Pregled

LastnostVrednost
PlatformaSupabase
KategorijaPodatkovna baza in ozadje
Zahtevnost nastavitveEnostavna
Uradna integracijaNe
Sinhronizirani podatkiUporabniki, tabele, shranjevanje, dogodki
Razpoložljivi Skills11
Vrsta APIREST (PostgREST) + Realtime WebSocket
Uradna dokumentacijasupabase.com/docs

Funkcionalnosti

  • Samodejno ustvarjen REST API, CRUD operacije na kateri koli tabeli Postgres prek PostgREST, brez kode
  • Sinhronizacija uporabnikov Auth, sinhroniziraj uporabnike Supabase Auth (e-mail, telefon, socialne prijave) s platformo za angažiranje
  • Naročnine v realnem času, poslušaj dogodke INSERT, UPDATE, DELETE na kateri koli tabeli v realnem času
  • Varnost na ravni vrstice, ves dostop API spoštuje politike RLS Postgres za varno večnajemniško upravljanje podatkov
  • Integracija shranjevanja, sledi nalaganju datotek in upravljaj sredstva po skupinah Storage
  • Edge Functions, pokliči brezstrežniške funkcije Deno za logiko po meri in webhooks
  • Iskanje po celotnem besedilu, izkoristi zmogljivosti iskanja po celotnem besedilu Postgres prek API

Predpogoji

Preden začneš, se prepričaj, da imaš:

  1. Projekt Supabase (app.supabase.com)
  2. API URL in API ključe projekta (najdeš jih v Settings → API)
  3. Tajo račun z dostopom do API

API ključi

Supabase ponuja dva ključa: anon (javen, spoštuje RLS) in service_role (zaobide RLS, administratorski dostop). Uporabi service_role za integracije na strani strežnika in anon za odjemalčevo stran.

Avtentikacija

Supabase uporablja avtentikacijo z API ključem. Vsak zahtevek zahteva glavo apikey in po izbiri žeton prinosnika Authorization za dostop z obsegom uporabnika.

Terminal window
# Using anon key (respects RLS)
curl 'https://<project_ref>.supabase.co/rest/v1/customers' \
-H "apikey: <SUPABASE_ANON_KEY>" \
-H "Authorization: Bearer <SUPABASE_ANON_KEY>"
# Using service_role key (bypasses RLS)
curl 'https://<project_ref>.supabase.co/rest/v1/customers' \
-H "apikey: <SUPABASE_SERVICE_ROLE_KEY>" \
-H "Authorization: Bearer <SUPABASE_SERVICE_ROLE_KEY>"

Konfiguracija

Osnovna nastavitev

connectors:
supabase:
enabled: true
project_url: "https://xyzcompany.supabase.co"
api_key: "${SUPABASE_SERVICE_ROLE_KEY}"
# Data sync options
sync:
users: true
tables:
- customers
- orders
- products
storage: true
realtime: true
# Map Supabase Auth users to contacts
user_mapping:
email: email
phone: SMS
user_metadata.full_name: FIRSTNAME
created_at: SIGNUP_DATE

Preslikava polj

Preslikaj stolpce tabel Supabase v atribute platforme za angažiranje:

Privzete preslikave uporabnikov

Parameter Type Description
email required
string

E-mail uporabnika iz Supabase Auth (enolični identifikator)

phone optional
string

Telefonska številka za SMS/WhatsApp angažiranje

user_metadata.full_name optional
string

Prikazno ime iz metapodatkov uporabnika Auth

user_metadata.avatar_url optional
string

URL profilne slike

created_at optional
timestamp

Časovni žig ustvaritve računa

last_sign_in_at optional
timestamp

Zadnja prijava za ocenjevanje angažiranosti

app_metadata.provider optional
string

Ponudnik avtentikacije (email, google, github itd.)

confirmed_at optional
timestamp

Časovni žig potrditve e-maila

Preslikava tabel po meri

table_mapping:
customers:
# Column → Attribute mapping
email: email
full_name: FIRSTNAME
company: COMPANY
plan: SUBSCRIPTION_PLAN
mrr: MONTHLY_REVENUE
created_at: SIGNUP_DATE
orders:
# Track as events
sync_as: events
event_name: "order_placed"
properties:
total: amount
status: order_status
items: line_items

Končne točke API

REST API Supabase se samodejno ustvari iz sheme baze podatkov na https://<ref>.supabase.co/rest/v1/.

Končna točkaMetodaOpis
/rest/v1/{table}GETPoizvedba po vrsticah s filtriranjem, urejanjem, paginacijo
/rest/v1/{table}POSTVstavljanje vrstic (podpira množično in upsert)
/rest/v1/{table}PATCHPosodabljanje vrstic, ki ustrezajo filtrom
/rest/v1/{table}DELETEBrisanje vrstic, ki ustrezajo filtrom
/rest/v1/rpc/{function}POSTKlic funkcije Postgres
/auth/v1/signupPOSTUstvarjanje novega uporabnika
/auth/v1/token?grant_type=passwordPOSTPrijava z geslom
/auth/v1/userGETPridobi trenutnega uporabnika
/auth/v1/admin/usersGETSeznam vseh uporabnikov (service_role)
/storage/v1/object/{bucket}/{path}POSTNalaganje datoteke
/storage/v1/object/list/{bucket}POSTSeznam datotek v skupini
/functions/v1/{function_name}POSTKlic Edge Function

Operatorji filtriranja

OperatorOpisPrimer
eqEnako?status=eq.active
neqNi enako?status=neq.deleted
gt, gteVečje kot?amount=gt.100
lt, lteManjše kot?created_at=lt.2024-01-01
like, ilikeVzorčno ujemanje?name=ilike.%john%
inV polju?status=in.(active,trial)
isPreverjanje null?deleted_at=is.null

Dogodki

Dogodki Auth

DogodekSprožilecPrimer uporabe
user.signed_upRegistracija novega uporabnikaPozdravna serija
user.signed_inPrijava uporabnikaSledenje dejavnosti
user.updatedSpremembe profilaSinhronizacija podatkov
user.deletedBrisanje računaČiščenje delovnih tokov

Dogodki baze podatkov (Realtime)

DogodekSprožilecPrimer uporabe
INSERTDodana nova vrsticaObvestila o novih naročilih/strankah
UPDATESpremenjena vrsticaDelovni tokovi spremembe statusa
DELETEOdstranjena vrsticaZaznavanje odliva

Dogodki webhooks

DogodekSprožilecPrimer uporabe
auth.user.createdRegistracija prek webhookovSprožitev uvajanja
storage.object.createdNaložena datotekaObdelava sredstev

Primeri kode

Inicializacija konektorja

import { TajoClient } from '@tajo/sdk';
import { createClient } from '@supabase/supabase-js';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
});
// Connect Supabase project
await tajo.connectors.connect('supabase', {
projectUrl: process.env.SUPABASE_URL,
serviceRoleKey: process.env.SUPABASE_SERVICE_ROLE_KEY,
});

Sinhronizacija uporabnikov v stike

// Sync all Supabase Auth users as contacts
await tajo.connectors.sync('supabase', {
type: 'full',
resources: ['users'],
});
// Incremental sync (new/changed users only)
await tajo.connectors.sync('supabase', {
type: 'incremental',
resources: ['users'],
since: '2024-01-01T00:00:00Z',
});

Poslušanje sprememb v realnem času

// Subscribe to new orders for engagement triggers
const supabase = createClient(
process.env.SUPABASE_URL,
process.env.SUPABASE_SERVICE_ROLE_KEY
);
supabase
.channel('orders')
.on('postgres_changes',
{ event: 'INSERT', schema: 'public', table: 'orders' },
async (payload) => {
// Forward to Tajo as an event
await tajo.events.track({
email: payload.new.customer_email,
event: 'order_placed',
properties: {
order_id: payload.new.id,
total: payload.new.total,
items: payload.new.line_items,
},
});
}
)
.subscribe();

Poizvedba in segmentacija

// Query customers by plan for targeted campaigns
const { data: proUsers } = await supabase
.from('customers')
.select('email, full_name, plan, mrr')
.eq('plan', 'pro')
.gt('mrr', 100)
.order('mrr', { ascending: false });
// Sync to a Brevo list for campaign targeting
await tajo.lists.addContacts(PRO_LIST_ID, proUsers);

Omejitve hitrosti

Omejitve hitrosti API

Omejitve hitrosti Supabase so odvisne od plana. Brezplačni plan: 500 zahtevkov/minuto. Pro: 1.000 zahtevkov/sekundo. Za Enterprise omejitve kontaktiraj Supabase.

PlanOmejitev hitrostiVzporedne povezave Realtime
Free500 zahtevkov/min200 vzporedno
Pro1.000 zahtevkov/s500 vzporedno
Team2.000 zahtevkov/s1.000 vzporedno
EnterprisePo meriPo meri

Odpravljanje težav

Pogoste težave

TežavaVzrokRešitev
401 UnauthorizedNeveljaven ali potekel API ključPreveri API ključe v nadzorni plošči Supabase → Settings → API
403 ForbiddenPolitika RLS blokira dostopUporabi ključ service_role za administratorske operacije ali preveri politike RLS
Brez dogodkov RealtimeRealtime ni omogočen za tabeloOmogoči v Database → Replication → dodaj tabelo v publikacijo
Prazni rezultati poizvedbeRLS filtrira vse vrsticePreveri, ali politike RLS dovoljujejo branje avtenticirani vlogi
Nalaganje v Storage neuspešnoPolitike skupinPreveri, ali je skupino Storage nastavljeno na javno ali ima pravilne politike RLS

Način odpravljanja napak

connectors:
supabase:
debug: true
log_level: verbose
log_queries: true
log_realtime: true

Preizkus povezave

Terminal window
tajo connectors test supabase
# ✓ API connection successful
# ✓ Auth endpoint accessible
# ✓ Tables readable (12 tables found)
# ✓ Storage accessible (3 buckets)
# ✓ Realtime connection established
# ✓ Edge Functions available (4 functions)

Najboljše prakse

  1. Ključ service_role uporablaj samo na strani strežnika, nikoli ga ne izpostavljaj v kodi odjemalca
  2. Omogoči RLS na vseh tabelah, tudi s service_role oblikuj z mislijo na RLS za globinsko obrambo
  3. Za sinhronizacijo na osnovi dogodkov uporabi Realtime, učinkovitejše od anketiranja za spremembe
  4. Paketne operacije, za operacije z velikim obsegom uporabi množična vstavljanja in filter in
  5. Preslikaj metapodatke uporabnika, med registracijo shrani polja, relevantna za angažiranje, v user_metadata
  6. Webhooks obdeluj z Edge Functions, za obdelavo dohodnih webhooks z nizko zakasnitvijo uporabi Supabase Edge Functions

Varnost

  • Avtentikacija z API ključem, vsi zahtevki zahtevajo veljavne API ključe
  • Varnost na ravni vrstice (RLS), nadzor dostopa izvoren za Postgres po vrstici
  • Preverjanje JWT, žetoni Auth so podpisani JWT-ji, preverjeni pri vsakem zahtevku
  • SSL/TLS, vse povezave šifrirane med prenosom
  • SOC 2 Type II, Supabase je certificiran po SOC 2
  • Omejitve omrežja, neobvezno dodajanje IP na seznam dovoljenih na plačljivih planih

Povezani viri

Zaprosite za zgodnji dostop

Vnesite svoje ime in službeni e-poštni naslov. Poslali vam bomo povezavo za potrditev zahteve za dostop do Taja.

AI pomočnik

Živjo! Vprašajte me o dokumentaciji.

Ta stran kot Markdown: supabase.md

Nalaganje Markdowna …
Odpri v Claude Odpri v ChatGPT