# Projects
WHO CAN USE THESE APIS?
Accounts with the Environments feature enabled can use the APIs in this guide. Requests sent from accounts without this feature will receive a 400 - Environments not provisioned
response.
In Workato, projects are used to organize automation assets and control access. A project holds a set of related assets for your automations, including connections, recipes, and subfolders.
The Project APIs enable you to programmatically manage and deploy projects to the environments provisioned in your workspace.
# Understanding project deployment
In Workato, there are two ways to deploy projects:
Build and then deploy. This approach can be used if you want to commit the package to an external version control system. Steps for accomplishing this would be similar to the following:
1Build the project:
POST /api/projects/:id/build
2Verify the project built successfully:
GET /api/project_builds/:id
3If committing to a version control system like GitHub, use the
download_url
from Step 2's response to download the package.4Commit the package to your version control system.
5Deploy the project build to an environment:
POST /api/project_builds/:id/deploy?environment_type=:environment_type
6Verify the project deployed successfully:
GET /api/deployments/:id
Build and deploy in one step. If you don't need to commit the project to a version control system, you can use this approach:
1Build and deploy the project to an environment:
POST /api/projects/:id/deploy?environment_type=:environment_type
2Verify the project deployed successfully:
GET /api/deployments/:id
# Quick reference
PRIVATE BETA
The following endpoints are in private beta:
- List eligible reviewers for a deployment
- Assign reviewers to a deployment
- Submit a deployment for review
- Approve a deployment
- Reject a deployment
- Re-open a deployment for review
- Update a deployment review comment
- Deploy an approved deployment
Private beta features are available in production but only to selected customers. Customers must opt in and be accepted into the beta.
During the private beta, Workato may update its functionality or change its availability without prior notice.
Type | Resource | Description |
---|---|---|
POST | /api/projects/:id/build | Builds a project. Use the Deploy a project build endpoint to deploy the project to an environment. |
GET | /api/project_builds/:id | Retrieves a project build by its unique ID. |
POST | /api/project_builds/:id/deploy | Deploys a project build to an environment. Use the Build a project endpoint to build the project first. |
POST | /api/projects/:id/deploy | Builds and deploys a project to an environment. |
GET | /api/deployments/:id | Retrieves a single deployment by its unique ID. |
GET | /api/deployments | Retrieves a list of deployments. Use query parameters to filter results by project, folder, or date range. |
GET | /api/deployments/:id/eligible_reviewers | Retrieves a list of eligible reviewers that can be assigned to review a deployment. |
POST | /api/deployments/:id/assign_reviewers | Assigns reviewers to a deployment. |
POST | /api/deployments/:id/submit_for_review | Submits a deployment for review. |
POST | /api/deployments/:id/approve | Approves a deployment. |
POST | /api/deployments/:id/reject | Rejects a deployment. |
POST | /api/deployments/:id/reopen | Re-opens a deployment for review. |
POST | /api/deployments/:id/update_review_comment | Updates a deployment review comment. |
POST | /api/deployments/:id/deploy | Deploys an approved deployment. |
# Build a project
Builds a project. Use the Deploy a project build endpoint to deploy the project to an environment.
POST /api/projects/:id/build
# Request
# URL parameters
Name | Type | Description |
---|---|---|
id |
integer
required | A project ID. This parameter accepts the following:
|
# Payload
Name | Type | Description |
---|---|---|
description |
string
optional | A brief description of the build. |
include_test_cases |
boolean
optional | Instructs the build to include test cases or not. |
include_tags |
boolean
optional | Specifies whether to include tags assigned to assets in the build. Tags are excluded from the build when set to false . Set to false by default.
|
# Request examples
# Using a project ID
curl -X POST https://www.workato.com/api/projects/10416/build \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"description": "Fixes bugs",
"include_tags": true
}'
# Using a folder ID
curl -X POST https://www.workato.com/api/projects/f660222/build \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"description": "Fixes bugs",
"include_tags": true
}'
# Responses
200 OK
If successful, the API will return a 200 OK
status and a single project build object.
{
"id": 46,
"created_at": "2021-12-09T22:09:29.997-08:00",
"updated_at": "2021-12-09T22:09:30.004-08:00",
"description": "Fixes bugs",
"project_id": "10416",
"state": "pending",
"performed_by_name": "Finn the Human",
"download_url": null
}
Name | Type | Description |
---|---|---|
id | integer | The build ID. |
created_at | timestamp | The time the build was created. |
updated_at | timestamp | The time the build was last updated. |
description | string | The build description. This is null if not provided in the request.
|
include_test_cases | boolean | Whether the build includes test cases or not. This is null if not provided in the request.
|
project_build_id | integer | The ID of the project build associated with the build. |
project_id | string | The ID of the project that was built. |
state | string | The current state of the build. |
performed_by_name | string | The name of the user who built the project. |
download_url | string | A URL from which the project build can be downloaded. |
The API may return a Missing environment_type parameter:
400 BAD REQUEST - MISSING REQUIRED PARAMETERS
400 BAD REQUEST
status and the following errors if the request is malformed:
{
"message": "Missing parameter environment_type"
}
The API may return a
404 NOT FOUND - INVALID PARAMETERS
404 NOT FOUND
status and a Not found
error for the following reasons:
id
environment_type
The API may return a
404 NOT FOUND - INVALID URI
404 NOT FOUND
status and an API not found
error for the following reasons:
# Get a project build
Retrieves a project build by its unique ID.
GET /api/project_builds/:id
# Request
# URL parameters
Name | Type | Description |
---|---|---|
id |
integer
required | The ID of the project build to retrieve. |
# Request examples
curl -X POST https://www.workato.com/api/project_builds/72 \
-H 'Authorization: Bearer <api_token>'
# Responses
200 OK
If successful, the API will return a 200 OK
status and a single project build object.
{
"id": 72,
"created_at": "2021-12-10T11:39:15.738-08:00",
"updated_at": "2021-12-10T11:39:16.218-08:00",
"description": null,
"project_id": "10416",
"state": "success",
"performed_by_name": "Erin Cochran",
"download_url": "https://workato-assets.s3.us-west-2.amazonaws.com/packages/zip_files/000/714/699/original/<PROJECT_NAME_DATE>.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=<CREDENTIAL>"
}
Name | Type | Description |
---|---|---|
id | integer | The build ID. |
created_at | timestamp | The time the build was created. |
updated_at | timestamp | The time the build was last updated. |
description | string | The build description. This will be null if not provided in the request that created the build.
|
project_id | string | The ID of the project that was built. |
state | string | The current state of the build. |
performed_by_name | string | The name of the user who built the project. |
download_url | string | A URL from which the project build can be downloaded. |
404 NOT FOUND - INVALID PARAMETERS
The API may return a 404 NOT FOUND
status and a Not found
error for the following reasons:
- Invalid project build
id
The API may return a
404 NOT FOUND - INVALID URI
404 NOT FOUND
status and an API not found
error for the following reasons:
# Deploy a project build
Deploys a project build to an environment. Use the Build a project endpoint to build the project first.
POST /api/project_builds/:id/deploy
# Request
# URL parameters
Name | Type | Description |
---|---|---|
id |
integer
required | The ID of the build to be deployed. |
# Payload
PAYLOAD FIELDS AS QUERY PARAMETERS
The following payload fields can also be supplied as query parameters.
Name | Type | Description |
---|---|---|
environment_type |
string
required | Specifies the deployment environment for the build. Accepted values include the following:
|
title |
string
optional | The title of the build. |
description |
string
optional | A brief description of the build. |
include_tags |
boolean
optional | Specifies whether to include tags assigned to assets in the deployed build. Tags exist at the workspace level but are not applied to assets in the target environment when set to false . This is set to false by default.
|
# Request example
curl -X POST https://www.workato.com/api/project_builds/46/deploy \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"environment_type": "test",
"include_tags": true
}'
# Responses
200 OK
If successful, the API will return a 200 OK
status and a single deployment object.
{
"id": 67,
"created_at": "2021-12-10T11:59:03.426-08:00",
"updated_at": "2021-12-10T11:59:03.426-08:00",
"title": null,
"description": null,
"project_build_id": 46,
"environment_type": "test",
"project_id": "10416",
"state": "pending",
"detailed_state": "pending",
"performed_by_name": "Alex",
"assets": null
}
Initially, the assets
field is set to null
because the deployment process is still in progress. When you call this API, it returns the newly created deployment object and starts a background job to deploy the assets asynchronously. For details on the fields included in the assets
array after the deployment is complete, see Get a deployment.
Name | Type | Description |
---|---|---|
id | integer | The deployment ID. |
created_at | timestamp | The time the deployment was created. |
updated_at | timestamp | The time the deployment was last updated. |
title | string | The deployment title. This will be null if not provided in the request.
|
description | string | The deployment description. This will be null if not provided in the request.
|
project_build_id | integer | The ID of the project build associated with the deployment. |
environment_type | string | The environment the build was deployed to. |
project_id | string | The ID of the project associated with the deployed build. |
state | string | The current state of the deployment. |
detailed_state | string | A detailed description about the current state of the deployment. |
performed_by_name | string | The name of the user who deployed the build. |
assets | array | An array of assets included in the deployment. |
The API may return a Missing environment_type parameter:
400 BAD REQUEST - MISSING REQUIRED PARAMETERS
400 BAD REQUEST
status and the following errors if the request is malformed:
{
"message": "Missing parameter environment_type"
}
The API may return a
404 NOT FOUND - INVALID PARAMETERS
404 NOT FOUND
status and a Not found
error for the following reasons:
id
environment_type
The API may return a
404 NOT FOUND - INVALID URI
404 NOT FOUND
status and an API not found
error for the following reasons:
# Deploy a project
Builds and deploys a project to an environment.
POST /api/projects/:id/deploy
# Request
# URL parameters
Name | Type | Description |
---|---|---|
id |
integer
required | A project ID. This parameter accepts the following:
|
# Payload
PAYLOAD FIELDS AS QUERY PARAMETERS
The following payload fields can also be supplied as query parameters.
Name | Type | Description |
---|---|---|
environment_type |
string
required | Specifies the deployment environment. Accepted values include the following:
|
title |
string
optional | The title of the deployment. |
description |
string
optional | A brief description of the deployment. |
include_tags |
boolean
optional | Specifies whether to include tags assigned to assets in the deployment. Tags exist at the workspace level but are not applied to assets in the target environment when set to false . This is set to false by default.
|
# Request examples
# Using a project ID
curl -X POST https://www.workato.com/api/projects/10416/deploy \
-H 'Authorization: Bearer <api_token>'
-H 'Content-Type: application/json' \
-d '{
"environment_type": "test",
"include_tags": true
}'
# Using a folder ID
curl -X POST https://www.workato.com/api/projects/f660222/deploy \
-H 'Authorization: Bearer <api_token>'
-H 'Content-Type: application/json' \
-d '{
"environment_type": "test",
"include_tags": true
}'
# Responses
200 OK
If successful, the API will return a 200 OK
status and a single deployment object.
{
"id": 47,
"created_at": "2021-12-09T22:37:30.025-08:00",
"updated_at": "2021-12-09T22:37:30.025-08:00",
"title": null,
"description": null,
"project_build_id": 52,
"environment_type": "test",
"project_id": "10416",
"state": "pending",
"performed_by_name": "Alex",
"assets": null
}
Initially, the assets
field is set to null
because the deployment process is still in progress. When you call this API, it returns the newly created deployment object and starts a background job to deploy the assets asynchronously. For details on the fields included in the assets
array after the deployment is complete, see Get a deployment.
Name | Type | Description |
---|---|---|
id | integer | The deployment ID. |
created_at | timestamp | The time the deployment was created. |
updated_at | timestamp | The time the deployment was last updated. |
title | string | The deployment title. This is null if not provided in the request.
|
description | string | The deployment description. This will be null if not provided in the request.
|
project_build_id | integer | The ID of the project build associated with the deployment. |
environment_type | string | The environment the project was deployed to. |
project_id | string | The ID of the project that was deployed. |
state | string | The current state of the deployment. |
detailed_state | string | A detailed description about the current state of the deployment. |
performed_by_name | string | The name of the user who deployed the project. |
assets | array | An array of assets included in the deployment. |
The API may return a Missing environment_type parameter:
400 BAD REQUEST - MISSING REQUIRED PARAMETERS
400 BAD REQUEST
status and the following errors if the request is malformed:
{
"message": "Missing parameter environment_type"
}
The API may return a
404 NOT FOUND - INVALID PARAMETERS
404 NOT FOUND
status and a Not found
error for the following reasons:
id
environment_type
The API may return a
404 NOT FOUND - INVALID URI
404 NOT FOUND
status and an API not found
error for the following reasons:
# Get a deployment
Retrieves a single deployment by its unique ID.
GET /api/deployments/:id
# Request
# URL parameters
Name | Type | Description |
---|---|---|
id |
integer
required | The ID of the deployment to be retrieved. |
# Request example
curl -X GET https://www.workato.com/api/deployments/43 \
-H 'Authorization: Bearer <api_token>'
# Responses
200 OK
If successful, the API will return a 200 OK
status and a single deployment object.
{
// Fields related to reviews and approvals (for example, review_state, reviews, status, comment, reviewer_name)
// are returned only when reviews and approvals are enabled.
"id": 43,
"created_at": "2024-10-15T12:28:40.779-07:00",
"updated_at": "2024-10-15T12:29:21.292-07:00",
"title": "Sample deployment",
"description": "",
"project_build_id": 46,
"environment_type": "test",
"project_id": "10416",
"state": "success",
"detailed_state": "deploy_finished",
"performed_by_name": "Charlie",
"assets": [
{
"id": null,
"name": "My Salesforce account",
"type": "connection",
"state": "new",
"folder": "Sample deployment"
},
{
"id": null,
"name": "My Zendesk account",
"type": "connection",
"state": "new",
"folder": "Sample deployment"
},
{
"id": null,
"name": "New Salesforce account will create Zendesk organization",
"type": "recipe",
"folder": "Sample deployment"
},
],
"review_state": "review_approved",
"reviews": [
{
"status": "approved",
"comment": "LGTM!",
"reviewer_name": "Alex"
}
]
}
Name | Type | Description |
---|---|---|
id | integer | The deployment ID. |
created_at | timestamp | The time the deployment was created. |
updated_at | timestamp | The time the deployment was last updated. |
description | string | The deployment description. This will be null if not provided in the request that created the deployment.
|
project_build_id | integer | The ID of the project build associated with the deployment. |
environment_type | string | The environment associated with the deployment. |
project_id | string | The ID of the project associated with the deployment. |
state | string | The current state of the deployment. |
detailed_state | string | A detailed description about the current state of the deployment. |
performed_by_name | string | The name of the user who performed the deployment. |
assets | array | An array of assets included in the deployment. |
assets[id] | integer | The asset ID. This value is null for new assets not yet created in the target environment. Edited or removed assets contain a non-null ID.
|
assets[name] | string | The name of the asset. |
assets[type] | string | The asset type. |
assets[state] | string | The state of the asset. For example, new .
|
assets[folder] | string | The folder containing the asset. |
404 NOT FOUND - INVALID PARAMETERS
The API may return a 404 NOT FOUND
status and a Not found
error for the following reasons:
- Invalid
deployment_id
The API may return a
404 NOT FOUND - INVALID PARAMETERS
404 NOT FOUND
status and a Not found
error for the following reasons:
id
environment_type
The API may return a
404 NOT FOUND - INVALID URI
404 NOT FOUND
status and an API not found
error for the following reasons:
# List deployments
Retrieves a list of deployments. Query parameters may be used to filter results to a specific project, folder, date range, etc.
GET /api/deployments
# Request
# Query parameters
Name | Type | Description |
---|---|---|
project_id |
string
optional | A project ID. If provided, only deployments associated with the project will be included in the response. |
folder_id |
string
optional | A folder ID, formatted as f{:folder_id} . For example: f660222 . If provided, only deployments associated with the folder will be included in the response.
Use the List folders endpoint to retrieve these IDs. |
environment_type |
string
optional | An environment type. Only deployments associated with the specified environment are included in the response if provided. Accepted values include the following:
|
state |
string
optional | The state of the deployments to retrieve. If provided, only deployments with the provided state will be included in the response. Must be one of:
|
from |
timestamp
optional | Deployments created after this time will be included in the response. The value must be an ISO 8601 timestamp. |
to |
timestamp
optional | Deployments created after this time will be included in the response. The value must be an ISO 8601 timestamp. |
# Request examples
# Without query parameters
curl -X GET https://www.workato.com/api/deployments \
-H 'Authorization: Bearer <api_token>'
# With a folder ID
curl -X GET https://www.workato.com/api/deployments?folder_id=f660222 \
-H 'Authorization: Bearer <api_token>'
# Responses
200 OK
If successful, the API will return a 200 OK
status and a list of deployment objects.
{
// Fields related to reviews and approvals (for example, review_state, reviews, status, comment, reviewer_name)
// are returned only when reviews and approvals are enabled.
"items": [
{
"id": 43,
"created_at": "2024-10-15T12:28:40.779-07:00",
"updated_at": "2024-10-15T12:29:21.292-07:00",
"title": "Sample deployment",
"description": "",
"project_build_id": 46,
"environment_type": "test",
"project_id": "10416",
"state": "success",
"detailed_state": "deploy_finished",
"performed_by_name": "Charlie",
"assets": [
{
"id": null,
"name": "My Salesforce account",
"type": "connection",
"state": "new",
"folder": "Sample deployment"
},
{
"id": null,
"name": "My Zendesk account",
"type": "connection",
"state": "new",
"folder": "Sample deployment"
},
{
"id": null,
"name": "New Salesforce account will create Zendesk organization",
"type": "recipe",
"folder": "Sample deployment"
},
],
"review_state": "review_approved",
"reviews": [
{
"status": "approved",
"comment": "LGTM!",
"reviewer_name": "Alex"
}
]
},
{
"id": 42,
"created_at": "2024-10-14T12:28:40.779-07:00",
"updated_at": "2024-10-14T12:29:21.292-07:00",
"title": "",
"description": "",
"project_build_id": 45,
"environment_type": "test",
"project_id": "10416",
"state": "pending",
"detailed_state": "pending_review",
"performed_by_name": "Charlie",
"assets": [
{
"id": null,
"name": "My Salesforce account",
"type": "connection",
"state": "new",
"folder": "Sample deployment"
},
{
"id": null,
"name": "My Zendesk account",
"type": "connection",
"state": "new",
"folder": "Sample deployment"
},
{
"id": null,
"name": "New Salesforce account will create Zendesk organization",
"type": "recipe",
"folder": "Sample deployment"
},
],
"review_state": "pending_review",
"reviews": [
{
"status": "pending",
"comment": null,
"reviewer_name": "Alex"
}
]
},
]
}
Name | Type | Description |
---|---|---|
items | array | A list of deployment objects. |
id | integer | The deployment ID. |
created_at | timestamp | The time the deployment was created. |
updated_at | timestamp | The time the deployment was last updated. |
title | string | The title of the deployment. |
description | string | The deployment description. This will be null if not provided in the request that created the deployment. |
project_build_id | integer | The ID of the project build associated with the deployment. |
environment_type | string | The environment associated with the deployment. |
project_id | string | The ID of the project associated with the deployment. |
state | string | The current state of the deployment. |
detailed_state | string | Additional details about the current state of the deployment. |
performed_by_name | string | The name of the user who performed the deployment. |
assets | array | An array of assets included in the deployment. |
assets[id] | integer | The asset ID. This value is null for new assets not yet created in the target environment. Edited or removed assets contain a non-null ID. |
assets[name] | string | The name of the asset. |
assets[type] | string | The asset type. |
assets[state] | string | The state of the asset. For example, new . |
assets[folder] | string | The folder containing the asset. |
review_state | string | The state of the review. Possible values include pending_review , review_approved , and review_rejected . |
reviews | array of objects | An array of objects that represent reviews for the deployment. |
status | string | The status of a specific review. Possible values include pending , approved , or rejected . |
comment | string | The comment left by the reviewer, if available. |
reviewer_name | string | The name of the reviewer. |
The API may return a
404 NOT FOUND - INVALID URI
404 NOT FOUND
status and an API not found
error for the following reasons:
# List eligible reviewers for a deployment
Retrieves a list of eligible reviewers that can be assigned to review a deployment. Reviewers must be collaborators with review permissions in both the DEV environment and the target deployment environment. The Require review and approval toggle must be enabled in Workspace admin > Settings > Deployments to access this endpoint.
GET /api/deployments/:id/eligible_reviewers
# URL parameters
Name | Type | Description |
---|---|---|
id | integer required | The unique identifier of the deployment for which you plan to retrieve eligible reviewers. |
# Sample request
curl -X GET https://www.workato.com/api/deployments/6390/eligible_reviewers \
-H 'Authorization: Bearer <api_token>'
# Response
{
"reviewers": [
{
"id": 29036,
"name": "Jie",
"avatar_url": ""
},
{
"id": 30143,
"name": "Alex",
"avatar_url": ""
},
{
"id": 31836,
"name": "Charlie",
"avatar_url": ""
}
]
}
# Assign reviewers to a deployment
Assigns reviewers to a deployment. You can assign reviewers either before or after submitting the deployment for review. The Require review and approval toggle must be enabled in Workspace admin > Settings > Deployments to access this endpoint.
This endpoint can also be used to unassign reviewers. To unassign a reviewer, call the endpoint again and provide only the IDs of the users who should remain assigned to the deployment. Unassigning a reviewer removes their review from the deployment.
POST /api/deployments/:id/assign_reviewers
# URL parameters
Name | Type | Description |
---|---|---|
id | integer required | The unique identifier of the deployment where you plan to assign reviewers. |
# Payload
Name | Type | Description |
---|---|---|
reviewer_ids | array of strings required | An array of user IDs to assign as reviewers for the deployment. |
# Sample request
curl -X POST https://www.workato.com/api/deployments/6390/assign_reviewers \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"reviewer_ids": ["29036", "30143", "31836"]
}'
# Response
{
"reviews": [
{
"deployment_id": 6390,
"reviewer_id": 29036,
"status": "pending",
"comment": "",
"updated_at": "2024-10-11T10:54:26.075-07:00"
},
{
"deployment_id": 6390,
"reviewer_id": 30143,
"status": "pending",
"comment": "",
"updated_at": "2024-10-11T10:31:07.047-07:00"
},
{
"deployment_id": 6390,
"reviewer_id": 31836,
"status": "pending",
"comment": "",
"updated_at": "2024-10-11T10:54:26.099-07:00"
}
],
"authors": [
{
"id": 29036,
"name": "Jie",
"avatar_url": ""
},
{
"id": 30143,
"name": "Alex",
"avatar_url": ""
},
{
"id": 31836,
"name": "Charlie",
"avatar_url": ""
}
]
}
# Submit a deployment for review
Submits a deployment for review. Before calling this endpoint, use the Build a project and Deploy a project build endpoints to generate and retrieve the deployment ID. The Require review and approval toggle must be enabled in Workspace admin > Settings > Deployments to access this endpoint.
POST /api/deployments/:id/submit_for_review
# URL parameters
Name | Type | Description |
---|---|---|
id | integer required | The unique identifier of the deployment to submit for review. |
# Sample request
curl -X POST https://www.workato.com/api/deployments/6390/submit_for_review \
-H 'Authorization: Bearer <api_token>'
# Response
{
"success": true
}
# Approve a deployment
Approves a deployment. The Require review and approval toggle must be enabled in Workspace admin > Settings > Deployments to access this endpoint.
POST /api/deployments/:id/approve
# URL parameters
Name | Type | Description |
---|---|---|
id | integer required | The unique identifier of the deployment to approve. |
# Payload
Name | Type | Description |
---|---|---|
comment | string required | A comment explaining the approval decision. |
# Sample request
curl -X POST https://www.workato.com/api/deployments/6390/approve \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"comment": "Looks good!"
}'
# Response
{
"review": {
"deployment_id": 6390,
"reviewer_id": 29036,
"status": "approved",
"comment": "Looks good!",
"updated_at": "2024-10-11T13:39:22.857-07:00"
}
}
# Reject a deployment
Rejects a deployment. The Require review and approval toggle must be enabled in Workspace admin > Settings > Deployments to access this endpoint.
POST /api/deployments/:id/reject
# URL parameters
Name | Type | Description |
---|---|---|
id | integer required | The unique identifier of the deployment to reject. |
# Payload
Name | Type | Description |
---|---|---|
comment | string required | A comment explaining the reason for rejection. |
# Sample request
curl -X POST https://www.workato.com/api/deployments/6390/reject \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"comment": "Deployment submission rejected due to failing review criteria. Please address the issues and resubmit."
}'
# Response
{
"review": {
"deployment_id": 6390,
"reviewer_id": 29036,
"status": "rejected",
"comment": "",
"updated_at": "2024-10-11T13:42:32.614-07:00"
}
}
# Re-open a deployment for review
Re-opens a deployment for review. The Require review and approval toggle must be enabled in Workspace admin > Settings > Deployments to access this endpoint.
POST /api/deployments/:id/reopen
# URL parameters
Name | Type | Description |
---|---|---|
id | integer required | The unique identifier of the deployment to re-open. |
# Sample request
curl -X POST https://www.workato.com/api/deployments/6390/reopen \
-H 'Authorization: Bearer <api_token>'
# Response
{
"success": true
}
# Update a deployment review comment
Updates a deployment review comment. The Require review and approval toggle must be enabled in Workspace admin > Settings > Deployments to access this endpoint.
POST /api/deployments/:id/update_review_comment
# URL parameters
Name | Type | Description |
---|---|---|
id | integer required | The unique identifier of the deployment. |
# Payload
Name | Type | Description |
---|---|---|
comment | string required | The updated comment for the deployment review. |
# Sample request
curl -X POST https://www.workato.com/api/deployments/6390/update_review_comment \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"comment": "Looks good!"
}'
# Response
{
"review": {
"deployment_id": 6390,
"reviewer_id": 29036,
"status": "approved",
"comment": "Looks good!",
"updated_at": "2024-10-11T13:43:19.547-07:00"
}
}
# Deploy an approved deployment
Deploys an approved deployment. The Require review and approval toggle must be enabled in Workspace admin > Settings > Deployments to access this endpoint.
POST /api/deployments/:id/deploy
# URL parameters
Name | Type | Description |
---|---|---|
id | integer required | The unique identifier of the deployment. |
# Payload
Name | Type | Description |
---|---|---|
include_tags | boolean optional | Specify whether the deployment should include tags. |
# Sample request
curl -X POST https://www.workato.com/api/deployments/6390/deploy \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"include_tags": true
}'
# Response
{
"id": 6390,
"created_at": "2024-10-11T13:16:58.170-07:00",
"updated_at": "2024-10-11T13:47:31.254-07:00",
"title": "",
"description": "",
"project_build_id": 9104,
"environment_type": "test",
"project_id": "44946",
"state": "pending",
"detailed_state": "deploy_started",
"performed_by_name": "Alex",
"assets": [
{
"id": null,
"name": "My Salesforce account",
"type": "connection",
"state": "new",
"folder": "Sample deployment"
},
{
"id": null,
"name": "My Zendesk account",
"type": "connection",
"state": "new",
"folder": "Sample deployment"
},
{
"id": null,
"name": "New Salesforce account will create Zendesk organization",
"type": "recipe",
"folder": "Sample deployment"
},
],
"review_state": "review_approved",
"reviews": [
{
"status": "approved",
"comment": "Looks good!",
"reviewer_name": "Jie"
}
]
}
Last updated: 11/27/2024, 7:03:53 PM