# Valori globali API

> Valori validi per tutto il workspace, riutilizzati nelle email, nei passaggi delle automazioni e nelle condizioni come {{global.key}}.

URL di base: `https://api.emailit.com/v2`. Autenticati con `Authorization: Bearer <API key>`.

## Crea un valore globale — POST /global-values

> Crea un valore valido per tutto il workspace, come la data di un webinar o un link di prenotazione, da usare come {{global.key}} nelle email, nei passaggi delle automazioni e nelle condizioni.

# Crea un valore globale

Crea un valore globale: un unico valore per tutto il workspace, usato come `{{global.<key>}}` nei template, nelle campagne, nelle email e nelle impostazioni dei passaggi delle automazioni, nelle condizioni e come data da attendere. Richiede una chiave API con il permesso `full`. Vedi [Valori globali](/it/docs/contacts/global-values/).

`POST /global-values`

## Parametri del corpo

- `key` (string, obbligatorio): Inizia con una lettera minuscola e usa lettere minuscole, cifre e `_`, fino a 64 caratteri. Univoca nel workspace.

- `name` (string): Un nome visualizzato, fino a 191 caratteri.

- `type` (string): `text`, `number`, `boolean`, `date`, `datetime` or `url`.

- `value` (string | number | boolean): Il valore, controllato in base al tipo: un numero per `number`, `true` o `false` per `boolean`, `YYYY-MM-DD` per `date`, una data e un’ora ISO 8601 per `datetime` (salvate in UTC) e un URL `http` o `https` per `url`.

- `description` (string): Una nota per il tuo team, fino a 1000 caratteri.

## Restituisce

Restituisce `201` con il [valore globale](#the-global-value-object) in `data`. Restituisce `400` con `errors` quando un campo non è valido, `409` quando la chiave è già in uso e `422` quando il workspace ha già 500 valori globali.

**Richiesta** `POST /global-values`

**cURL**

```bash
curl -X POST https://api.emailit.com/v2/global-values \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"key": "webinar_date", "name": "Webinar date", "type": "datetime", "value": "2026-11-05T17:00:00Z"}'
```

**Node.js**

```javascript
const res = await fetch('https://api.emailit.com/v2/global-values', {
  method: 'POST',
  headers: { Authorization: `Bearer ${process.env.EMAILIT_API_KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({"key": "webinar_date", "name": "Webinar date", "type": "datetime", "value": "2026-11-05T17:00:00Z"}),
});
const result = await res.json();
```

**Python**

```python
import os, requests

r = requests.post(
    "https://api.emailit.com/v2/global-values",
    headers={"Authorization": f"Bearer {os.environ['EMAILIT_API_KEY']}"},
    json={"key": "webinar_date", "name": "Webinar date", "type": "datetime", "value": "2026-11-05T17:00:00Z"},
)
result = r.json()
```

**PHP**

```php
$client = new GuzzleHttp\Client(['base_uri' => 'https://api.emailit.com/v2/']);

$response = $client->post('global-values', [
    'headers' => ['Authorization' => 'Bearer ' . getenv('EMAILIT_API_KEY')],
    'json' => ['key' => 'webinar_date', 'name' => 'Webinar date', 'type' => 'datetime', 'value' => '2026-11-05T17:00:00Z'],
]);
$result = json_decode($response->getBody(), true);
```

## L’oggetto valore globale

- `object` (string): Sempre `global_value`.

- `id` (string): L’ID (`gv_…`).

- `key` (string): La chiave, usata come `{{global.<key>}}`.

- `name` (string | null): Un nome visualizzato.

- `type` (string): `text`, `number`, `boolean`, `date`, `datetime` or `url`.

- `value` (string | number | boolean | null): Il valore: un numero per `number`, `true` o `false` per `boolean` e una stringa negli altri casi (`YYYY-MM-DD` per `date`, ISO 8601 in UTC per `datetime`).

- `description` (string | null): Una nota per il tuo team.

- `created_at` (string): Quando è stato creato.

- `updated_at` (string): Quando è stato modificato l’ultima volta.

---
Fonte: https://emailit.com/it/docs/api-reference/global-values/create/

## Recupera un valore globale — GET /global-values/{id}

> Recupera un valore globale tramite il suo ID o la sua chiave.

# Recupera un valore globale

Restituisce un valore globale. Richiede una chiave API con il permesso `full`.

`GET /global-values/{id}`

## Parametri di percorso

- `id` (string, obbligatorio): L’ID (`gv_…`) o la chiave.

## Restituisce

Restituisce il [valore globale](/it/docs/api-reference/global-values/create/#the-global-value-object) in `data` oppure `404`.

**Richiesta** `GET /global-values/{id}`

**cURL**

```bash
curl https://api.emailit.com/v2/global-values/webinar_date \
  -H "Authorization: Bearer $EMAILIT_API_KEY"
