> ## Documentation Index
> Fetch the complete documentation index at: https://help.teable.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Creare Automazioni in modo programmatico con l'API

> Crea e configura workflow usando l'API di Teable e JavaScript

<Tip>Consigliamo di creare gli esempi di Automazione direttamente in AI Chat. Descrivi il workflow desiderato e l'IA si occuperà dell'intera configurazione, inclusi trigger, azioni, script e impostazioni.</Tip>

## Creare con l'IA

Apri AI Chat nella barra laterale destra della Tabella e spiega all'IA cosa desideri. Ad esempio, puoi dire:

*"Crea un'Automazione che monitori le modifiche allo stato degli ordini e invii una notifica webhook quando un ordine viene spedito"*

L'IA creerà automaticamente il workflow completo. Puoi esaminare lo script generato, provarlo con dati reali e abilitare il workflow quando è pronto.

## Prerequisiti

* Un token di accesso personale (PAT). Consulta [Token di accesso](/it/api-doc/token).
* L'ID della Base, l'ID della Tabella e gli ID dei Campi. Consulta [Ottenere gli ID](/it/api-doc/get-id).

## Funzioni di supporto

```javascript theme={null}
const baseUrl = "https://app.teable.ai/api";
const token = process.env.TEABLE_TOKEN;
const baseId = "bserxxxxxx";

const headers = {
  Authorization: `Bearer ${token}`,
  "Content-Type": "application/json",
};

async function api(method, path, body) {
  const res = await fetch(`${baseUrl}${path}`, {
    method,
    headers,
    body: body ? JSON.stringify(body) : undefined,
  });
  if (!res.ok) throw new Error(`${method} ${path} → ${res.status}`);
  return res.json();
}
```

## Creare il workflow

```javascript theme={null}
// 1. Crea un workflow
const wf = await api("POST", `/base/${baseId}/workflow`, {
  name: "Notifica alla spedizione",
  description: "Invia un webhook quando lo stato dell'ordine diventa Spedito",
});

// 2. Aggiungi un trigger
const trigger = await api("POST", `/base/${baseId}/workflow/${wf.id}/trigger`, {
  type: "recordUpdated",
  config: { tableId: "tblOrders", watchFieldIds: ["fldStatus"] },
});

// 3. Prova il trigger
await api("POST", `/base/${baseId}/workflow/${wf.id}/test/${trigger.id}`);

// 4. Aggiungi un'azione Richiesta HTTP
const action = await api("POST", `/base/${baseId}/workflow/${wf.id}/action`, {
  type: "httpRequest",
  parentNodeId: trigger.id,
});

// 5. Abilita
await api("PUT", `/base/${baseId}/workflow/${wf.id}/active`, {
  method: "activate",
});
```

## Procedure consigliate

* Usa il PAT con i privilegi minimi: limitalo agli Spazi e alle Base necessari.
* Archivia i token nelle variabili d'ambiente; non inserirli mai direttamente nel codice.
* Usa **Testa nodo** per eseguire una verifica prima di abilitare il workflow.
* Consulta il [Riferimento completo dell'API delle Automazioni](/it/api-reference/automation/put-base-workflow-action).
