# Folders
Use the following endpoint to manage folders and projects (top level folders) in customer workspaces.
ENDPOINT ACCESS
To access these endpoints, your API client must have the appropriate privileges. This is determined by the role assigned to your API client.
To enable endpoint access:
You can enable access to these endpoints by editing an existing API client role, or by creating a new API client role:
Navigate to Workspace admin > API clients > Client roles.
Select the role you plan to edit.
Alternatively, click + Add client role to create a new API client role.
Navigate to Customer workspaces > Projects > Project assets > Projects & folders.
Select the checkbox(es) next to the endpoint(s) you plan to enable for this role. The following options are available:
- Projects & folders
- Select this option to enable all endpoints for this role.
- List folders
GET /api/managed_users/:managed_user_id/folders
- List projects
GET /api/managed_users/:managed_user_id/projects
- Create folder
POST /api/managed_users/:managed_user_id/folders
- Delete folder
DELETE /api/managed_users/:managed_user_id/folders
/:folder_id - Delete project
DELETE /api/managed_users/:managed_user_id/projects
/:project_id
Select the endpoints you plan to enable
# Quick reference
Type | Resource | Description |
---|---|---|
GET | /api/managed_users/:managed_user_id/folders | List folders. |
POST | /api/managed_users/:managed_user_id/folders | Create a folder. |
DELETE | /api/managed_users/:managed_user_id/folders/:folder_id | Delete a folder. |
# List folders
Lists all folders in a customer workspace.
GET /api/managed_users/:managed_user_id/folders
# URL Parameters
Name | Type | Description |
---|---|---|
managed_user_id | string required | Embedded customer ID/external ID. External ID must be prefixed with an E (for example, EA2300 ) and the resulting ID should be URL encoded. |
# Query Parameters
Name | Type | Description |
---|---|---|
parent_id | string | Parent folder ID. Defaults to Home folder. |
page | integer | Page number. Defaults to 1. |
per_page | integer | Page size. Defaults to 100 (maximum is 100). |
# Sample request
curl -X GET 'https://www.workato.com/api/managed_users/1199/folders?parent_id=12323' \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
# Response
{
"result": [
{
"id": 1789,
"name": "Netsuite production",
"parent_id": 4515,
"created_at": "2020-07-16T10:49:53.337-07:00",
"updated_at": "2020-07-16T10:49:53.347-07:00"
}
]
}
# Create folder
Creates a new folder in the specified parent folder. If no parent folder ID is specified, the folder created will be a top level folder (in the Home folder).
POST /api/managed_users/:managed_user_id/folders
# URL Parameters
Name | Type | Description |
---|---|---|
managed_user_id | string required | Embedded customer ID/external ID. External ID must be prefixed with an E (for example, EA2300 ) and the resulting ID should be URL encoded. |
# Payload
Name | Type | Description |
---|---|---|
name | string required | Name of the folder. |
parent_id | string | Parent folder ID. Defaults to Home folder. |
# Sample request
curl -X POST https://www.workato.com/api/managed_users/1892/folders \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"name": "Salesforce folder"
}'
# Response
{
"id": 3498583,
}
# Delete a folder
Delete a folder in a customer workspace.
FOLDER DELETION INCLUDES RECIPES AND CONNECTIONS
This action deletes a folder and all of its contents (recipes and connections).
To use this endpoint, your API client role must have the following privilege:
- Delete folder
DELETE /api/managed_users/:managed_user_id/folders/:folder_id
DELETE /api/managed_users/:managed_user_id/folders/:folder_id
# URL parameters
Name | Type | Description |
---|---|---|
managed_user_id | string required | Embedded customer ID/external ID. The External ID must be URL encoded and prefixed with an E (for example, EA2300 ). |
folder_id | string required | The ID of the folder you plan to delete. You can retrieve a list of folder IDs by calling the list folders endpoint. |
# Query parameters
Name | Type | Description |
---|---|---|
force | boolean optional | Set this parameter to true to delete a folder that is not empty. When true , the folder you specify using the folder_id parameter, and its contents (all recipes and connections) within the folder are deleted. If set to false , this action can only delete an empty folder. |
# Sample request
curl -X DELETE 'https://www.workato.com/api/managed_users/:managed_user_id/folders/12345?force=true' \
-H 'Authorization: Bearer <api_token>'
# Response
# Successful response
{
"success": "true"
}
# Unsuccessful response
If you attempt to delete a folder that isn't empty, but do not set the force
parameter to true
Workato cannot delete the folder you've specified.
If the folder contains a connection, Workato provides the following response:
{
"message": "can't remove a folder with connections"
}
If the folder contains a recipe, Workato provides the following response:
{
"message": "can't remove a folder with recipe"
}
Last updated: 4/25/2024, 5:58:27 PM