Skip to main content

GET /api/forms

Lista todos os formulários do usuário autenticado. Autenticação: Obrigatória

Query Params

ParamTipoDescrição
pagenumberPágina (padrão: 1)
limitnumberItens por página (padrão: 20)
searchstringBusca por título
publishedbooleanFiltrar por status de publicação
isTemplatebooleanListar apenas templates

Resposta

{
  "forms": [
    {
      "id": "form_id",
      "title": "Avaliação Funcional",
      "description": "...",
      "category": "Psicologia",
      "isPublished": true,
      "isTemplate": false,
      "createdAt": "2026-01-15T10:00:00.000Z",
      "_count": { "questions": 25, "submissions": 12 }
    }
  ],
  "total": 45,
  "page": 1
}

POST /api/forms

Cria um novo formulário.

Body (JSON)

{
  "title": "Nova Avaliação",
  "description": "Descrição opcional",
  "category": "Psicologia",
  "type": "TEST",
  "targetAudience": "STUDENT",
  "isPublished": false,
  "scoreRanges": [
    { "min": 0, "max": 30, "label": "Abaixo", "color": "#EF4444" },
    { "min": 31, "max": 100, "label": "Adequado", "color": "#10B981" }
  ]
}

GET /api/forms/:id

Retorna um formulário pelo ID, incluindo todas as questões e opções.

PUT /api/forms/:id

Atualiza um formulário existente. Aceita os mesmos campos do POST.

DELETE /api/forms/:id

Soft delete do formulário. O registro permanece no banco com deletedAt preenchido.