```

**Node.js**

```javascript
const res = await fetch('https://api.emailit.com/v2/global-values/webinar_date', {
  method: 'GET',
  headers: { Authorization: `Bearer ${process.env.EMAILIT_API_KEY}` },
});
const result = await res.json();
```

**Python**

```python
import os, requests

r = requests.get(
    "https://api.emailit.com/v2/global-values/webinar_date",
    headers={"Authorization": f"Bearer {os.environ['EMAILIT_API_KEY']}"},
)
result = r.json()
```

**PHP**

```php
$client = new GuzzleHttp\Client(['base_uri' => 'https://api.emailit.com/v2/']);

$response = $client->get('global-values/webinar_date', [
    'headers' => ['Authorization' => 'Bearer ' . getenv('EMAILIT_API_KEY')],
]);
$result = json_decode($response->getBody(), true);
```

---
Fonte: https://emailit.com/it/docs/api-reference/global-values/get/

## Aggiorna un valore globale — POST /global-values/{id}

> Modifica il valore, la chiave, il nome, il tipo o la descrizione di un valore globale. Le email inviate da quel momento usano il nuovo valore.

# Aggiorna un valore globale

Modifica un valore globale. Invia solo i campi da modificare. Richiede una chiave API con il permesso `full`.

Le email inviate da quel momento usano il nuovo valore, e lo stesso vale per le esecuzioni delle automazioni che arrivano dopo a un passaggio **Wait until**. Le esecuzioni già in attesa mantengono la data che hanno letto. Se cambi la chiave, `{{global.<old key>}}` smette di funzionare nei template.

`POST /global-values/{id}`

## Parametri di percorso

- `id` (string, obbligatorio): L’ID (`gv_…`) o la chiave.

## Parametri del corpo

- `key` (string): Una nuova chiave, univoca nel workspace.

- `name` (string | null): Un nome visualizzato.

- `type` (string): Un nuovo tipo. Il valore attuale deve essere compatibile, altrimenti invia anche un nuovo `value`.

- `value` (string | number | boolean | null): Il nuovo valore, controllato in base al tipo. `null` lo cancella.

- `description` (string | null): Una nota per il tuo team.

## Restituisce

Restituisce il [valore globale](/it/docs/api-reference/global-values/create/#the-global-value-object) aggiornato in `data`. Restituisce `400` quando un campo non è valido, `404` se non esiste e `409` quando la nuova chiave è già in uso.

**Richiesta** `POST /global-values/{id}`

**cURL**

```bash
curl -X POST https://api.emailit.com/v2/global-values/webinar_date \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"value": "2026-12-03T17:00:00Z"}'
```

**Node.js**

```javascript
const res = await fetch('https://api.emailit.com/v2/global-values/webinar_date', {
  method: 'POST',
  headers: { Authorization: `Bearer ${process.env.EMAILIT_API_KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({"value": "2026-12-03T17:00:00Z"}),
});
const result = await res.json();
```

**Python**

```python
import os, requests

r = requests.post(
    "https://api.emailit.com/v2/global-values/webinar_date",
    headers={"Authorization": f"Bearer {os.environ['EMAILIT_API_KEY']}"},
    json={"value": "2026-12-03T17:00:00Z"},
)
result = r.json()
```

**PHP**

```php
$client = new GuzzleHttp\Client(['base_uri' => 'https://api.emailit.com/v2/']);

$response = $client->post('global-values/webinar_date', [
    'headers' => ['Authorization' => 'Bearer ' . getenv('EMAILIT_API_KEY')],
    'json' => ['value' => '2026-12-03T17:00:00Z'],
]);
$result = json_decode($response->getBody(), true);
```

---
Fonte: https://emailit.com/it/docs/api-reference/global-values/update/

## Elenca i valori globali — GET /global-values

> Elenca tutti i valori globali del workspace, ordinati per chiave.

# Elenca i valori globali

Restituisce tutti i valori globali del workspace, ordinati per chiave. Un workspace ne ha al massimo 500, quindi non c’è paginazione. Richiede una chiave API con il permesso `full`.

`GET /global-values`

## Restituisce

- `data` (object[]): I [valori globali](/it/docs/api-reference/global-values/create/#the-global-value-object).

**Richiesta** `GET /global-values`

**cURL**

```bash
curl https://api.emailit.com/v2/global-values \
  -H "Authorization: Bearer $EMAILIT_API_KEY"
```

**Node.js**

```javascript
const res = await fetch('https://api.emailit.com/v2/global-values', {
  method: 'GET',
  headers: { Authorization: `Bearer ${process.env.EMAILIT_API_KEY}` },
});
const result = await res.json();
```

**Python**

```python
import os, requests

r = requests.get(
    "https://api.emailit.com/v2/global-values",
    headers={"Authorization": f"Bearer {os.environ['EMAILIT_API_KEY']}"},
)
result = r.json()
```

**PHP**

```php
$client = new GuzzleHttp\Client(['base_uri' => 'https://api.emailit.com/v2/']);

$response = $client->get('global-values', [
    'headers' => ['Authorization' => 'Bearer ' . getenv('EMAILIT_API_KEY')],
]);
$result = json_decode($response->getBody(), true);
```

---
Fonte: https://emailit.com/it/docs/api-reference/global-values/list/

## Elimina un valore globale — DELETE /global-values/{id}

> Elimina un valore globale. I template che lo usano lo mostrano vuoto.

# Elimina un valore globale

Elimina un valore globale. Da quel momento `{{global.<key>}}` viene elaborato come vuoto, le condizioni su di esso non trovano alcun valore e i passaggi **Wait until** che lo leggono seguono il percorso «data passata». Richiede una chiave API con il permesso `full`.

`DELETE /global-values/{id}`

## Parametri di percorso

- `id` (string, obbligatorio): L’ID (`gv_…`) o la chiave.

## Restituisce

Restituisce `{ "message": "Global value was deleted." }` oppure `404`.

**Richiesta** `DELETE /global-values/{id}`

**cURL**

```bash
curl -X DELETE https://api.emailit.com/v2/global-values/seats \
  -H "Authorization: Bearer $EMAILIT_API_KEY"
```

**Node.js**

```javascript
const res = await fetch('https://api.emailit.com/v2/global-values/seats', {
  method: 'DELETE',
  headers: { Authorization: `Bearer ${process.env.EMAILIT_API_KEY}` },
});
const result = await res.json();
```

**Python**

```python
import os, requests

r = requests.delete(
    "https://api.emailit.com/v2/global-values/seats",
    headers={"Authorization": f"Bearer {os.environ['EMAILIT_API_KEY']}"},
)
result = r.json()
```

**PHP**

```php
$client = new GuzzleHttp\Client(['base_uri' => 'https://api.emailit.com/v2/']);

$response = $client->delete('global-values/seats', [
    'headers' => ['Authorization' => 'Bearer ' . getenv('EMAILIT_API_KEY')],
]);
$result = json_decode($response->getBody(), true);
```

---
Fonte: https://emailit.com/it/docs/api-reference/global-values/delete/
