Workspaces
List workspaces
GET
/v1/workspacesList all workspaces belonging to the authenticated user.
Request
curl "https://api.rendley.com/v1/workspaces" \
-H "Authorization: Bearer YOUR_API_KEY"const res = await fetch("https://api.rendley.com/v1/workspaces", {
headers: { Authorization: "Bearer YOUR_API_KEY" },
});
const { data } = await res.json();import requests
res = requests.get(
"https://api.rendley.com/v1/workspaces",
headers={"Authorization": "Bearer YOUR_API_KEY"},
)
data = res.json()["data"]Example response
{
"data": [
{
"created_by": "string",
"id": "string",
"name": "string"
}
]
}Response codes
| Status | Description |
|---|---|
200 | OK |
401 | Unauthorized |
Create a workspace
POST
/v1/workspacesCreate a new workspace for the authenticated user.
Request
curl -X POST "https://api.rendley.com/v1/workspaces" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "<name>"
}'const res = await fetch("https://api.rendley.com/v1/workspaces", {
method: "POST",
headers: { Authorization: "Bearer YOUR_API_KEY", "Content-Type": "application/json" },
body: JSON.stringify({
"name": "<name>"
}),
});
const { data } = await res.json();import requests
res = requests.post(
"https://api.rendley.com/v1/workspaces",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={
"name": "<name>"
},
)
data = res.json()["data"]Request body
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Required |
Example response
{
"data": {
"created_by": "string",
"id": "string",
"name": "string"
}
}Response codes
| Status | Description |
|---|---|
200 | OK |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
Get a workspace
GET
/v1/workspaces/{id}Returns a single workspace the authenticated user has access to. Used to load a specific (e.g. last-opened) workspace at startup rather than defaulting to the first.
Request
curl "https://api.rendley.com/v1/workspaces/ID" \
-H "Authorization: Bearer YOUR_API_KEY"const res = await fetch("https://api.rendley.com/v1/workspaces/ID", {
headers: { Authorization: "Bearer YOUR_API_KEY" },
});
const { data } = await res.json();import requests
res = requests.get(
"https://api.rendley.com/v1/workspaces/ID",
headers={"Authorization": "Bearer YOUR_API_KEY"},
)
data = res.json()["data"]Path parameters
| Name | Type | Description |
|---|---|---|
id | string | Workspace ID |
Example response
{
"data": {
"created_by": "string",
"id": "string",
"name": "string"
}
}Response codes
| Status | Description |
|---|---|
200 | OK |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Rename a workspace
PUT
/v1/workspaces/{id}Update a workspace's name. Only the workspace owner can do this.
Request
curl -X PUT "https://api.rendley.com/v1/workspaces/ID" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "<name>"
}'const res = await fetch("https://api.rendley.com/v1/workspaces/ID", {
method: "PUT",
headers: { Authorization: "Bearer YOUR_API_KEY", "Content-Type": "application/json" },
body: JSON.stringify({
"name": "<name>"
}),
});
const { data } = await res.json();import requests
res = requests.put(
"https://api.rendley.com/v1/workspaces/ID",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={
"name": "<name>"
},
)
data = res.json()["data"]Path parameters
| Name | Type | Description |
|---|---|---|
id | string | Workspace ID |
Request body
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Required |
Example response
{
"data": {
"created_by": "string",
"id": "string",
"name": "string"
}
}Response codes
| Status | Description |
|---|---|
200 | OK |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
Delete a workspace
DELETE
/v1/workspaces/{id}Delete a workspace and all of its contents (projects, brand kit, etc.). Only the workspace owner can do this, and the user's last remaining workspace can't be deleted.
Request
curl -X DELETE "https://api.rendley.com/v1/workspaces/ID" \
-H "Authorization: Bearer YOUR_API_KEY"const res = await fetch("https://api.rendley.com/v1/workspaces/ID", {
method: "DELETE",
headers: { Authorization: "Bearer YOUR_API_KEY" },
});
const { data } = await res.json();import requests
res = requests.delete(
"https://api.rendley.com/v1/workspaces/ID",
headers={"Authorization": "Bearer YOUR_API_KEY"},
)
data = res.json()["data"]Path parameters
| Name | Type | Description |
|---|---|---|
id | string | Workspace ID |
Response codes
| Status | Description |
|---|---|
200 | OK |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |