Salt la conținutul principal

Despre acțiuni

Acțiunile definesc ce se întâmplă după declanșarea unui trigger. Puteți înlănțui mai multe acțiuni pentru a construi automatizări complexe.
  • Folosiți selectorul de variabile (faceți clic pe pictograma (x+)) pentru a răsfoi datele disponibile din pașii anteriori
  • Plasați cursorul peste orice câmp de intrare pentru a vedea din care pas provine o variabilă — util atunci când același câmp (de ex., ID) există în mai mulți pași anteriori
  • Dați fiecărei acțiuni un nume descriptiv pentru o mentenanță mai ușoară

Acțiuni asupra înregistrărilor

Creează înregistrare

Adaugă o nouă înregistrare la un obiect selectat. Configurare:
  • Selectați obiectul țintă
  • Completați câmpurile obligatorii și opționale
  • Folosiți date din pașii anteriori sau introduceți manual valori pentru a completa câmpurile
Output: Datele noii înregistrări create sunt disponibile pentru utilizare în pașii următori.

Actualizați Înregistrarea

Modifică o înregistrare existentă într-un obiect selectat. Configurare:
  • Selectați obiectul țintă
  • Alegeți înregistrarea specifică de actualizat.
    • Puteți alege fie o înregistrare specifică, folosind meniul derulant care afișează toate înregistrările disponibile.
    • Sau puteți selecta dinamic înregistrarea, desemnând o înregistrare găsită într-un pas anterior, folosind (x+). Nu puteți căuta înregistrarea pe baza unor criterii diferite în această etapă. Dacă încă nu ați identificat înregistrarea, adăugați un pas Search Record înaintea acestui pas Update Record.
  • Selectați câmpurile de modificat și introduceți valori noi
Output: Datele înregistrării actualizate sunt disponibile pentru utilizare în pașii următori.

Ștergeți Înregistrarea

Îndepărtează o înregistrare dintr-un obiect selectat. Configurare:
  • Selectați obiectul țintă
  • Alegeți înregistrarea specifică de șters
Output: Datele înregistrării șterse rămân disponibile pentru utilizare în pașii următori.

Căutați Înregistrări

Găsește înregistrări într-un obiect selectat folosind condițiile de filtrare. Configurare:
  • Selectați obiectul de căutat
  • Setați criterii de filtrare pentru a restrânge rezultatele
  • Configurați ordonarea și limitele
Output: Returnează înregistrările care se potrivesc care pot fi utilizate în pașii următori.
Limită: Search Records returnează maximum 200 de înregistrări. Dacă aveți nevoie să procesați mai multe, adăugați filtre specifice pentru a reduce rezultatele sau folosiți fluxuri de lucru programate pentru a procesa în loturi.
Cea mai bună practică: Utilizați ramuri după Search Records pentru a gestiona scenariile “găsit” vs “ne-găsit”.

Upsert Record

Creează o înregistrare nouă sau actualizează una existentă pe baza criteriilor de potrivire. Este util când nu sunteți sigur dacă o înregistrare există deja. Configurare:
  • Selectați obiectul țintă
  • Rețineți ce câmpuri pot fi folosite pentru potrivire: email pentru Persoane, domeniu pentru Companii, ID pentru orice obiect sau orice câmp marcat ca Unique. Va trebui să completați cel puțin unul dintre acestea mai jos.
  • Completați valorile câmpurilor. Nu uitați să completați cel puțin unul dintre identificatorii unici.
Potrivirea funcționează de obicei și mai bine când adăugați un singur identificator unic. De exemplu, captura de ecran de mai jos va potrivi companiile pe baza domeniului lor. ID-ul nu este neapărat necesar.
  • Folosiți datele din pașii anteriori pentru a completa câmpurile
Cum funcționează:
  1. Caută o înregistrare care corespunde condițiilor specificate
  2. Dacă este găsită → actualizează înregistrarea existentă
  3. Dacă nu este găsită → creează o înregistrare nouă
Output: Datele înregistrării create sau actualizate sunt disponibile pentru utilizare în pașii următori.

Selectare înregistrare.

Selectează o singură înregistrare dintr-o listă de candidați, folosind o strategie de distribuire. Util pentru atribuirea unui client potențial primit unui reprezentant sau pentru distribuirea înregistrărilor între un set de proprietari. Configurare:
  • Selectați înregistrările candidate în câmpul Selectează din
