List Projects
Get every project of the active tenant.
GET /api/projects
Returns every project of the active tenant, ordered by name. The list is not paginated.
Auth: Required — project:view permission
This endpoint is tenant-level: it ignores the x-project-id header.
Example
curl -X GET https://api.reten.ai/api/projects \
-H "Authorization: Bearer <token>" \
-H "x-tenant-id: <tenant-id>"const response = await fetch("https://api.reten.ai/api/projects", {
headers: {
"Authorization": "Bearer <token>",
"x-tenant-id": "<tenant-id>",
},
});
const projects = await response.json();import requests
response = requests.get(
"https://api.reten.ai/api/projects",
headers={
"Authorization": "Bearer <token>",
"x-tenant-id": "<tenant-id>",
},
)
projects = response.json()Response 200 OK
[
{
"id": "b7e4d2c1-6a5f-4e3d-9c8b-7a6f5e4d3c2b",
"name": "Food Service",
"rootAudienceId": "c2d3e4f5-a6b7-4c8d-9e0f-1a2b3c4d5e6f",
"isMain": false
},
{
"id": "3f6c2b1a-8d4e-4f7a-9b2c-5e1d0a7f6c34",
"name": "General",
"rootAudienceId": "9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d",
"isMain": true
}
]Response Fields
| Field | Type | Description |
|---|---|---|
id | string | UUID of the project |
name | string | Project name |
rootAudienceId | string | UUID of the project's root audience |
isMain | boolean | true for the tenant's main project |
Error Responses
| Status | Description |
|---|---|
401 | Missing or invalid authentication token |
403 | Missing the project:view permission — Required permissions: project:view |