# Process flow shapes

## Standard shapes

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><p><strong>Assert</strong> </p><p>Add an expected payload to compare/validate your processed payload.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FanXPckQNdg04ndaRPB2M%2Fline%20tile%20-%20assert%20payload%20-%2050.png?alt=media&#x26;token=40139220-9e54-46ea-ac02-ba77017ac05d">line tile - assert payload - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/assert-shape">assert-shape</a></td></tr><tr><td><p><strong>Branch</strong></p><p>Define multiple branches to be executed sequentially, using the same data.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FhvPYXY8kbshwHGb0Diq7%2Fbranch%20shape%20tile%20.png?alt=media&#x26;token=982c852a-0e49-49ba-8425-a1230f52e48d">branch shape tile .png</a></td><td><a href="process-flow-shapes/standard-shapes/branch-shape">branch-shape</a></td></tr><tr><td><p><strong>Connection</strong></p><p>Choose a connector instance and an endpoint to for syncing data.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FdNjcZxvwCQMCX0DtPoDj%2Fline%20tile%20-%20connection%20-%2050.png?alt=media&#x26;token=2ca706f8-147d-4d4b-bcdd-6428cb874594">line tile - connection - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/connector-shape">connector-shape</a></td></tr><tr><td><p><strong>Filter</strong></p><p>Set filters to refine a payload before further processing takes place.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FgwHoDiU5VtqJqFrivpUy%2Fline%20tile%20-%20filter%20-%2050.png?alt=media&#x26;token=7c493bc6-3820-4b24-91cf-005059f3a147">line tile - filter - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/filter-shape">filter-shape</a></td></tr><tr><td><p><strong>Flow control</strong></p><p>Split one payload into smaller batches to be sent in multiple payloads.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F4mHNDNrjXRfiACp48N4k%2Fline%20tile%20-%20flow%20control%20-%2050.png?alt=media&#x26;token=287a7c91-3c41-46e0-9864-52f89236be38">line tile - flow control - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/flow-control-shape">flow-control-shape</a></td></tr><tr><td><p><strong>Manual payload</strong></p><p>Add a manual payload into your process flow for onward processing.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FOsGPI0Ow0GL9vj46N60h%2Fline%20tile%20-%20manual%20payload%20-%2050.png?alt=media&#x26;token=d0229a31-b884-4d37-8b67-321120720ebb">line tile - manual payload - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/manual-payload-shape">manual-payload-shape</a></td></tr><tr><td><p><strong>Map</strong></p><p>Use field mappings and transformations to define where and how data is mapped from one connection to another.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FNcqFgkiD6X397Q0hsRIC%2Fline%20tile%20-%20map%20-%2050.png?alt=media&#x26;token=8f8c448e-f343-4918-937b-9b57f43cc16a">line tile - map - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/map-shape">map-shape</a></td></tr><tr><td><p><strong>Notify</strong></p><p>Create custom logs and email notifications using static text and/or dynamic content from a process flow.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FKhzcigyj3JdOIN4Sj3bG%2Fnotify%20shape%20tile%20.png?alt=media&#x26;token=87a4a7fd-12c5-47bd-9ad2-d7831c90e427">notify shape tile .png</a></td><td><a href="process-flow-shapes/standard-shapes/notify-shape">notify-shape</a></td></tr><tr><td><p><strong>Route</strong></p><p>Define routes for cases where data needs to flow down two or more paths.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FnJPH1KXiJmlRdEUqip8r%2Fline%20tile%20-%20route%20-%2050.png?alt=media&#x26;token=44163c49-cfa5-4f6b-9216-743b6a9b36df">line tile - route - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/route-shape">route-shape</a></td></tr><tr><td><p><strong>Run process flow</strong></p><p>Call one process flow (and pass in data) from another to form a chain.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FtkzCdHAgJXf6pJkqzPKD%2Fline%20tile%20-%20run%20shape%20-%2050.png?alt=media&#x26;token=7a2bae29-ee62-424e-b183-5233b0641fee">line tile - run shape - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/run-process-flow-shape">run-process-flow-shape</a></td></tr><tr><td><p><strong>Set variables</strong></p><p>Define values for flow and/or metadata variables at any point in a flow. </p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2Fk8RvTB5ZunZHRvWWubRT%2Fline%20tile%20-%20set%20variables.png?alt=media&#x26;token=1d828564-20f7-4d64-a94c-ff2ec11fa943">line tile - set variables.png</a></td><td><a href="process-flow-shapes/standard-shapes/set-variables-shape">set-variables-shape</a></td></tr><tr><td><p><strong>Split</strong></p><p>Split a payload by a given schema element, for onward processing.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F8mH2cWv4cdSlPHYdjxhX%2Fline%20tile%20-%20split%20-%2050.png?alt=media&#x26;token=d692a983-3528-4248-995a-41ef1afd83c3">line tile - split - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/split-shape">split-shape</a></td></tr><tr><td><strong>Track data</strong><br>Track given field values in data received from both connector and non-connector sources.</td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FkxE6kYlM84d6aLMTytpV%2Fline%20tile%20-%20track%20data.png?alt=media&#x26;token=82139309-4a00-48f0-aa22-4577a2110711">line tile - track data.png</a></td><td><a href="process-flow-shapes/standard-shapes/track-data-shape">track-data-shape</a></td></tr><tr><td><p><strong>Trigger</strong></p><p>Define when and how frequently the process flow will run. </p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FeA94bg2RxeS4VSQ5N9QG%2Fline%20tile%20-%20trigger%20-%2050.png?alt=media&#x26;token=9a066f5f-957a-4674-b636-1a859aba5a81">line tile - trigger - 50.png</a></td><td><a href="process-flow-shapes/standard-shapes/trigger-shape">trigger-shape</a></td></tr><tr><td><p><strong>Try/catch</strong></p><p>Handle processing exceptions elegantly with a dedicated path for failed payloads.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FoWozIRpHj8tD9IjmpSYN%2Fline%20tile%20-%20trycatch%20shape.png?alt=media&#x26;token=ba89a3c0-5dbd-4363-9158-aae80bbcdb39">line tile - trycatch shape.png</a></td><td><a href="process-flow-shapes/standard-shapes/try-catch-shape">try-catch-shape</a></td></tr></tbody></table>

