This endpoint will return the status of the transformation provided the source file is dynamic.

sequenceDiagram
    title Running and following a transformation
    participant f as Front
    participant b as Back
    f ->> b: Trigger a new transformation [1]
    f ->> b: Get transformation status [2]
GET
https://api.staging.wetransform.com/transformation/automation/{automationId}
Parameter Description
{automationId}

The automation UUID to read

Responses

200 OK
ResponseSuccess ScheduleAutomation
Property / Description
success
boolean

Always true on successful responses.

Sample value: true
payload
object

Payload of the requested resource.

payload.automation_id *
string

The transformation tracking UUID.

Sample value: "9b58bbd3-c78d-403a-85a7-83702f90f955"
payload.type *
string

The type of automation that is being tracked.

Sample value: "schedule"
payload.step *
string

The step at which the transformation is at.

Possible values: pending, to_download, downloading, downloaded, to_normalize, normalizing, normalized, to_review, reviewed, to_parse, parsing, parsed, to_select, selected, reusing, to_import, importing, imported, to_create, creating, created, to_match, matching, matched, to_transform, transforming, transformed, to_submit, submitting, processed, failed

Sample value: "pending"
payload.step_for_humans *
object

The human-readable step at which the transformation is at.

payload.step_for_humans.code
string

A translation key for the given message.

Sample value: "source.event.pending"
payload.step_for_humans.message
string

The translated version of the message.

Click on "Example" to get its translated value.

payload.details *
string

The transformation step details.

If an error happened, this field will contain the error message.

Sample value: "The transformation is pending."
payload.original_file *
string

The URL at which can be found the original file fetched when the transformation was started.

Sample value: "https:\/\/example.com\/original-file.csv"
payload.transformed_file *
string

The URL at which can be found the transformed file.

Sample value: "https:\/\/example.com\/transformed-file.csv"
payload.error_report_file *
string

The URL at which can be found the error report file, if any.

Sample value: "https:\/\/example.com\/error-report-file.csv"
payload.created_at
datetime

The date at which the transformation was initiated.

product *
object

A product needed.

Not null if user requires to buy a specific product (permission or limitation) in order to access a feature.

product.requirement *
string

Whether the user requested a features s/he doesn't have access to, or the user needs greater limits. Possible values: permission, limitation

Sample value: "permission"
product.permission *
object

The required permission.

You will need to know which permission is needed in order to fill up search filters in the shop.

product.permission.description *
string

A human-understandable name for the permission.

product.permission.name
string

A technical permission name (ex: ORGANISATION_UPDATE_SETTINGS).

Possible values depend on the context, check the domain's metadata endpoint.

Sample value: "X_SOURCE_FORMAT_XML"
product.limitation_type *
string

The limitation that needs to be increased (ex: number of columns).

product.limitation_needed_value *
integer

The needed resource quantity (if receiver uses 9 columns in a template, this value is 9).

product.limitation_current_value *
integer

The current value of the limitation (if receiver is allowed to use 10 columns, this value is 10).

product.limitation_object *
object

The limitation type in a readable format, for example, "lines per file".

product.is_cta *
boolean

Whether a Call To Action should be displayed.

It may not be displayed if:

  • the limitation is on the membership role
  • the limitation is on the customer role
  • the user is a sender
debug
array

Debug information.

Contains logs about business logic explaining state of the response payload.

Provided in development & admin modes only.

Properties suffixed with * are nullable.

Example Copy
{
    "success": true,
    "payload": {
        "automation_id": "9b58bbd3-c78d-403a-85a7-83702f90f955",
        "type": "schedule",
        "step": "pending",
        "step_for_humans": {
            "code": "source.event.pending",
            "message": "Process execution queued."
        },
        "details": "The transformation is pending.",
        "original_file": "https:\/\/example.com\/original-file.csv",
        "transformed_file": "https:\/\/example.com\/transformed-file.csv",
        "error_report_file": "https:\/\/example.com\/error-report-file.csv",
        "created_at": "2026-04-05T14:44:58+00:00"
    },
    "product": {
        "requirement": "permission",
        "permission": {
            "name": "X_SOURCE_FORMAT_XML",
            "description": "Can import XML files"
        },
        "limitation_type": null,
        "limitation_needed_value": null,
        "limitation_current_value": null,
        "limitation_object": null,
        "is_cta": false
    },
    "debug": []
}
Authentication required.