Selectează din acceptă numai un set static de înregistrări selectate manual; nu puteți transmite o variabilă, cum ar fi rezultatul unui pas Search Records.
  • Alegeți o strategie:
  • Pentru Distribuire echilibrată, selectați obiectul și câmpul utilizate pentru a număra încărcarea existentă pentru fiecare candidat
Distribuirea echilibrată numără fiecare înregistrare asociată din acel câmp, indiferent de stare, de exemplu toate oportunitățile asociate unui reprezentant, nu doar pe cele deschise.
Output: Înregistrarea selectată este disponibilă pentru utilizare în pașii următori.

Acțiuni de flux

Iterator

Parcurge un array de înregistrări returnat de un pas anterior, permițându-vă să efectuați acțiuni pe fiecare înregistrare individual. Configurare:
  • Selectați array de înregistrări dintr-un pas anterior (de exemplu, rezultate din Căutare Records, dintr-un declanșator manual cu disponibilitate în grup, dintr-un nod Cod). Când un pas de tip Cod sau funcție logică returnează un array de nivel superior, selectează opțiunea Whole list pentru a itera peste întregul rezultat.
  • Definiți acțiunile de efectuat pe fiecare înregistrare în buclă.
  • Puteți adăuga mai multe acțiuni în interiorul unui Iterator.
  • Când folosești ramuri în interiorul unui Iterator, asigură-te că ultimul pas al fiecărei ramuri se conectează înapoi la Iterator pentru a închide bucla.
  • Accesați câmpurile Current Item: pentru a utiliza câmpuri din înregistrarea procesată în prezent, faceți clic pe pasul Iterator, apoi selectați Current item. Lista câmpurilor disponibile din acea înregistrare va fi afișată și poate fi selectată pentru utilizare în acțiunile ulterioare. Poți, de asemenea, să selectezi Use the whole item pentru a trimite întregul element curent într-un pas ulterior.

Filtru

Filtrează înregistrările pe baza condițiilor specificate, permițând trecerea doar a înregistrărilor care îndeplinesc criteriile. Configurare:
  • Selectați înregistrarea de filtrat
  • Definiți condițiile și criteriile de filtrare
  • Configurați care înregistrări ar trebui să treacă la pașii următori
  1. Output: Nodurile Filter nu returnează date — acționează ca porți. Dacă condițiile sunt îndeplinite, fluxul de lucru continuă. Dacă nu, fluxul de lucru se oprește pe acea ramură.
  2. Operatorul IS poate fi utilizat cu câmpuri numerice. Se comportă ca un EQUAL.

Întârziere

Pauzează execuția fluxului de lucru pentru o durată specificată sau până la o anumită dată/oră. Tipuri de întârziere: Configurare pentru durată:
  • Setați zile, ore, minute și/sau secunde
  • Combinați mai multe unități (de ex., 2 zile și 4 ore)
Configurare pentru dată programată:
  • Selectați o dată și o oră
  • Poate face referire la un câmp de tip dată dintr-un pas anterior (de ex., un follow-up la 3 zile după o întâlnire)
Cazuri de utilizare:
  • Așteaptă 24 de ore înainte de a trimite un email de follow-up
  • Pauzează până la data de închidere a unei oportunități
  • Programează acțiuni pentru programul de lucru
Data programată nu poate fi în trecut. Dacă este utilizat un câmp de tip dată dintr-un pas anterior și data a trecut deja, fluxul de lucru va eșua.
Limitări și credite:
  • Fără limită maximă de durată — puteți seta întârzieri de minute, zile, săptămâni sau mai mult
  • Se consumă 0.0001 credit ($0.0001) la executarea nodului Delay, la fel ca pentru un pas standard al fluxului de lucru, indiferent de durată
  • Nu se consumă credite în timpul așteptării — o întârziere de 5 minute costă la fel ca o întârziere de 5 zile

Acțiuni de comunicare

Trimite email

Trimite un email din fluxul dumneavoastră de lucru. Este excelent pentru emailuri de grup bazate pe șabloane. Emailurile vor arăta ca cele pe care le trimiteți din căsuța de e-mail. Nu este potrivit pentru newsletter-uri (care necesită formatare mai bogată) sau secvențe automate de e-mail. Cerințe prealabile: Adăugați un cont de email în Settings → Accounts Configurare:
  • Selectați contul de email expeditor
Puteți trimite emailuri doar din căsuțele poștale sincronizate cu propriul dvs. cont Twenty. Trimiterea din căsuțele poștale ale altor membri ai echipei (de ex., emailul proprietarului contului) este pe roadmap.
Pentru toți pașii următori, puteți face referire la variabile din pașii anteriori pentru personalizare.
  • Introduceți adresa de email a destinatarului.
