API — Simulados externos (admin-ext)
Contexto
| Item | Valor |
|---|---|
| Prefixo global da API | /api |
| Prefixo do grupo | /admin-ext/simulados |
| Base completa | /api/admin-ext/simulados |
| Autenticação | Header Authorization: Bearer {token} (ou cookie de sessão, se o cliente estiver configurado assim); perfil institucional com instituição vinculada. |
Respostas não listadas explicitamente como erro costumam ser JSON com código HTTP correspondente.
1. Resumo por status
| Campo | Valor |
|---|---|
| Método | GET |
| Path | /api/admin-ext/simulados/resume |
Entrada
Nenhum parâmetro.
Saída (200)
Objeto com totais de simulados externos agrupados por status lógico:
{
"total": 0,
"by_status": {
"agendados": 0,
"ativos": 0,
"encerrado": 0,
"rascunho": 0
}
}
2. Listar simulados (paginado)
| Campo | Valor |
|---|---|
| Método | GET |
| Path | /api/admin-ext/simulados |
Entrada (query string)
| Parâmetro | Tipo | Padrão | Observação |
|---|---|---|---|
page |
int | 1 |
|
limit |
int | 10 |
|
sort |
string | start_date |
Ordenação: name, start_date, end_date ou created_at; outros valores equivalem a start_date. |
direction |
string | asc |
desc ou outro valor (tratado como asc quando não for desc). |
status |
string | — | Filtro: agendado, agendados, ativo, ativos, encerrado, rascunho. |
search |
string | — | Busca por nome (correspondência parcial). |
Saída (200)
{
"total": 0,
"data": [
{
"id": "1",
"name": "",
"duration": 0,
"start_date": null,
"end_date": null,
"questions_count": 0,
"status": "agendado"
}
]
}
Valores possíveis de status na listagem: agendado, ativo, encerrado, Rascunho (a capitalização pode variar conforme o retorno da API).
3. Detalhe de um simulado
| Campo | Valor |
|---|---|
| Método | GET |
| Path | /api/admin-ext/simulados/{id} |
Entrada
- Path:
id— identificador do simulado (inteiro).
Saída (200)
{
"id": "1",
"name": "",
"description": null,
"duration_minutes": 0,
"start_date": null,
"end_date": null,
"questions_count": 0,
"status": "Rascunho",
"created_at": "2026-01-01T00:00:00+00:00",
"updated_at": "2026-01-01T00:00:00+00:00"
}
status na resposta: Rascunho, Agendado, Ativo, Encerrado.
Erros
- 404 — simulado não encontrado.
Path resume vs. {id}
O segmento fixo resume no path (GET /api/admin-ext/simulados/resume) não é um identificador numérico de simulado; use sempre esse path completo para o resumo por status.