# Export a workflow Export a workflow configuration by its ID. This endpoint returns the complete workflow definition including its steps, targeting rules, and attributes. {% admonition type="warning" name="Unstable API" %} This API is currently in the Unstable version. Its behavior may change in future releases. {% /admonition %} Endpoint: GET /export/workflows/{id} Version: Unstable 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", "Unstable" ## 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"