În acest moment este posibil un singur destinatar.
  • Setați linia de subiect.
  • Compuneți corpul mesajului. Aveţi posibilitatea să formataţi link-uri, să creaţi liste numerotate, liste de puncte de liniuţă, şi să adăugaţi ataşamente.
Adăugarea semnăturilor HTML nu este posibilă în acest moment.

Ciornă de email

Creează un e-mail ciornă în loc să îl trimită. Aceeași configurare ca pentru Trimitere e-mail, dar mesajul este salvat în folderul Ciorne al căsuței poștale conectate pentru revizuire și trimitere manuală, în loc să fie trimis automat. Configurare: Aceleași câmpuri ca pentru Trimitere e-mail — contul expeditorului, destinatarul, subiectul și conținutul. Caz de utilizare: e-mailuri generate de AI sau de fluxuri de lucru, pe care doriți ca o persoană să le revizuiască înainte de a fi trimise.

Creați eveniment în calendar

Creează un eveniment într-un calendar conectat. Configurare:
  • Selectați contul de calendar conectat
  • Setați titlul, descrierea și locația evenimentului
  • Setați data/ora de început și de sfârșit sau marcați evenimentul ca fiind de o zi întreagă
  • Opțional, setați un fus orar
  • Adăugați participanți
  • Alegeți dacă să trimiteți invitații în calendar participanților
  • Alegeți dacă să adăugați un link de conferință la eveniment
Output: Datele evenimentului creat sunt disponibile pentru utilizare în pașii următori.

Formular

Deschide un formular pentru persoana care inițiază fluxul de lucru, pentru a colecta informații pe loc. Răspunsurile pot fi apoi folosite în pașii următori pentru a crea înregistrări, a trimite emailuri sau a executa orice altă acțiune pe baza datelor introduse.
Formularele sunt concepute doar pentru declanșatoare manuale. Un formular este completat imediat de persoana care rulează fluxul de lucru și nu ajunge în inboxul nimănui. Pentru fluxurile de lucru cu alte declanșatoare (Înregistrare creată, actualizată etc.), formularele sunt accesibile doar prin interfața de execuție a fluxului de lucru. Pentru a cere cuiva un răspuns sau o aprobare în inboxul său, utilizați în schimb pasul Trimite în inbox.
Configurare:
  • Configurați câmpurile pe care utilizatorii vor fi solicitați să le completeze. Pentru fiecare câmp, alegeți
    • un tip dintre text, număr, dată, o anumită înregistrare, un câmp select. Câmpurile din toate obiectele sunt disponibile pentru selecţie.
    • o etichetă
    • o valoare implicită la Placeholder (opțional)
  • Editați titlul formularului
  • Adăugați instrucțiuni afișate deasupra câmpurilor (opțional). Acestea pot include variabile din pașii anteriori, de exemplu numele înregistrării la care se referă formularul.
Output: Răspunsurile formularului sunt disponibile pentru utilizare în pașii următori. Exemplu: Fluxul de lucru “Quick Lead” este disponibil implicit în toate locurile de lucru, disponibil oriunde în meniul de comandă Cmd+K. Cum să completați formularul:
  • Declanşaţi fluxul de lucru manual din Meniul de Comandă Cmd+K
  • Completați formularul afișat în panoul lateral și faceți clic pe Submit.
Câmpurile nu pot fi făcute obligatorii.

Acțiuni de integrare

Cod

Rulați JavaScript personalizat în cadrul fluxului dumneavoastră de lucru. În fundal, fiecare acțiune de cod este susținută de propria funcție logică — o funcție TypeScript pe server, care rulează pe platforma Twenty. Când adaugi o acțiune de cod, Twenty creează o funcție logică dedicată pentru acel pas și îi afișează editorul inline, astfel încât codul pe care îl scrii rămâne asociat cu workflow-ul. Configurare:
  • Accesați variabilele din pașii anteriori. Poți edita dinamic numele variabilelor.
  • Scrieți cod JavaScript în editor
  • Returnați variabilele pentru utilizare în pașii următori
  • Testați codul direct în pas
Dacă trebuie să utilizați chei API externe în codul dvs., trebuie să le introduceți direct în corpul funcției. Nu puteți configura cheile API în altă parte și să faceți referire la ele în funcția logică.
Lucrați cu array-uri? Array-urile din sisteme externe sau din pași anteriori pot veni ca stringuri. Consultați Cum să gestionați array-urile în acțiunile Code pentru soluție.
Faceți clic pe pictograma pătrată din dreapta sus a editorului de cod pentru a-l afișa pe tot ecranul — util, deoarece lățimea implicită a editorului este limitată.

