[Public Transformations] Get data from a transformation.
This endoint allows to get portions of transformed file before it is actually submitted.
A use case, if used with the update data from a transformation endpoint,
is to allow to make changes to the file while a transformation is still pending
and the file has not been submitted yet.
https://api.staging.wetransform.com/transformation/{transformationId}/data
| Parameter | Description |
|---|---|
{transformationId} |
The transformation UUID to read |
Request Payload
| Property / Description | Constraints | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
attributes
array
|
|||||||||||||||||
|
|
|
||||||||||||||||
|
conditions
array
|
|||||||||||||||||
|
|
|
||||||||||||||||
|
conditions[].position
integer
|
|||||||||||||||||
|
The condition position.
Sample value:
1
|
|
||||||||||||||||
|
conditions[].chaining
string
|
|||||||||||||||||
|
The chaining operator. Possible values:
Sample value:
"AND"
|
|
||||||||||||||||
|
conditions[].text_to_compare
string
|
|||||||||||||||||
|
The expression located at the left of the operator.
Sample value:
"%(source column)"
|
|
||||||||||||||||
|
conditions[].operator
string
|
|||||||||||||||||
|
The condition operator Possible values:
Sample value:
"EQUALS"
|
|
||||||||||||||||
|
conditions[].compare_with
*
string
|
|||||||||||||||||
|
The expression located at the right of the operator.
Sample value:
"42"
|
|||||||||||||||||
|
page
integer
|
|||||||||||||||||
|
Page number to request.
Sample value:
1
|
|
||||||||||||||||
|
per_page
integer
|
|||||||||||||||||
|
Number of entries per page.
Sample value:
25
|
|
||||||||||||||||
Properties suffixed with * are nullable.
{
"attributes": [
"t\/first_name",
"t\/last_name"
],
"conditions": [
{
"position": 1,
"chaining": "AND",
"text_to_compare": "%(source column)",
"operator": "EQUALS",
"compare_with": "42"
}
],
"page": 1,
"per_page": 25
}
Responses
| Property / Description |
|---|
|
success
boolean
|
|
Always
Sample value:
true
|
|
payload
object
|
|
Payload of the requested resource. |
|
payload.total_pages
integer
|
|
Total number of available pages.
Sample value:
7
|
|
payload.current_page
integer
|
|
Current page requested.
Sample value:
2
|
|
payload.total_items
integer
|
|
Total number of items.
Sample value:
63
|
|
payload.items_per_page
integer
|
|
Number of items per page.
Sample value:
10
|
|
payload.rows
array
|
|
|
|
payload.rows[].row
integer
|
|
Sample value:
3
|
|
payload.rows[].data
array
|
|
|
|
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:
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:
|
|
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.
{
"success": true,
"payload": {
"total_pages": 7,
"current_page": 2,
"total_items": 63,
"items_per_page": 10,
"rows": [
{
"row": 3,
"data": {
"t\/first_name": "John",
"t\/last_name": "Doe"
}
}
]
},
"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": []
}
The client sent an unexpected request.
It happens if the client sent an invalid JSON payload, or if the JSON payload cannot be mapped to the expected request object.
| Property / Description |
|---|
|
success
boolean
|
|
Always
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:
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:
|
|
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.
{
"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": []
}
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
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:
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:
|
|
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.
{
"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": []
}
A violation happens when a property value does not respect the expected constraints.
If a user is making a mistake in a form and frontend is not able to detect it (because of the constraint being tied to some business logic for example), the API will return the invalid properties with the right error messages.
Note: examples are hardcoded in english (no access to the translator in a DTO).
| Property / Description |
|---|
|
success
boolean
|
|
Always
Sample value:
false
|
|
payload
object
|
|
Context about the error, if any. |
|
payload.error
object
|
|
|
|
payload.error.code
string
|
|
A translation key for the given message.
Sample value:
"exception.violation"
|
|
payload.violations
array
|
|
|
|
payload.violations[].property_path
string
|
|
Property having an invalid value.
Sample value:
"title"
|
|
payload.violations[].invalid_value
*
|
|
The invalid value.
Sample value:
""
|
|
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:
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:
|
|
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.
{
"success": false,
"payload": {
"error": {
"code": "exception.violation",
"message": "The provided payload contains property violations."
},
"violations": [
{
"property_path": "title",
"invalid_value": "",
"message": "This value should not be blank"
},
{
"property_path": "price",
"invalid_value": -5,
"message": "The amount should be greater than 1"
}
]
},
"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": []
}