# Globální hodnoty API

> Hodnoty pro celý workspace, které opakovaně používáte v e-mailech, krocích automatizací a podmínkách jako {{global.key}}.

Základní URL: `https://api.emailit.com/v2`. Autentizujte se hlavičkou `Authorization: Bearer <API key>`.

## Vytvoření globální hodnoty — POST /global-values

> Vytvoří hodnotu pro celý workspace, například datum webináře nebo odkaz na rezervaci, kterou použijete jako {{global.key}} v e-mailech, krocích automatizací a podmínkách.

# Vytvoření globální hodnoty

Vytvoří globální hodnotu: jednu hodnotu pro celý workspace, kterou použijete jako `{{global.<key>}}` v šablonách, kampaních, e-mailech z automatizací a nastavení kroků, v podmínkách a jako datum, na které se čeká. Vyžaduje API klíč s oprávněním `full`. Viz [Globální hodnoty](/cs/docs/contacts/global-values/).

`POST /global-values`

## Parametry v těle požadavku

- `key` (string, povinné): Začíná malým písmenem a obsahuje malá písmena, číslice a `_`, nejvýše 64 znaků. Ve workspace musí být jedinečný.

- `name` (string): Zobrazovaný název, nejvýše 191 znaků.

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

- `value` (string | number | boolean): Hodnota, která se kontroluje podle typu: číslo pro `number`, `true`, nebo `false` pro `boolean`, `YYYY-MM-DD` pro `date`, datum a čas v ISO 8601 pro `datetime` (uloží se v UTC) a URL s `http` nebo `https` pro `url`.

- `description` (string): Poznámka pro váš tým, nejvýše 1 000 znaků.

## Odpověď

Vrací `201` s [globální hodnotou](#the-global-value-object) v `data`. Pokud je některé pole neplatné, vrací `400` s `errors`, pokud je klíč už obsazený, `409`, a pokud workspace už má 500 globálních hodnot, `422`.

**Požadavek** `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);
```

## Objekt globální hodnoty

- `object` (string): Vždy `global_value`.

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

- `key` (string): Klíč, který se používá jako `{{global.<key>}}`.

- `name` (string | null): Zobrazovaný název.

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

- `value` (string | number | boolean | null): Hodnota: číslo pro `number`, `true`, nebo `false` pro `boolean` a jinak řetězec (`YYYY-MM-DD` pro `date`, ISO 8601 v UTC pro `datetime`).

- `description` (string | null): Poznámka pro váš tým.

- `created_at` (string): Kdy byla hodnota vytvořena.

- `updated_at` (string): Kdy se hodnota naposledy změnila.

---
Zdroj: https://emailit.com/cs/docs/api-reference/global-values/create/

## Načtení globální hodnoty — GET /global-values/{id}

> Načte jednu globální hodnotu podle jejího ID nebo klíče.

# Načtení globální hodnoty

Vrátí jednu globální hodnotu. Vyžaduje API klíč s oprávněním `full`.

`GET /global-values/{id}`

## Parametry v cestě

- `id` (string, povinné): ID (`gv_…`), nebo klíč.

## Odpověď

Vrací [globální hodnotu](/cs/docs/api-reference/global-values/create/#the-global-value-object) v `data`, nebo `404`.

**Požadavek** `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);
```

---
Zdroj: https://emailit.com/cs/docs/api-reference/global-values/get/

## Úprava globální hodnoty — POST /global-values/{id}

> Změní hodnotu, klíč, název, typ nebo popis globální hodnoty. E-maily odeslané od té chvíle použijí novou hodnotu.

# Úprava globální hodnoty

Změní globální hodnotu. Pošlete jen pole, která chcete změnit. Vyžaduje API klíč s oprávněním `full`.

E-maily odeslané od té chvíle použijí novou hodnotu a stejně tak spuštění automatizací, která potom dojdou ke kroku **Wait until**. Spuštění, která už čekají, si ponechají datum, které načetla. Změna klíče rozbije `{{global.<old key>}}` ve vašich šablonách.

`POST /global-values/{id}`

## Parametry v cestě

- `id` (string, povinné): ID (`gv_…`), nebo klíč.

## Parametry v těle požadavku

- `key` (string): Nový klíč, ve workspace jedinečný.

- `name` (string | null): Zobrazovaný název.

- `type` (string): Nový typ. Aktuální hodnota mu musí odpovídat, jinak pošlete i novou `value`.

- `value` (string | number | boolean | null): Nová hodnota, která se kontroluje podle typu. `null` ji vymaže.

- `description` (string | null): Poznámka pro váš tým.

## Odpověď

Vrací upravenou [globální hodnotu](/cs/docs/api-reference/global-values/create/#the-global-value-object) v `data`. Pokud je některé pole neplatné, vrací `400`, pokud hodnota neexistuje, `404`, a pokud je nový klíč už obsazený, `409`.

**Požadavek** `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);
```

---
Zdroj: https://emailit.com/cs/docs/api-reference/global-values/update/

## Výpis globálních hodnot — GET /global-values

> Vypíše všechny globální hodnoty workspace seřazené podle klíče.

# Výpis globálních hodnot

Vrátí všechny globální hodnoty workspace seřazené podle klíče. Workspace jich má nejvýše 500, takže se nestránkuje. Vyžaduje API klíč s oprávněním `full`.

`GET /global-values`

## Odpověď

- `data` (object[]): [Globální hodnoty](/cs/docs/api-reference/global-values/create/#the-global-value-object).

**Požadavek** `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);
```

---
Zdroj: https://emailit.com/cs/docs/api-reference/global-values/list/

## Smazání globální hodnoty — DELETE /global-values/{id}

> Smaže globální hodnotu. Šablony, které ji používají, ji vykreslí jako prázdnou.

# Smazání globální hodnoty

Smaže globální hodnotu. `{{global.<key>}}` se pak vykreslí jako prázdné, podmínky nad ní žádnou hodnotu neuvidí a kroky **Wait until**, které ji čtou, pokračují cestou pro „datum už uplynulo“. Vyžaduje API klíč s oprávněním `full`.

`DELETE /global-values/{id}`

## Parametry v cestě

- `id` (string, povinné): ID (`gv_…`), nebo klíč.

## Odpověď

Vrací `{ "message": "Global value was deleted." }`, nebo `404`.

**Požadavek** `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);
```

---
Zdroj: https://emailit.com/cs/docs/api-reference/global-values/delete/
