# Export a workflow Export a workflow configuration by its ID. This endpoint returns the complete workflow definition including its steps, targeting rules, and attributes. This endpoint is designed for EU Data Act compliance, allowing customers to export their workflow configurations. {% admonition type="info" name="Preview API" %} This endpoint is available in the Preview API version. We may make iterative improvements, including adding new fields or refining existing ones. {% /admonition %} Endpoint: GET /export/workflows/{id} Version: Preview Security: bearerAuth ## Header parameters: - `Intercom-Version` (string) Intercom API version.By default, it's equal to the version set in the app package. Enum: "1.0", "1.1", "1.2", "1.3", "1.4", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "Preview" ## Path parameters: - `id` (string, required) The unique identifier for the workflow Example: "12345" ## Response 200 fields (application/json): - `export_version` (string) The version of the export format. Example: "1.0" - `exported_at` (string) The timestamp when the export was generated. Example: "2026-01-26T12:00:00Z" - `app_id` (integer) The workspace identifier. Example: 12345 - `workflow` (object) The workflow configuration. - `workflow.id` (string) The unique identifier for the workflow. Example: "67890" - `workflow.title` (string) The title of the workflow. Example: "My Workflow" - `workflow.description` (string,null) The description of the workflow. Example: "A workflow that handles customer inquiries" - `workflow.trigger_type` (string) The type of trigger that starts this workflow. Example: "inbound_conversation" - `workflow.state` (string) The current state of the workflow. Enum: "live", "draft", "paused" - `workflow.target_channels` (array) The channels this workflow targets. Example: ["chat"] - `workflow.preferred_devices` (array) The preferred devices for this workflow. Example: ["desktop","mobile"] - `workflow.created_at` (string) When the workflow was created. Example: "2025-06-15T10:30:00Z" - `workflow.updated_at` (string) When the workflow was last updated. Example: "2026-01-20T14:45:00Z" - `workflow.targeting` (object,null) The targeting rules for this workflow. - `workflow.snapshot` (object,null) The current snapshot of workflow steps and configuration. - `workflow.attributes` (array) Custom attributes defined for this workflow. - `workflow.embedded_rules` (array) Rules embedded within the workflow steps. ## Response 403 fields (application/json): - `type` (string, required) The type is error.list Example: "error.list" - `request_id` (string,null) Example: "f93ecfa8-d08a-4325-8694-89aeb89c8f85" - `errors` (array, required) An array of one or more error objects - `errors.code` (string, required) A string indicating the kind of error, used to further qualify the HTTP response code Example: "unauthorized" - `errors.message` (string,null) Optional. Human readable description of the error. Example: "Access Token Invalid" - `errors.field` (string,null) Optional. Used to identify a particular field or query parameter that was in error. Example: "email" ## Response 404 fields (application/json): - `type` (string, required) The type is error.list Example: "error.list" - `request_id` (string,null) Example: "f93ecfa8-d08a-4325-8694-89aeb89c8f85" - `errors` (array, required) An array of one or more error objects - `errors.code` (string, required) A string indicating the kind of error, used to further qualify the HTTP response code Example: "unauthorized" - `errors.message` (string,null) Optional. Human readable description of the error. Example: "Access Token Invalid" - `errors.field` (string,null) Optional. Used to identify a particular field or query parameter that was in error. Example: "email"