What is an Orchestration?¶
An orchestration is a multi-step workflow that moves data between your connected systems, applies transformations, and handles errors -- all without writing code.
The Concept¶
Think of an orchestration like a recipe:
- Ingredients are the data inputs (a VIN number, a customer ID, a date range)
- Steps are the actions you take (fetch data from System A, transform it, send it to System B)
- The dish is the final result (a synced record, a decoded vehicle, a completed order)
Each step in an orchestration performs a single, well-defined action. Steps execute in sequence (or conditionally), and the output of one step can be used as the input to the next.
Real-World Examples¶
VIN Decode and Enrich¶
- Receive a VIN number as input
- Call the NHTSA VPIC API to decode the VIN into make, model, year, and specifications
- Call your DMS to look up the vehicle's inventory record
- Merge the decoded data with the inventory record
- Write the enriched vehicle record to your CRM
Inventory Sync¶
- Fetch all vehicles updated in the last 24 hours from the OEM portal
- For each vehicle, map the OEM fields to the DIBOP Canonical Data Model
- Upsert each vehicle record into your DMS
- Log the sync results for audit
Customer Onboarding¶
- Receive a new customer record from your website form
- Validate required fields (name, email, phone)
- Check for duplicates in your CRM
- If no duplicate exists, create the customer in the CRM
- Send a welcome email via your email platform
- Log the onboarding event
Orchestration Structure¶
Every orchestration has:
| Component | Description |
|---|---|
| Name | A descriptive name (e.g., "VIN Decode and Enrich") |
| Description | What the orchestration does and when to use it |
| Trigger | How the orchestration starts (manual, scheduled, or event-driven) |
| Parameters | Input values required to run the orchestration |
| Steps | An ordered list of actions to perform |
| Error Handling | What to do when a step fails (retry, skip, abort) |
Steps¶
Each step in an orchestration has:
- A type (API Call, Transform, Conditional, or Error Handler)
- A name and description
- Input parameters (which can reference outputs from previous steps)
- Output (the data produced by the step, available to subsequent steps)
Steps execute in order from top to bottom. Conditional steps can branch the execution path based on data values.
See Step Types for a detailed breakdown of each step type.
The Data Flow¶
Data flows through an orchestration via context variables. When a step executes, its output is stored in the orchestration context under the step's name. Subsequent steps can reference this output.
Step 1: "decode_vin"
Input: { "vin": "WDB1234567890" }
Output: { "make": "Mercedes-Benz", "model": "C-Class", "year": 2024 }
Step 2: "enrich_inventory"
Input: { "make": "${decode_vin.make}", "model": "${decode_vin.model}" }
Output: { "stock_number": "A1234", "price": 45000, ... }
This chaining of inputs and outputs is called Parameter Mapping.
Orchestration Lifecycle¶
Orchestrations move through a defined set of states:
| State | Description |
|---|---|
| Draft | The orchestration is being built or edited. It cannot be executed. |
| Active | The orchestration is live and can be triggered (manually, on schedule, or by event). |
| Paused | The orchestration is temporarily disabled. Existing executions continue, but no new ones start. |
| Archived | The orchestration is retired. It cannot be executed or edited, but its history is preserved. |
Transitions¶
- Draft to Active: When you are satisfied with the orchestration and click Activate
- Active to Paused: When you need to temporarily stop the orchestration (e.g., during system maintenance)
- Paused to Active: When you are ready to resume
- Any to Archived: When the orchestration is no longer needed
Archiving is Permanent
Once an orchestration is archived, it cannot be reactivated. Archive only when you are certain the orchestration is no longer needed.
Executions¶
An execution is a single run of an orchestration. Each execution:
- Has a unique execution ID
- Records the start time, end time, and duration
- Tracks the status of every step (success, failure, skipped)
- Stores the input and output data for every step
- Is viewable in the Execution Log
You can drill into any execution to see the full Execution Trace -- a step-by-step timeline showing exactly what happened.
Three Ways to Build¶
DIBOP offers three approaches to building orchestrations:
| Approach | Best For |
|---|---|
| AI Composer | Describe what you want in plain English and let AI generate the steps |
| Visual Builder | Drag-and-drop editor for a graphical workflow design |
| Manual Configuration | Configure each step directly with full control over every parameter |
All three approaches produce the same orchestration format. You can start with the AI Composer, then refine in the Visual Builder, then fine-tune individual steps manually.
Next Steps¶
- Build your first orchestration -- a step-by-step walkthrough
- Understand step types -- what each step type does
- Learn parameter mapping -- how data flows between steps