Sari la conținut

n8n

Pachetul n8n-nodes-basedb adaugă trei noduri la n8n:

NodRol
basedbcitește și scrie rândurile unui tabel, comentează un rând; poate fi folosit ca instrument de un agent AI din n8n
basedb Triggerlansează un flux de lucru pentru fiecare rând creat — sau creat sau modificat — de la ultima verificare
basedb Webhook Triggerlansează un flux de lucru chiar în momentul în care un rând este creat, modificat sau șters

În n8n: Settings › Community Nodes › Install, apoi n8n-nodes-basedb.

Fără interfață — mod coadă de așteptare, imagine Docker montată în avans — : npm install n8n-nodes-basedb în dosarul ~/.n8n/nodes, apoi reporniți n8n.

Creați în n8n o dată de conectare basedb API:

CâmpValoare
Instance URLadresa la care deschideți basedb: https://basedb.exemple.fr
Workspacereferința spațiului de lucru, cea din adresele API-ului (/api/v1/<spațiu>/…): t4z56fq, cu excepția cazului în care instanța fixează BASEDB_TENANT
Tokenun token de integrare: meniul ⋯ al bazei → API și agenți → Tokenuri API și MCP…
Environmentopțional: mediul bazei în care se lucrează — recette, production… Gol: producția

Un token deschide o singură bază — toate mediile sale, sau doar unul dacă a fost limitat la crearea sa. Citește rândurile ei, le scrie dacă a fost creat cu drept de scriere, și nu are niciodată mai multe permisiuni decât persoana care l-a creat. La salvare, n8n încearcă conexiunea și spune dacă tokenul este refuzat.

Pentru a lucra pe producție și pe testare, creați două date de conectare cu același token, una cu Environment gol, cealaltă cu recette. Fără un mediu ales, lista bazelor nodului arată fiecare mediu, cu numele său între paranteze.

OperațieCe face
Row › Createadaugă un rând
Row › Create or Updatemodifică rândul ale cărui câmpuri alese au aceste valori, sau îl adaugă dacă niciunul nu le are
Row › Getcitește un rând după _id-ul său
Row › Get Manycitește rândurile unui filtru, în ordinea cerută, până la o limită sau pe toate, pagină după pagină
Row › Updatemodifică un rând, găsit după _id-ul său sau după alte câmpuri
Comment › Createcomentează un rând; o @mențiune anunță persoana

Baza și tabelul se aleg din liste, cele pe care tokenul le deschide. Câmpurile de scris se afișează cu numele lor din basedb, o selecție unică cu opțiunile ei, un câmp Persoană cu membrii spațiului; un câmp calculat — formulă, căutare, agregare, număr automat — nu figurează, întrucât basedb îl scrie el însuși. O valoare pe care câmpul o refuză oprește nodul pe codul basedb și ce înseamnă el.

  • Filtrul și sortarea folosesc numele tehnice ale câmpurilor, cele din SQL: statut eq "gagne" and montant gte 10000, -montant,nom. Gramatica este cea a API-ului REST.
  • Numerele ajung ca text decimal ("1250.50"), pentru a nu pierde nicio cifră; opțiunea Numbers as Numbers le transformă în numere.
  • O relație se citește { "id": …, "display": … } și se scrie prin _id-ul rândului legat.
  • Create or Update nu modifică niciodată mai multe rânduri: dacă mai multe au aceste valori, nodul se oprește în loc să ghicească.
  • Fără operația Delete: pentru a retrage rânduri, marcați-le (un statut „Arhivat”), confiați ștergerea unei automatizări, sau apelați API-ul REST cu un token creat pentru ștergere.

Nodul cere de la basedb, în ritmul ales (la fiecare minut, la fiecare oră…), rândurile create — sau create sau modificate — de la ultima dată, un filtru în plus dacă este nevoie. Funcționează oriunde, chiar și atunci când basedb nu poate contacta n8n. La prima sa verificare, notează în ce stadiu este tabelul și nu emite nimic; o încercare din editor returnează ultimul rând, pentru a avea de ce lega nodurile următoare.

Chiar în acel moment: basedb Webhook Trigger

Section titled “Chiar în acel moment: basedb Webhook Trigger”

Fiecare rând creat, modificat sau șters — chiar și prin SQL scris direct în PostgreSQL — lansează imediat fluxul de lucru:

  1. Adăugați nodul și copiați Production URL-ul său.
  2. În basedb, meniul ⋯ al bazei → API și agenți → Webhookuri…: creați un webhook către această adresă, alegeți tabelele și evenimentele lui.
  3. basedb afișează o singură dată secretul de semnătură: puneți-l într-o dată de conectare basedb Webhook din n8n.
  4. Activați fluxul de lucru.

Fiecare eveniment devine un element: type-ul său (record.created, record.updated, record.deleted), tabelul, rândul înainte și după, și câmpurile schimbate (changed). Nodul verifică semnătura fiecărei livrări și răspunde 401 celei care nu are una, care are una falsă, sau care este mai veche de cinci minute. basedb livrează cel puțin o dată: eliminați duplicatele după id-ul evenimentului dacă fluxul de lucru nu trebuie să îl trateze de două ori.

Nodul HTTP Request al n8n vorbește și el cu basedb: antet Authorization: Bearer <jeton>, JSON la trimitere și la primire, paginare prin meta.next_cursor transmis ca after ({{ $response.body.meta.next_cursor }}), și repornire după o pană printr-un filtru pe _updated_at și prin …/<table>/deleted?since=.

basedb este software liber dezvoltat de Eodia, un studio de software AI-nativ.