> ## Documentation Index
> Fetch the complete documentation index at: https://www.twicecommerce.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Workflow

> Automatizujte firemní procesy pomocí workflow pipeline složené z filtrů, zpoždění a akcí

Workflow vám umožňuje automatizovat opakující se firemní procesy zřetězením filtrů, zpoždění a akcí do pipeline. Workflow běží nad payloadem, například objednávkou, a provádí své kroky v pořadí.

> [!NOTE]
>
> Toto zobrazení se může lišit v závislosti na vaší uživatelské roli. \
> Podrobnosti najdete v části Viditelnost a oprávnění.

## Hlavní účel

Workflow odstraňuje ruční práci tím, že reaguje na události ve vašem systému a provádí akce za vás.

> **Vytvářejte pravidla automatizace**
>
> Sestavte workflow, které se spustí při výskytu konkrétní události: objednávka končí, položka je vrácena nebo se změní stav.

> **Filtrujte a zpožďujte**
>
> Přidejte filtry, které zúží, jaké události se počítají, a zpoždění, která ovládají časování. Například počkejte dvě hodiny po skončení objednávky, než odešlete e-mail se žádostí o zpětnou vazbu.

> **Nastavte akce**
>
> Zvolte, co se stane na konci pipeline: odešlete e-mail s vlastním předmětem a textem, nebo pošlete HTTP požadavek externímu systému. Podrobnosti najdete v části Typy akcí.

> **Sledujte průběh**
>
> Prohlédněte si historii spuštění workflow, zkontrolujte počty úspěšných a neúspěšných běhů a řešte problémy, když se krok nedokončí.

## Pipeline workflow

Workflow je pipeline tří typů kroků, které se provádějí v pořadí:

| Krok | Účel | Příklad |
| - | - | - |
| **Filtr** | Zužuje, které payloady se počítají | Pouze objednávky nad 100 € |
| **Zpoždění** | Pozastaví provádění na nastavenou dobu | Čekat 2 hodiny |
| **Akce** | Operace, která se má provést | Odeslat e-mail "Žádost o zpětnou vazbu" |

Filtry a zpoždění jsou volitelné. Minimální workflow potřebuje pouze akci.

> [!NOTE]
>
> Workflow se v současnosti spouští **přes API**: pro workflow se vytvoří úloha s payloadem (například objekt objednávky) a pipeline se spustí nad tímto payloadem. Administrace má položku Workflow, ale zobrazuje zástupný text "Již brzy". Spouštěče událostí a vizuální tvůrce zatím nejsou k dispozici a jejich datum vydání není stanoveno.

## Příklad

Workflow, které odešle e-mail se žádostí o zpětnou vazbu dvě hodiny po spuštění s payloadem objednávky:

```json Definice workflow theme={null}
{
  "name": "Post-Order Feedback",
  "steps": [
    {
      "type": "delay",
      "duration": "2h"
    },
    {
      "type": "action",
      "action": "send_email",
      "template": "feedback_request"
    }
  ]
}
```

## Zpracování selhání

### Opakování

Když úloha workflow selže kvůli chybě serveru (5xx) nebo výpadku sítě, systém ji několikrát zopakuje, než ji trvale označí za neúspěšnou. Chybové odpovědi v rozsahu 4xx se považují za trvalé a neopakují se.

### Automatické vypnutí

Pokud všechny 3 poslední úlohy workflow selžou, workflow se automaticky vypne. Vypnuté workflow přestane zpracovávat nové úlohy, dokud není znovu zapnuto.

Nejprve odstraňte příčinu selhání a poté kontaktujte podporu pro opětovné zapnutí workflow. Opětovné zapnutí není v současnosti dostupné v administraci ani ve veřejném API.

