API — Workspaces
Endpoints para gerenciar workspaces dentro de uma organização.
Base path: /api/v1/organizations/:org_slug
Todos os endpoints requerem Authorization: Bearer {token} e associação à organização.
POST /organizations/:org_slug/workspaces
Cria um workspace na organização. Requer admin ou owner na organização.
Body
{
"name": "Produto",
"slug": "produto"
}Response 201
{
"id": "01J8X...",
"name": "Produto",
"slug": "produto",
"organization_id": "01J8X...",
"created_at": "2026-04-18T12:00:00Z"
}Exemplo
curl -X POST https://tasks.cloudface.tech/api/v1/organizations/acme-corp/workspaces \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"name": "Produto", "slug": "produto"}'GET /organizations/:org_slug/workspaces
Lista workspaces da organização aos quais o usuário tem acesso.
Response 200
{
"workspaces": [
{
"id": "01J8X...",
"name": "Produto",
"slug": "produto",
"role": "admin",
"member_count": 12,
"project_count": 4
}
]
}GET /workspaces/:slug
Retorna os detalhes de um workspace. O usuário deve ser membro.
Response 200
{
"id": "01J8X...",
"name": "Produto",
"slug": "produto",
"organization": {
"id": "01J8X...",
"name": "Acme Corp",
"slug": "acme-corp"
},
"member_count": 12,
"project_count": 4,
"created_at": "2026-01-01T00:00:00Z"
}PATCH /workspaces/:slug
Atualiza configurações do workspace. Requer admin ou owner no workspace.
Body
{
"name": "Produto & Design"
}Response 200 — workspace atualizado
DELETE /workspaces/:slug
Deleta o workspace e todos os seus projetos e issues. Requer owner no workspace.
Response 204 — sem body
GET /workspaces/:slug/members
Lista membros do workspace.
Response 200
{
"members": [
{
"user_id": "01J8X...",
"name": "Gabriel Mowses",
"email": "gabriel@exemplo.com",
"role": "owner",
"joined_at": "2026-01-01T00:00:00Z"
}
],
"total": 12
}POST /workspaces/:slug/members
Adiciona um membro da organização ao workspace. Requer admin ou owner no workspace.
Body
{
"user_id": "01J8X...",
"role": "member"
}Papéis válidos: owner, admin, member, viewer
Response 201 — membro adicionado
PATCH /workspaces/:slug/members/:user_id
Altera o papel de um membro no workspace. Requer admin ou owner.
Body
{
"role": "admin"
}Response 200 — membro atualizado
DELETE /workspaces/:slug/members/:user_id
Remove um membro do workspace. Requer admin ou owner.
Response 204 — sem body