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.
To upload a new workflow, use the POST {baseURL}/v3/workflows
endpoint.
file (file): Required. Select the actual file you want to upload to the system. The media type must be a YXZP file.
name (string): Required. Enter a workflow name. This is the name of the workflow to display in Server UI.
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"].
To upload a new version to an existing workflow, use the POST {baseURL}/v3/workflows/{workflowId}/versions
endpoint.
workflowId (string): Required. Enter the workflow ID for which you want to upload a new version.
file (file): Required. Select the actual file you want to upload to the system as a new version. The media type must be a YXZP file.
name (string): Required. Enter the workflow name. This is the name of the workflow to display in Server UI.
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.
To get information about all workflow records, use the GET {baseURL}/v3/workflows/
endpoint.
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. This is the name of the workflow displayed in Server UI.
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.
curl --location --request GET 'http://localhost/webapi/v3/workflows' \ --header 'Authorization: Bearer BearerTokenGoesHere'
To get information about a specific workflow, use the GET {baseURL}/v3/workflows/{workflowId}
endpoint.
workflowId (string): Required. Enter the workflow ID to get information about this workflow.
curl --location --request GET 'http://localhost/webapi/v3/workflows/61db393fc565144387d451fb' \ --header 'Authorization: Bearer BearerTokenGoesHere'
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.
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. This is the name of the workflow to display in Server UI.
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.
To download a workflow package, use the GET {baseURL}/v3/workflows/{workflowId}/package
endpoint.
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.
curl -X GET --header 'Accept: application/octet-stream' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4be7dc6e24bb8ff0/package'
To get question information for a workflow, use the GET {baseURL}/v3/workflows/{workflowId}/questions
endpoint.
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.
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4bc6e24b78d0b8ff0/questions'
To get information about jobs for a specific workflow, use the GET {baseURL}/v3/workflows/{workflowId}/jobs
endpoint.
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.
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4be6e24b78d0b8ff0/jobs'
To delete a specific workflow, use the DELETE {baseURL}/v3/workflows/{workflowId}
endpoint.
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.
curl -X DELETE --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a752fdc6e278d0ba40b'
To create a new job and add it to the queue, use the POST /v3/workflows/{workflowId}/jobs
endpoint.
workflowId (string): Required. Enter a workflow ID you want to schedule.
contract (body): To create a new job, specify the following parameters:
workerTag (string): Optional. Specify the assigned worker. If not specified, the value will be "none".
credentialId (string): Optional. Specify the credentialId for this workflow.
questions (string): Optional. For an analytic app, specify the questions and answers to run the workflow.
priority (string): Optional. Specify the priority for running the schedule. Choose from the following options: "Low", "Medium", "High", and "Critical". If not specified, the default value will be ‘Low’.
REQUEST EXAMPLE: cURL
Example of a request to create a job:
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' -d '{ \ "workerTag": "", \ "credentialId": "", \ "questions": [], \ "priority": "Low" \ }' 'http://localhost/webapi/v3/workflows/651faa8bde3e5381fd0dac29/jobs'{ "workerTag": "tag1", "credentialId": "652e6f90ea174cd34f6779d2", "questions": [ { "name": "Drop_Down", "value": "true" } ], "priority": "Low"}
To transfer a specific workflow to a specific owner, together with schedules if desired, use the PUT {baseURL}/v3/workflows/{workflowId}/transfer
endpoint.
Note
Only Curators can use this API endpoint.
If any of the workflows require DCM connections, Server connections, or specific run as credentials to run, these items need to be updated before the workflow can run.
If users are not in the same studio and when a workflow is transferred to the new studio, all other users in the new owner's studio will also receive access to the workflow, and all users from the old studio will lose access.
Workflows can only be transferred to a user with the Artisan or Curator role.
If transferring schedules, the new owner must have access to the scheduled workflow, otherwise you won’t be able to transfer that workflow to the new owner.
If transferring schedules, the new owner must have permission to schedule workflows.
If the user is deleted, it returns a list of schedule Ids that will be broken or disabled after transfer.
workflowId (string): Required. Specify the Id of the workflow to transfer.
contract (body): Required. Specify the following information:
ownerId (string): Specify the Id of the new owner.
transferSchedules (Boolean): Specify whether the schedules should be transferred to a new owner together with the workflow. Only the schedules owned by the current workflow owner will be transferred to the new owner.
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \ "ownerId": "63d17f6cb049da66d0afd4e2", \ "transferSchedules": true \ }' 'http://localhost/webapi/v3/workflows/7917969784f84bd09442f66996ecb8f3/transfer'
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.
GET /v3/workflows/{workflowId}

To know more about Postman requests, visit the How to Use Postman help page.