Attendance (assessor)
What assessors do: request queue, confirm or reject, batch, QR reading and account versions.
Pending requests across all classes
GET /presencas/pendentes
Access: Requires the capability AVALIAR, in some scope (the response only includes what the person can see). Success status: 200.
Query parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
limite | integer | no | 1…200; default: 50 | How many items per page (1 to 200; the default varies by route, usually 50). |
deslocamento | integer | no | 0…100000; default: 0 | How many items to skip, for paging (up to 100000). |
Response
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
items | list of FilaAvaliacaoItem | yes | ||
total | integer | yes | 0… |
On error: ErroApi model.
Example
curl -X GET "$API/presencas/pendentes" -H "Authorization: Bearer $TOKEN"Resolve a scanned QR and open the attendance request
POST /presencas/qr
Access: Any signed-in person. Rate limit: up to 600 calls every 60 s per origin. Success status: 200.
Request body (QrResolver)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
token | string | yes | 20–2000 characters |
Response
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
turmaId | string (uuid) | yes | ||
atividade | object | yes | ||
atividade.id | string (uuid) | yes | ||
atividade.data | Data | yes | ||
atividade.descricao | string or null | yes | ||
linha | PresencaLinha | yes |
On error: ErroApi model.
Example
curl -X POST "$API/presencas/qr" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"token":"texto"}'Confirm or reject a student's attendance
PUT /turmas/{turmaId}/atividades/{atividadeId}/matriculas/{matriculaId}/presenca
Access: Requires the capability AVALIAR over class (params.turmaId). Success status: 200.
Path parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
matriculaId | string (uuid) | yes | Enrollment id. | |
atividadeId | string (uuid) | yes | Activity id. | |
turmaId | string (uuid) | yes | Class id. |
Request body (AvaliarPresenca)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
estado | "CONFIRMADA" | "REJEITADA" | yes | ||
comentario | string or null | no | to 2000 characters | |
notas | list of Nota | no | 0–20 items | |
nivelSupervisao | NivelSupervisao or null | no | Absent = keeps what was there; null = clears; only applies when confirming. |
Response
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
id | string (uuid) | yes | ||
atividadeId | string (uuid) | yes | ||
matriculaId | string (uuid) | yes | ||
estado | "SOLICITADA" | "CONFIRMADA" | "REJEITADA" | yes | ||
solicitadaEm | string | yes | ||
capturadaEm | string or null | yes | ||
relato | string or null | yes | ||
justificativa | string or null | yes | ||
excecoes | list of "FORA_DA_JANELA" | "FORA_DA_CERCA" | "OUTRO_DIA" | yes | ||
avaliadaEm | string or null | yes | ||
comentarioAvaliador | string or null | yes | ||
notas | list of Nota | yes | Only for those who assess the class. Students see their grades in the panel after the class releases them. | |
nivelSupervisao | NivelSupervisao or null | no | Supervision level given by the last assessor; null = not provided. Only for assessors (students read it in the assessment after release). | |
relatoEditadoEm | string or null | no | Last edit of the account by the student; null = never edited. After avaliadaEm = edited after the assessment. |
On error: ErroApi model.
Example
curl -X PUT "$API/turmas/{turmaId}/atividades/{atividadeId}/matriculas/{matriculaId}/presenca" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"estado":"CONFIRMADA"}'List an activity's attendance requests
GET /turmas/{turmaId}/atividades/{atividadeId}/presencas
Access: Requires the capability AVALIAR over class (params.turmaId). Success status: 200.
Path parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
atividadeId | string (uuid) | yes | Activity id. | |
turmaId | string (uuid) | yes | Class id. |
Response
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
atividade | object | yes | ||
atividade.id | string (uuid) | yes | ||
atividade.turmaId | string (uuid) | yes | ||
atividade.data | Data | yes | ||
atividade.descricao | string or null | yes | ||
items | list of PresencaLinha | yes |
On error: ErroApi model.
Example
curl -X GET "$API/turmas/{turmaId}/atividades/{atividadeId}/presencas" -H "Authorization: Bearer $TOKEN"Earlier versions of an attendance account
GET /turmas/{turmaId}/presencas/{presencaId}/relato/versoes
Access: Requires the capability AVALIAR over class (params.turmaId). Success status: 200.
Path parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
presencaId | string (uuid) | yes | Attendance request id. | |
turmaId | string (uuid) | yes | Class id. |
Response
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
items | list of object | yes | ||
items[].id | string (uuid) | yes | ||
items[].texto | string | yes | ||
items[].substituidoEm | string | yes |
On error: ErroApi model.
Example
curl -X GET "$API/turmas/{turmaId}/presencas/{presencaId}/relato/versoes" -H "Authorization: Bearer $TOKEN"Confirm several attendance requests at once
POST /turmas/{turmaId}/presencas/confirmar-lote
Access: Requires the capability AVALIAR over class (params.turmaId). Success status: 200.
Path parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
turmaId | string (uuid) | yes | Class id. |
Request body (ConfirmarLote)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
ids | list of string (uuid) | yes | 1–100 items |
Response
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
items | list of PresencaDto | yes |
On error: ErroApi model.
Example
curl -X POST "$API/turmas/{turmaId}/presencas/confirmar-lote" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"ids":["0198a000-0000-7000-8000-000000000001"]}'The class's pending request queue
GET /turmas/{turmaId}/presencas/pendentes
Access: Requires the capability AVALIAR over class (params.turmaId). Success status: 200.
Path parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
turmaId | string (uuid) | yes | Class id. |
Response
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
items | list of Pendente | yes |
On error: ErroApi model.
Example
curl -X GET "$API/turmas/{turmaId}/presencas/pendentes" -H "Authorization: Bearer $TOKEN"