User must be authenticated to access the resource.

This response is received when the authorization header does not contain a valid authentication token.

It mostly happens because the current access_token has expired, and it needs to be renewed using a refresh_token.

Property / Description
success
boolean

Always false on error responses.

Sample value: false
payload
object

Context about the error, if any.

product *
object

A product needed.

Not null if user requires to buy a specific product (permission or limitation) in order to access a feature.

product.requirement *
string

Whether the user requested a features s/he doesn't have access to, or the user needs greater limits. Possible values: permission, limitation

Sample value: "permission"
product.permission *
object

The required permission.

You will need to know which permission is needed in order to fill up search filters in the shop.

product.permission.description *
string

A human-understandable name for the permission.

product.permission.name
string

A technical permission name (ex: ORGANISATION_UPDATE_SETTINGS).

Possible values depend on the context, check the domain's metadata endpoint.

Sample value: "X_SOURCE_FORMAT_XML"
product.limitation_type *
string

The limitation that needs to be increased (ex: number of columns).

product.limitation_needed_value *
integer

The needed resource quantity (if receiver uses 9 columns in a template, this value is 9).

product.limitation_current_value *
integer

The current value of the limitation (if receiver is allowed to use 10 columns, this value is 10).

product.limitation_object *
object

The limitation type in a readable format, for example, "lines per file".

product.is_cta *
boolean

Whether a Call To Action should be displayed.

It may not be displayed if:

  • the limitation is on the membership role
  • the limitation is on the customer role
  • the user is a sender
debug
array

Debug information.

Contains logs about business logic explaining state of the response payload.

Provided in development & admin modes only.

Properties suffixed with * are nullable.

Example Copy
{
    "success": false,
    "payload": [],
    "product": {
        "requirement": "permission",
        "permission": {
            "name": "X_SOURCE_FORMAT_XML",
            "description": "Can import XML files"
        },
        "limitation_type": null,
        "limitation_needed_value": null,
        "limitation_current_value": null,
        "limitation_object": null,
        "is_cta": false
    },
    "debug": []
}
Access denied.

User is well authenticated, but not authorized to access the resource.

It can happen if user is trying to use a feature that s/he didn't pay for, access someone else's resource, etc.

These issues are normally fixed by the frontend, which should render features and resources user has access to.

Property / Description
success
boolean

Always false on error responses.

Sample value: false
payload
object

Context about the error, if any.

product *
object

A product needed.

Not null if user requires to buy a specific product (permission or limitation) in order to access a feature.

product.requirement *
string

Whether the user requested a features s/he doesn't have access to, or the user needs greater limits. Possible values: permission, limitation

Sample value: "permission"
product.permission *
object

The required permission.

You will need to know which permission is needed in order to fill up search filters in the shop.

product.permission.description *
string

A human-understandable name for the permission.

product.permission.name
string

A technical permission name (ex: ORGANISATION_UPDATE_SETTINGS).

Possible values depend on the context, check the domain's metadata endpoint.

Sample value: "X_SOURCE_FORMAT_XML"
product.limitation_type *
string

The limitation that needs to be increased (ex: number of columns).

product.limitation_needed_value *
integer

The needed resource quantity (if receiver uses 9 columns in a template, this value is 9).

product.limitation_current_value *
integer

The current value of the limitation (if receiver is allowed to use 10 columns, this value is 10).

product.limitation_object *
object

The limitation type in a readable format, for example, "lines per file".

product.is_cta *
boolean

Whether a Call To Action should be displayed.

It may not be displayed if:

  • the limitation is on the membership role
  • the limitation is on the customer role
  • the user is a sender
debug
array

Debug information.

Contains logs about business logic explaining state of the response payload.

Provided in development & admin modes only.

Properties suffixed with * are nullable.

Example Copy
{
    "success": false,
    "payload": [],
    "product": {
        "requirement": "permission",
        "permission": {
            "name": "X_SOURCE_FORMAT_XML",
            "description": "Can import XML files"
        },
        "limitation_type": null,
        "limitation_needed_value": null,
        "limitation_current_value": null,
        "limitation_object": null,
        "is_cta": false
    },
    "debug": []
}

Interactive Console

Please login in order to access the console.

© 2026