> [!NOTE]
>
> Opakování workflow je oddělené od [opakování doručení webhooků](https://www.twicecommerce.com/docs/cs/concepts/integrations/webhooks.md). Oba mechanismy fungují nezávisle na sobě.

## Akce HTTP požadavku

Akce HTTP požadavku odesílají jako krok workflow požadavky na externí adresy URL. Podporují metody `GET`, `POST`, `PUT` a `DELETE`.

### Hlavičky

Každý požadavek obsahuje dvě systémově spravované hlavičky:

| Hlavička | Hodnota |
| - | - |
| `Content-Type` | `application/json` |
| `X-Origin-System` | `TwiceCommerce` |

Vlastní hlavičky nejsou podporovány. Jakékoli hlavičky nastavené na akci se před odesláním požadavku odstraní.

### Zpracování chyb

Akce HTTP požadavku, která standardně obdrží chybovou odpověď 5xx nebo dojde k výpadku sítě, ukončí úlohu neúspěchem a vstoupí do cyklu opakování popsaného výše. Odpověď 4xx ukončí úlohu trvale bez opakování. Zapněte **Pokračovat i při chybě**, aby se chybová odpověď předala dalšímu kroku workflow místo ukončení úlohy.

## Související koncepty

> **Filtry**
>
> Filtry vyhodnocují podmínky vůči payloadu úlohy a zastaví pipeline, pokud podmínky nejsou splněny.

> **Zpoždění**
>
> Zpoždění pozastaví provádění na nastavitelnou dobu, než pipeline pokračuje dalším krokem.

> **Akce**
>
> Akce jsou operace, které workflow provádí. Dostupné akce zahrnují odesílání e-mailů ze šablon a HTTP požadavky na externí adresy URL. Podrobnosti o hlavičkách a zpracování chyb najdete v části Akce HTTP požadavku.

## Typy akcí

### Odeslat e-mail

Odešle e-mail s vlastním předmětem a textem. Obě pole podporují proměnné šablony (viz níže). HTML značky v textu jsou z bezpečnostních důvodů odstraněny. E-mail se odesílá z TWICE Commerce jménem vašeho účtu.

### HTTP požadavek

Odešle HTTP požadavek na externí adresu URL. Použijte to k upozornění systémů třetích stran, spuštění externích automatizací nebo odeslání dat objednávky do vlastního backendu.

**Podporované metody:** `GET`, `POST`, `PUT`, `DELETE`. U požadavků `GET` a `DELETE` se neposílá žádné tělo.

Každý odchozí požadavek obsahuje dvě automaticky vložené hlavičky:

| Hlavička | Hodnota |
| - | - |
| `Content-Type` | `application/json` |
| `X-Origin-System` | `TwiceCommerce` |

Vlastní hlavičky nejsou konfigurovatelné.

Přijímají se pouze textová těla ve formátu JSON: šablona těla musí být platný JSON. Jiné typy obsahu nejsou podporovány.

```json Příklad šablony těla theme={null}
{
  "event": "order_created",
  "order_id": "{{ $.id }}",
  "status": "{{ $.status }}",
  "channel": "{{ $.channel }}"
}
```

### Proměnné šablony

Oba typy akcí podporují proměnné šablony ve svých textových polích: předmět a text e-mailu, parametry dotazu v URL požadavku a tělo požadavku. Použijte syntaxi `{{ $.path }}`, kde `$` představuje payload úlohy.

Když je workflow spuštěno s payloadem objednávky, šablony se vyhodnocují vůči tomuto objektu objednávky. Vnořené cesty používají tečkovou notaci. Prvky pole používají hranaté závorky (`[0]`, `[1]`).

| Šablona | Výsledná hodnota |
| - | - |
| `{{ $.id }}` | ID objednávky |
| `{{ $.status }}` | Stav objednávky |
| `{{ $.reference }}` | Reference objednávky, formátovaná podle nastavení [číslování objednávek](https://www.twicecommerce.com/docs/cs/settings/orders.md) |
| `{{ $.number }}` | Surová hodnota sekvence za referencí, bez formátování |
| `{{ $.lineItems[0].name }}` | Název první položky objednávky |

Hodnoty šablon v HTTP požadavcích se automaticky kódují podle toho, kde se vyskytují:

| Kontext | Kódování |
| - | - |
| Tělo požadavku | JSON escapování (uvozovky, zpětná lomítka a řídicí znaky) |
| Parametry dotazu | URL kódování |

## Viditelnost a oprávnění

Správa workflow je v současnosti dostupná pouze přes API. Koncové body workflow jsou dostupné každému ověřenému uživateli vašeho účtu. Workflow nemá žádná vlastní omezení podle role.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.