---
title: "PUT /transform/v1/workflows/{id}"
method: PUT
path: "/transform/v1/workflows/{id}"
---

# PUT /transform/v1/workflows/{id}

`PUT /transform/v1/workflows/{id}`

Create a new workflow with the given UUID.

## Path parameters

- `id` string, required — UUID (any version) of the workflow to create.

## Request body

- TransformCreateWorkflow
  - `country` string — ISO country code the workflow will be used in.
  - `description` string — Description of the workflow.
  - `draft` boolean — When true, the current version of the workflow will not be published.
  - `name` string — Name of the workflow.
  - `rescue` TransformStep[], nullable — Array of steps to execute in case of an unmanaged KO.
    - `action` string — ID of the action to execute
    - `config` object — JSON configuration sent to the provider
    - `id` string — The UUID (any version) of the step.
    - `name` string — Name of the step
    - `next` TransformNext[] — Optional array of next steps to execute after this one.
      - `code` string — Code to match against
      - `status` 'OK' | 'SKIP' | 'KO' | 'TIMEOUT' — Step status to match against, when empty this next step will always be executed.
      - `step_id` string — ID of the step to execute next.
      - `steps` TransformStep[] — Array of steps to execute
      - `stop` boolean — When true, the workflow will stop.
    - `notes` string — Additional internal details
    - `summary` string — Summary of the step's configuration.
  - `schema` string — Short schema name that the workflow will be allowed to process.
  - `steps` TransformStep[], nullable — Array of Steps to use for this workflow.
    - `action` string — ID of the action to execute
    - `config` object — JSON configuration sent to the provider
    - `id` string — The UUID (any version) of the step.
    - `name` string — Name of the step
    - `next` TransformNext[] — Optional array of next steps to execute after this one.
      - `code` string — Code to match against
      - `status` 'OK' | 'SKIP' | 'KO' | 'TIMEOUT' — Step status to match against, when empty this next step will always be executed.
      - `step_id` string — ID of the step to execute next.
      - `steps` TransformStep[] — Array of steps to execute
      - `stop` boolean — When true, the workflow will stop.
    - `notes` string — Additional internal details
    - `summary` string — Summary of the step's configuration.

## Response `200`

OK

- TransformWorkflow
  - `country` string — ISO country code the workflow will be used for.
  - `created_at` string — When the workflow was created.
  - `description` string — Description of the workflow
  - `disabled` boolean — When true, this workflow can no longer be used.
  - `draft` boolean — When true, this workflow is still in draft mode and will not be used in jobs.
  - `hash` string — Partial SHA256 hash of the workflow's contents.
  - `id` string — The UUID (any version) of the workflow.
  - `name` string — Name of the workflow
  - `rescue` TransformStep[], nullable — List of steps to execute when a KO status is returned by a previous step and not explicitly managed.
    - `action` string — ID of the action to execute
    - `config` object — JSON configuration sent to the provider
    - `id` string — The UUID (any version) of the step.
    - `name` string — Name of the step
    - `next` TransformNext[] — Optional array of next steps to execute after this one.
      - `code` string — Code to match against
      - `status` 'OK' | 'SKIP' | 'KO' | 'TIMEOUT' — Step status to match against, when empty this next step will always be executed.
      - `step_id` string — ID of the step to execute next.
      - `steps` TransformStep[] — Array of steps to execute
      - `stop` boolean — When true, the workflow will stop.
    - `notes` string — Additional internal details
    - `summary` string — Summary of the step's configuration.
  - `schema` string — Short schema name that the workflow will be allowed to process.
  - `steps` TransformStep[], nullable — List of steps to execute.
    - `action` string — ID of the action to execute
    - `config` object — JSON configuration sent to the provider
    - `id` string — The UUID (any version) of the step.
    - `name` string — Name of the step
    - `next` TransformNext[] — Optional array of next steps to execute after this one.
      - `code` string — Code to match against
      - `status` 'OK' | 'SKIP' | 'KO' | 'TIMEOUT' — Step status to match against, when empty this next step will always be executed.
      - `step_id` string — ID of the step to execute next.
      - `steps` TransformStep[] — Array of steps to execute
      - `stop` boolean — When true, the workflow will stop.
    - `notes` string — Additional internal details
    - `summary` string — Summary of the step's configuration.
  - `updated_at` string — When the workflow was last updated.
  - `version` string — Version of the workflow's contents currently defined.
  - `versions` TransformWorkflowVersion[] — List of previously published versions of this workflow, only provided when requesting the primary workflow.
    - `created_at` string — Timestamp of when the version was created.
    - `hash` string — Partial hash to identify the workflow definition.
    - `name` string — Name of the previous version.
    - `src` string — Key for the source of the version when created, like 'user'.
    - `src_id` string — ID of the source object that published the version.
    - `version` string — Version number of the workflow.

---

[API](https://skmtc.net/invopop/apis/access-service-api.md) · [All operations](https://skmtc.net/invopop/apis/access-service-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/invopop/access-service-api/versions/fc954f96ea62/schema)