Reutilizarea unei funcții logice între workflow-uri

Acțiunea de cod inline este excelentă pentru logică ad-hoc, dar codul pe care îl conține aparține acelui singur pas. Când vrei să partajezi aceeași logică între mai multe workflow-uri — sau să o menții ca sursă versionată într-o aplicație — definește o funcție logică reutilizabilă în loc să copiezi și să lipești cod în fiecare acțiune de cod. O funcție logică este definită o singură dată într-o aplicație (folosind defineLogicFunction din SDK) și expusă în constructorul de workflow prin adăugarea workflowActionTriggerSettings. După ce aplicația ta este instalată, acea funcție apare ca acțiune separată în constructorul de workflow, alături de acțiunile încorporate. Selectarea acesteia afișează câmpurile de intrare pe care le-ai declarat (cu selectoare de variabile, la fel ca alte acțiuni) și rulează codul tău partajat — fără a fi necesar JavaScript inline. Ambele rulează pe același runtime pentru funcții logice, astfel încât o acțiune de cod pe care ai prototipat-o inline poate fi ulterior promovată într-o funcție logică reutilizabilă cu modificări minime.
Pentru documentația destinată dezvoltatorilor privind definirea funcțiilor logice și expunerea lor în constructorul de workflow, consultă Logic Functions — în special secțiunea Exposing a function as an AI tool or workflow action și workflowActionTriggerSettings.

Solicitare HTTP

Trimite o cerere la un API extern ca parte a fluxului dumneavoastră de lucru. Configurare:
  • Introduceți URL-ul punctului final API. Puteți utiliza parametri din pașii anteriori.
  • Selectați metoda HTTP (GET, POST, PUT, PATCH, DELETE)
  • Adăugați anteturile și valorile necesare
  • Oferiți un exemplu de răspuns pentru previzualizarea structurii
Limite: solicitarea eșuează dacă durează mai mult de 30 de secunde sau dacă corpul solicitării ori al răspunsului este mai mare de 10 MB.

Acțiuni AI

Agent AI

Rulează un agent AI în cadrul fluxului dvs. de lucru pentru a efectua sarcini inteligente. Configurare:
  • Agent: Selectați un agent AI existent sau folosiți agentul implicit
  • Prompt: Scrieți instrucțiunea pentru agentul AI
  • Faceți referire la variabile din pașii anteriori în prompt
Ce pot face agenții AI:
  • Analizează și rezumă date
  • Clasifică sau categorizează înregistrări
  • Generează conținut text
  • Ia decizii pe baza datelor
  • Interacționează cu datele CRM folosind instrumente
Output: Răspunsul agentului AI este disponibil pentru utilizare în pașii următori. Dacă agentul are o schemă de ieșire structurată, răspunsul va urma acel format.
Acțiunile agentului AI consumă credite ale fluxului de lucru în funcție de modelul AI utilizat. Consultați Credite pentru fluxuri de lucru pentru detalii.
Agenții AI respectă permisiunile bazate pe roluri. Puteți atribui roluri specifice agenților în Settings → Members → Roles pentru a controla la ce date pot avea acces. Consultați Permisiuni pentru detalii.

Clasificare

Solicită unui model AI să răspundă la una sau mai multe întrebări structurate despre datele din pașii anteriori — de exemplu, pentru evaluarea unui client potențial sau categorizarea unui mesaj primit. Spre deosebire de AI Agent, Clasificare returnează întotdeauna o valoare în formatul definit de dvs., astfel încât este potrivită pentru dirijarea deterministă a ramificațiilor.
Cerință prealabilă: Clasificare rulează pe modelul de evaluare al Twenty (Jev), pe care un administrator trebuie să îl activeze și să îl configureze cu o cheie API TypeSafe AI. Fără aceasta, rularea acestui pas eșuează.
Configurare:
  • Intrare: Datele de clasificat (de ex., o înregistrare sau un text dintr-un pas anterior)
  • Întrebări: Adăugați una sau mai multe întrebări, fiecare cu:
    • Un nume — utilizat pentru a citi răspunsul în aval (de ex., {{stepId.answers.<name>}})
    • Un tip: boolean, choice sau score
    • Instrucțiuni pentru model
    • Criterii — opțiunile posibile sau nivelurile de scor de la cel mai mic la cel mai mare (nu sunt necesare pentru boolean)
Output: Răspunsul la fiecare întrebare, identificat prin numele său, plus modelul utilizat.