Pular para o conteúdo principal

Projetos

Gerenciamento de projetos no Decision Engine.

Endpoints

MétodoEndpointDescriçãoPermissão
POST/api/v1/projectsCriar projetoDECISION_PROJECTS_CREATE
GET/api/v1/projectsListar projetosDECISION_PROJECTS_READ
GET/api/v1/projects/:idObter projetoDECISION_PROJECTS_READ
PATCH/api/v1/projects/:idAtualizar projetoDECISION_PROJECTS_UPDATE
DELETE/api/v1/projects/:idExcluir projetoDECISION_PROJECTS_DELETE

Criar Projeto

POST /api/v1/projects

Cria um novo projeto para agrupar decisões.

Request

CampoTipoObrigatórioDescrição
namestringSimNome do projeto (1-255 chars)
keystringSimChave unica (lowercase, hifens)
descriptionstringNãoDescrição do projeto
curl -X POST 'https://decision-engine.stg.catalisa.app/api/v1/projects' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"name": "Analise de Crédito Pessoal",
"key": "credit-analysis-personal",
"description": "Regras de aprovação para empréstimo pessoal"
}'

Response (201 Created)

{
"data": {
"type": "projects",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"name": "Analise de Crédito Pessoal",
"key": "credit-analysis-personal",
"description": "Regras de aprovação para empréstimo pessoal",
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
},
"links": {
"self": "/api/v1/projects/550e8400-e29b-41d4-a716-446655440000"
}
}
}

Listar Projetos

GET /api/v1/projects

Lista projetos com suporte a paginação.

Query Parameters

ParâmetroTipoDescrição
page[number]integerNúmero da página
page[size]integerItens por página
curl 'https://decision-engine.stg.catalisa.app/api/v1/projects' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (200 OK)

{
"data": [
{
"type": "projects",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"name": "Analise de Crédito Pessoal",
"key": "credit-analysis-personal"
}
}
],
"meta": {
"totalItems": 5,
"totalPages": 1,
"currentPage": 1
}
}

Obter Projeto

GET /api/v1/projects/:projectId

Obtém detalhes de um projeto específico.

curl 'https://decision-engine.stg.catalisa.app/api/v1/projects/550e8400-e29b-41d4-a716-446655440000' \
-H 'Authorization: Bearer SEU_TOKEN'

Atualizar Projeto

PATCH /api/v1/projects/:projectId

Atualiza dados de um projeto.

Request

CampoTipoObrigatórioDescrição
namestringNãoNovo nome
descriptionstringNãoNova descrição
curl -X PATCH 'https://decision-engine.stg.catalisa.app/api/v1/projects/550e8400-e29b-41d4-a716-446655440000' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"name": "Analise de Crédito Pessoal v2",
"description": "Regras atualizadas de aprovação"
}'

Excluir Projeto

DELETE /api/v1/projects/:projectId

Remove um projeto e todas as suas decisões.

Atenção

Esta operação e irreversível. Todas as decisões e versões do projeto serão removidas.

curl -X DELETE 'https://decision-engine.stg.catalisa.app/api/v1/projects/550e8400-e29b-41d4-a716-446655440000' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (204 No Content)

Sem corpo de resposta.


Erros Comuns

CódigoErroDescrição
400VALIDATIONKey invalida ou campos ausentes
404NOT_FOUNDProjeto não encontrado
409CONFLICTKey já existe