Workflow Endpoints
Workflow Endpoints and Parameters
To learn more about the objects relations and how to use them in the API, go to the Object Relations section.
For more information about workflows, visit the Workflows help page.
Upload a New Workflow
To upload a new workflow, use the POST {baseURL}/v3/workflows
endpoint.
Parameters
file (file): Required. Choose the file you want to upload to the system. The media type must be a XYZP file.
name (string): Required. Enter a workflow name.
ownerId (string): Required. Enter the ID of the owner.
workerTag (string): Optional. Specify the worker tag defined in the workers to help assign jobs to certain worker nodes. For more information, visit the Worker help page.
districtTags (string): Optional. Submit as JSON formatted array, for example, ["id1", "id2"]. Use districts to group shared, public workflows by tags so that users can easily find them. For more information, visit the Districts help page.
comments (string): Optional. Enter your comments.
isPublic (boolean): Required. Select "true" to make the workflow publicly available. Select "false" to make the workflow private and publicly unavailable.
isReadyForMigration (boolean): Required. Select whether the workflow is ready to be migrated. For more information about the migration from one Server environment to another, see the Enable Workflows for Migration help page.
sourceAppId (string): Optional. Sets the source app id of a workflow. You can use it as the "sourceId" reference for the
POST admin/v1/workflows
endpoint. Providing a pre-existing sourceAppId will result in an invalid request.othersMayDownload (boolean): Required. Specify whether other users may download this workflow.
othersCanExecute (boolean): Required. Specify whether other users can execute this workflow.
executionMode (string): Required. Accepted values are "Safe", "SemiSafe", and "Standard". For more information about the execution mode, see the Safe and Semi-safe Run Modes: Blocked Tools, Events, and Data Connectors help page.
hasPrivateDataExemption (boolean): Optional. Give an exemption to allow a workflow with private data to run. Select "true" to allow an exemption or "false" to deny an exemption. For more information, visit the Workflow Options in Admin page.
workflowCredentialType (string): Required. Accepted values are "Default", "Required", and "Specific".
credentialId (string): Optional. Specify the credentialId for this workflow.
collectionIds (string): Optional. Enter the collectionId(s) where this workflow should be added. Submit as JSON formatted array, for example: ["id1", "id2"].
Upload a New Version to an Existing Workflow
To upload a new version to an existing workflow, use the POST {baseURL}/v3/workflows/{workflowId}/versions
endpoint.
Parameters
workflowId (string): Required. Enter the workflow ID for which you want to upload a new version.
file (file): Required. Choose the file you want to upload to the system as a new version.
name (string): Required. Enter the workflow name.
ownerId (string): Required. Enter the ID of the owner.
othersMayDownload (boolean): Required. The default is set to "true".
othersCanExecute (boolean): Required. The default is set to "true".
executionMode (string): Required. Accepted values are "Safe", "SemiSafe", and "Standard". For more information about the execution mode, see the Safe and Semi-safe Run Modes: Blocked Tools, Events, and Data Connectors help page.
hasPrivateDataExemption (boolean): Optional. Give an exemption to allow a workflow with private data to run. Select "true" to allow an exemption or "false" to deny an exemption. For more information, visit the Workflow Options in Admin page.
comments (string): Optional. Enter your comments.
makePublished (boolean): Required. The default is set to "true". The makePublished parameter is a way to control whether the new version of a workflow that you push to Server should be the published version or not. You can set the value to "false" when you push the workflow to Server, and then only you will have the ability to run it.
workflowCredentialType (string): Required. Enter the credential type to be used for this workflow. Accepted values are "Default", "Required", and "Specific".
credentialId (string): Optional. Specify the credentialId for this workflow. For more information about credential endpoints, go to Credential Endpoints.
Retrieve All Workflows
To get information about all workflow records, use the GET {baseURL}/v3/workflows/
endpoint.
Parameters
view (string): Optional. Select how you want to display workflow information. Can be left without a value. You can select from the following values: ‘Default’ and ‘Full’. If this parameter is set to 'Default’, then a reduced view object will be returned. When not specified, the ‘Default’ value is used.
name (string): Optional. Enter the name of the workflow in case you want to filter the workflows by name.
ownerId (string): Optional. Enter the ID of the owner in case you want to filter the workflows by their owner.
createdAfter (string): Optional. Enter the date and time after which the workflow was created. Enter the date and time in ISO8601 format.
createdBefore (string): Optional. Enter the date and time before which the workflow was created. Enter the date and time in ISO8601 format.
Request Example: cURL
curl --location --request GET 'http://localhost/webapi/v3/workflows' \ --header 'Authorization: Bearer BearerTokenGoesHere'
Retrieve a Specific Workflow Record
To get information about a specific workflow, use the GET {baseURL}/v3/workflows/{workflowId}
endpoint.
Parameters
workflowId (string): Required. Enter the workflow ID to get information about this workflow.
Request Example: cURL
curl --location --request GET 'http://localhost/webapi/v3/workflows/61db393fc565144387d451fb' \ --header 'Authorization: Bearer BearerTokenGoesHere'
Update an Existing Workflow
To change information about an existing workflow, use the PUT {baseURL}/v3/workflows/{workflowId}
endpoint.
Note
To change the ownerId, the new owner must be in the same subscription as the current owner.
Parameters
workflowId (string): Required. Enter the ID of the workflow you want to update.
updateWorkflowContract (body): Required. Enter the workflow information you want to update.
name (string): Required. Enter the workflow name.
versionId (string): Required. Enter the version ID.
makePublished (boolean): Optional. When not specified, the value stays the same as before. The makePublished parameter is a way to control whether the new version of a workflow that you push to Server should be the published version or not. You can set the value to "false" when you push the workflow to Server, and then only you will have the ability to run it.
ownerId (string): Required. Enter the owner ID.
workerTag (string): Required. When there is no workerTag, use "" instead.
districtTags (string): Required. Enter the district tags. Use districts to group shared, public workflows by tags so that users can easily find them. For more information, visit the Districts help page.
comments (string): Required. Enter your comments.
isPublic (boolean): Optional. When not specified, the value stays the same as before.
isReadyForMigration (boolean): Optional. When not specified, the value stays the same as before.
othersMayDownload (boolean): Optional. When not specified, the value stays the same as before. When set to "false" for a public workflow, the workflow will be unusable.
othersCanExecute (boolean): Optional. When not specified, the value stays the same as before. When set to "false" for a public workflow, the workflow will be unusable.
executionMode (string): Optional. Accepted values are "Safe", "SemiSafe", "Standard". For more information about the execution mode, see the Safe and Semi-safe Run Modes: Blocked Tools, Events, and Data Connectors help page.
hasPrivateDataExemption (boolean): Optional. Give an exemption to allow a workflow with private data to run. Select "true" to allow an exemption or "false" to deny an exemption. When not specified, the value stays the same as before. For more information, visit the Workflow Options in Admin page.
Download a Workflow Package
To download a workflow package, use the GET {baseURL}/v3/workflows/{workflowId}/package
endpoint.
Parameters
workflowId (string): Required. Enter the workflow ID for which you want to download the package.
versionId (string): Optional. Enter the specific version ID of a workflow. If no version is provided, then the published version is downloaded.
Note
If the versionID is double-digit, it might reach the size limit and you might get a '414 - URI Too Long' error. In this case, please parse the JSON versionID string and trim it to the most recent version only. This will keep the field length under control.
Request Example: cURL
curl -X GET --header 'Accept: application/octet-stream' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4be7dc6e24bb8ff0/package'
Retrieve Question Information for a Workflow
To get question information for a workflow, use the GET {baseURL}/v3/workflows/{workflowId}/questions
endpoint.
Parameters
workflowId (string): Required. Enter the workflow ID for which you want to retrieve the information.
versionId (string): Optional. Enter the specific version ID of a workflow. If no version is provided, then the published version is used.
Request Example: cURL
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4bc6e24b78d0b8ff0/questions'
Get Information about Jobs for a Specific Workflow
To get information about jobs for a specific workflow, use the GET {baseURL}/v3/workflows/{workflowId}/jobs
endpoint.
Parameters
workflowId (string): Required. Enter the workflow ID for which you want to retrieve the information.
sortField (string): Optional.
direction (string): Optional.
offset (string): Optional.
limit (string): Optional.
Request Example: cURL
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4be6e24b78d0b8ff0/jobs'
Delete a Workflow
To delete a specific workflow, use the DELETE {baseURL}/v3/workflows/{workflowId}
endpoint.
Parameters
workflowId (string): Required. Enter the workflow ID to delete.
force (boolean): Optional. When not selected, the default value is "false". If a workflow is scheduled, the parameter set to "true" will delete all schedules before deleting it.
Request Example: cURL
curl -X DELETE --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a752fdc6e278d0ba40b'
Objects Relations
If you are uploading a workflow, you can use created objects as follows:
Object created: "workflowId" (for example, "id": "7917969784f84bd09442f66996ecb8f3")
You can use it as:
workflowId if you are adding workflows to a collection.
appId if you are removing workflows from a collection.
workflowId if you are searching for a specific workflow.
workflowId if you are deleting a specific workflow.
workflowId if you are updating an existing workflow.
workflowId if you are uploading a new version of an existing workflow.
workflowId if you are searching for a schedule.
workflowId if you are creating a schedule.
workflowId if you are downloading a workflow package.
workflowId if you want to retrieve question information for a workflow.
workflowId if you want to get info about jobs for a workflow.
Postman Request Examples
GET /v3/workflows/{workflowId}
To know more about Postman requests, visit the How to Use Postman help page.