Get started with pipeline templates
Pipeline templates provide a convenient way to preconfigure all components of a pipeline, serving as a blueprint for creating new pipelines efficiently. With templates, you can preset the input and output connectors, target data model, error threshold, and schedule, saving time and effort. Templates are particularly useful when you want your customers or other users to create pipelines without having to choose and set all the components themselves. By creating a template with the desired preset components, you can streamline the pipeline creation process for your users, ensuring consistency and ease of use. Whether you're setting up pipelines for internal use or providing a service to clients, pipeline templates offer a powerful tool to simplify and standardize the pipeline configuration process.
Let’s get started
In this guide, we will go through the general process of creating a pipeline template. Please refer to the general guide on how to use the nuvo API to learn more about how to create pipeline components like connectors and target data models.
Once you have created the pipeline template you can refer to it in the CreatePipeline
embeddable component.
Get your access token
Learn more about our authentication API here.
Use this endpoint
Endpoint
POST api-gateway.getnuvo.com/dp/api/v1/auth/access-token
Send a POST request to get your access token
curl -X 'POST' 'https://api-gateway.getnuvo.com/dp/api/v1/auth/access-token' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"license_key": LICENSE_KEY,
"auth": {
"identifier": E-MAIL,
"type": "USER"
}
}' # Replace LICENSE_KEY with your license key & E-MAIL with a user's email
Create a pipeline template
Learn more about our pipeline template API here
Use this endpoint
Endpoint
POST api-gateway.getnuvo.com/dp/api/v1/pipeline-template
Send a POST request to create a pipeline template
curl -X 'POST' 'https://api-gateway.getnuvo.com/dp/api/v1/pipeline-template' \
-H 'accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"name": "Pipeline template",
"pipeline_name": "Pipeline name",
"input_connectors": ["6695092a8266536c28b97000"],
"output_connectors": ["66bb5afde31b39b57a580000"],
"schedule_config": {
"frequency": "HOURLY",
"interval": 6,
"starts_on": "2024-09-21T06:57:06.672Z",
"ends_on": "2024-09-30T06:57:06.672Z"
},
"error_config": {
"error_threshold": 32
}
}' # Replace ACCESS_TOKEN with the access token from the first step
Use a pipeline template in CreatePipeline
Learn more about implementing the CreatePipeline
embeddable here.
Refer to the pipeline template as shown in the code snippet below:
<CreatePipeline
accessToken="ACCESS_TOKEN"
templateId="TEMPLATE_ID" // Add the ID of the newly created template here
settings={{
i18nOverrides: {},
language: "en",
modal: true,
allowTdmCreation: false,
allowInputConnectorCreation: false,
allowOutputConnectorCreation: false,
}}
onPipelineCreate={({ data }) => {
// runs after the user has confirmed the final step of the flow to create a pipeline
// data: pipeline object after creation
}}
onClose={() => {
// runs when the creation workflow is closed via the "Cancel" button or the "X" button
}}
onConnectorCreate={({ reload, connectorType }) => {
// runs when the user clicks on "Create connector" when selecting an input or output connector
// reload: on function call, refetch the connectors
// connectorType: "input" or "output"
}}
onTdmCreate={({ reload }) => {
// runs when the user clicks on "Create target data model" when selecting a target data model
// reload: on function call, refetch the TDMs
}}
/>