Execution API
A pipeline execution is one run of a pipeline. An execution can be triggered either automatically or via an API request. The automatic trigger depends on the type of input connector and the schedule you set for your pipeline. If you set an event-based input connector (trigger_type === "EVENT_BASE"
), the execution is created when data is sent to nuvo via the corresponding connector. If you set a time-based input connector (trigger_type === "TIME_BASE"
) along with a schedule, the execution is created according to that schedule. Without a set schedule, the execution is only created if manually triggered via the API.
Use this base URL and add the corresponding endpoint respectively:
Base URL
api-gateway.getnuvo.com/dp/api/v1/
Create
Endpoint
POST /execution/
Payload
pipeline_id
The ID of the pipeline for which you want to create an execution
Response
{
"pipeline_id": "string"
}
Response
Attributes
List of all executions created for the pipeline. For HTTP(S) and email input connectors, there is only one execution. With (S)FTP and S3 input connectors, you can process multiple files, and a new execution is created for each file.
id
The ID of the created execution
pipeline
The ID of the pipeline for which you want to create an execution
status
The status of the execution which is always PROCESSING
after triggering a new execution
trigger_type
Indicates how the execution was triggered. When using the POST request via the API, it is always set to MANUAL
.
Response
{
"data": [
{
"id": "string",
"pipeline": "string",
"status": "PROCESSING",
"trigger_type": "MANUAL"
}
]
}
Read by ID
Endpoint
GET /execution/{id}
Attributes
id
The ID of the created execution
pipeline
The ID of the pipeline for which you want to create an execution
status
The current status of the execution. An execution can have the following status:
SUCCESSFUL
: The execution completed successfullyFAILED
: The execution failedPROCESSING
: The execution is still running
error
Indicates why the execution failed. It's only returned when the execution actually failed.
message
The error message explaining why the execution failed
type
The type of error that occurred:
SOURCE_UNRESPONSIVE
: The connection to the input source/input connector could not be establishedSOURCE_DATA_EMPTY
: The file read from the input source/input connector contained no dataPARSING_FAILURE
: The input file could not be parsed correctlyDESTINATION_UNRESPONSIVE
: The connection to the destination/output connector could not be establishedDESTINATION_SIZE_LIMIT
: The destination's size limitations have been reachedWRITE_FILE_FAILURE
: The connection to the destination/output connector was successful, but the output file writing failed due to lack of permissionsERROR_THRESHOLD_EXCEEDED
: The number of erroneous cells exceeded the defined error threshold
logs
A list of all runs of the execution. If an execution failed and was re-run after fixing it, there will be more than one entry in this list.
status
The status of the execution after this run:
SUCCESSFUL
: The execution completed successfullyFAILED
: The execution failedPROCESSING
: The execution is still running
data
Contains metadata of the execution run
total_rows
Total number of output rows after the mappings and transformations were applied
total_cells
Total number of output cells after the mappings and transformations were applied
total_error_cells
Total number of output cells after the mappings and transformations were applied that contain at least one error
total_error_rows
Total number of output rows after the mappings and transformations were applied that contain at least one error
duration
The time the execution run took, in milliseconds
started_on
The date and time the execution run was started
type
Indicates whether the execution run was the first attempt or occurred after a fix:
CREATE
: The run was the first attempt to complete the executionFIX
: The run was created after a failed pipeline was fixed
configuration
The ID of the pipeline configuration used for the execution
trigger_type
Indicates how the execution was triggered:
MANUAL
: Started via the APISCHEDULED
: Started based on the set schedule of the pipelineEVENT
: Started based on data being sent via an event-based input connector
created_at
The date and time when the execution was first created
created_by
Information about whom created the execution
id
The ID of the user or sub-organization who created the execution
name
The name of the user or sub-organization who created the execution
identifier
The identifier of the user or sub-organization who created the execution
type
Defines the type of user who created the execution:
USER
: A user of your organizationSUB_ORG
: A sub-organization that is part of your organization
updated_at
The date and time when the execution was last updated
updated_by
Information about whom last updated the execution
id
The ID of the user or sub-organization who last updated the execution
name
The name of the user or sub-organization who last updated the execution
identifier
The identifier of the user or sub-organization who last updated the execution
type
Defines the type of user who last updated the execution:
USER
: A user of your organizationSUB_ORG
: A sub-organization that is part of your organization
Response
{
"data": {
"id": "string",
"pipeline": "string",
"status": "FAILED",
"error": {
"message": "string",
"type": "ERROR_THRESHOLD_EXCEEDED"
},
"logs": [
{
"status": "FAILED",
"data": {
"total_rows": 0,
"total_cells": 0,
"total_error_cells": 0,
"total_error_rows": 0
},
"duration": 0,
"started_at": "2024-09-03T09:34:52.518Z",
"type": "CREATED"
}
],
"trigger_type": "MANUAL",
"configuration": "string",
"created_at": "2022-03-07 12:48:28.653",
"created_by": {
"id": "string",
"name": "string",
"identifier": "string",
"type": "USER"
},
"updated_by": {
"id": "string",
"name": "string",
"identifier": "string",
"type": "USER"
},
"updated_at": "2022-03-07 12:48:28.653"
}
}
Read all
To further refine the response you can use query parameters like sort
, filters
, pagination
and options
. Look at a more detailed explanation here.
Endpoint
GET /execution/
Attributes
id
The ID of the created execution
pipeline
The ID of the pipeline for which you want to create an execution
status
The current status of the execution. An execution can have the following status:
SUCCESSFUL
: The execution completed successfullyFAILED
: The execution failedPROCESSING
: The execution is still running
error
Indicates why the execution failed. It's only returned when the execution actually failed.
message
The error message explaining why the execution failed
type
The type of error that occurred:
SOURCE_UNRESPONSIVE
: The connection to the input source/input connector could not be establishedSOURCE_DATA_EMPTY
: The file read from the input source/input connector contained no dataPARSING_FAILURE
: The input file could not be parsed correctlyDESTINATION_UNRESPONSIVE
: The connection to the destination/output connector could not be establishedDESTINATION_SIZE_LIMIT
: The destination's size limitations have been reachedWRITE_FILE_FAILURE
: The connection to the destination/output connector was successful, but the output file writing failed due to lack of permissionsERROR_THRESHOLD_EXCEEDED
: The number of erroneous cells exceeded the defined error threshold
trigger_type
Indicates how the execution was triggered:
MANUAL
: Started via the APISCHEDULED
: Started based on the set schedule of the pipelineEVENT
: Started based on data being sent via an event-based input connector
created_at
The date and time when the execution was first created
created_by
Information about whom created the execution
id
The ID of the user or sub-organization who created the execution
name
The name of the user or sub-organization who created the execution
identifier
The identifier of the user or sub-organization who created the execution
type
Defines the type of user who created the execution:
USER
: A user of your organizationSUB_ORG
: A sub-organization that is part of your organization
updated_at
The date and time when the execution was last updated
updated_by
Information about whom last updated the execution
id
The ID of the user or sub-organization who last updated the execution
name
The name of the user or sub-organization who last updated the execution
identifier
The identifier of the user or sub-organization who last updated the execution
type
Defines the type of user who last updated the execution:
USER
: A user of your organizationSUB_ORG
: A sub-organization that is part of your organization
pagination
An object containing metadata about the result
total
The number of entries in the data array
offset
The offset set in the request parameters
limit
The limit set in the request parameters
Response
{
"data": [
{
"id": "string",
"pipeline": "string",
"status": "SUCCESSFUL",
"error": {
"message": "string",
"type": "ERROR_THRESHOLD_EXCEEDED"
},
"trigger_type": "MANUAL",
"created_at": "2022-03-07 12:48:28.653",
"created_by": {
"id": "string",
"name": "string",
"identifier": "string",
"type": "USER"
},
"updated_by": {
"id": "string",
"name": "string",
"identifier": "string",
"type": "USER"
},
"updated_at": "2022-03-07 12:48:28.653"
}
],
"pagination": {
"total": 0,
"offset": 0,
"limit": 0
}
}