## Advanced shapes

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><p><strong>Add to cache</strong></p><p>Add the current data to a cache, which can be retrieved elsewhere in this or other process flows.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2Fu5qKegbNKTLb0Svy3vYc%2Fline%20tile%20-%20add%20to%20cache.png?alt=media&#x26;token=bfd5b87e-1060-44f3-947d-451e8eaf937a">line tile - add to cache.png</a></td><td><a href="process-flow-shapes/advanced-shapes/cache/add-to-cache-shape">add-to-cache-shape</a></td></tr><tr><td><strong>Callback</strong><br>Return data to your API in a real-time, synchronous call. </td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FwlRcjduaNbKX5y7qvoO4%2Fline%20tile%20-%20callback2.png?alt=media&#x26;token=684ff8be-03e2-45f3-becb-6e4db777eca0">line tile - callback2.png</a></td><td><a href="process-flow-shapes/advanced-shapes/callback-shape">callback-shape</a></td></tr><tr><td><strong>De-dupe</strong><br>Identify and remove duplicate data from an incoming payload.</td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2Fhn1TuMtYLmF0gRPX6dc3%2Fline%20tile%20-%20dedupe%20-%2050.png?alt=media&#x26;token=033a3a70-fe47-488a-9f7f-ce2377f9cf33">line tile - dedupe - 50.png</a></td><td><a href="process-flow-shapes/advanced-shapes/de-dupe-shape">de-dupe-shape</a></td></tr><tr><td><p><strong>Load from cache</strong></p><p>Retrieve data from an existing cache.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2FbhuO120K7pCxPM0Naljy%2Fline%20tile%20-%20load%20from%20cache.png?alt=media&#x26;token=08c0b733-be18-42af-99af-c807b20ff075">line tile - load from cache.png</a></td><td><a href="process-flow-shapes/advanced-shapes/cache/load-from-cache-shape">load-from-cache-shape</a></td></tr><tr><td><p><strong>Script</strong></p><p>Apply scripts to transform an entire payload for onward processing.</p></td><td></td><td></td><td><a href="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F9NbhGCZwclVjIX5v6nod%2Fline%20tile%20-%20script%20-%2050.png?alt=media&#x26;token=f821deb9-4285-4d7f-bfc0-33874f41dcb6">line tile - script - 50.png</a></td><td><a href="process-flow-shapes/advanced-shapes/script-shape">script-shape</a></td></tr></tbody></table>
