Conversa da turma
Mensagens entre os participantes de uma turma.
Lista as conversas de turma da pessoa
GET /me/conversas
Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
items | lista de MinhaConversa | sim |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X GET "$API/me/conversas" -H "Authorization: Bearer $TOKEN"Lista as mensagens da conversa da turma
GET /turmas/{turmaId}/conversa
Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.
Parâmetros de caminho
| Parâmetro | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
turmaId | string (uuid) | sim | Id da turma. |
Parâmetros de consulta
| Parâmetro | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
antes | string | não | a 200 caracteres; ^[A-Za-z0-9_-]+$ | Cursor: devolve mensagens anteriores a ele. |
depois | string | não | a 200 caracteres; ^[A-Za-z0-9_-]+$ | Cursor: devolve mensagens posteriores a ele. |
alteradasDesde | string (date-time) | não | Instante (agora da leitura anterior): devolve só o que mudou desde então. | |
limite | integer | não | 1…100; padrão: 50 | Quantos itens por página (1 a 200; o padrão varia por rota, em geral 50). |
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
turma | object | sim | ||
turma.id | string (uuid) | sim | ||
turma.nome | string | sim | ||
turma.disciplinaNome | string | sim | ||
turma.ativa | boolean | sim | ||
itens | lista de MensagemDto | sim | Da mais antiga para a mais nova. | |
anteriores | string ou nulo | sim | Cursor para buscar as anteriores; nulo = chegou ao começo. | |
podeEscrever | boolean | sim | ||
podeModerar | boolean | sim | ||
alteradas | lista de MensagemDto | sim | Mensagens editadas ou removidas desde alteradasDesde (para consulta periódica): o cliente troca as que já tem. | |
agora | string | sim | Relógio do servidor no momento da leitura (use no próximo alteradasDesde). |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X GET "$API/turmas/{turmaId}/conversa" -H "Authorization: Bearer $TOKEN"Envia uma mensagem à conversa da turma
POST /turmas/{turmaId}/conversa/mensagens
Acesso: Qualquer pessoa autenticada. Limite: até 60 chamadas a cada 60 s por origem. Status de sucesso: 201.
Parâmetros de caminho
| Parâmetro | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
turmaId | string (uuid) | sim | Id da turma. |
Corpo da requisição (MensagemTexto)
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
texto | string | sim | 1–2000 caracteres |
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
id | string (uuid) | sim | ||
turmaId | string (uuid) | sim | ||
autor | object ou nulo | sim | Nulo quando o autor excluiu a conta. | |
autor.id | string (uuid) | sim | ||
autor.nome | string | sim | ||
texto | string ou nulo | sim | Nulo quando a mensagem foi removida (o texto é apagado na remoção). | |
criadaEm | string | sim | ||
editadaEm | string ou nulo | sim | ||
removida | boolean | sim | ||
removidaPorModeracao | boolean | sim | Removida por quem modera (e não pelo autor). | |
cursor | string | sim | Cursor desta mensagem (use em depois ou antes). |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X POST "$API/turmas/{turmaId}/conversa/mensagens" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"texto":"texto"}'Remove uma mensagem
DELETE /turmas/{turmaId}/conversa/mensagens/{mensagemId}
Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.
Parâmetros de caminho
| Parâmetro | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
mensagemId | string (uuid) | sim | Id da mensagem. | |
turmaId | string (uuid) | sim | Id da turma. |
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
id | string (uuid) | sim | ||
turmaId | string (uuid) | sim | ||
autor | object ou nulo | sim | Nulo quando o autor excluiu a conta. | |
autor.id | string (uuid) | sim | ||
autor.nome | string | sim | ||
texto | string ou nulo | sim | Nulo quando a mensagem foi removida (o texto é apagado na remoção). | |
criadaEm | string | sim | ||
editadaEm | string ou nulo | sim | ||
removida | boolean | sim | ||
removidaPorModeracao | boolean | sim | Removida por quem modera (e não pelo autor). | |
cursor | string | sim | Cursor desta mensagem (use em depois ou antes). |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X DELETE "$API/turmas/{turmaId}/conversa/mensagens/{mensagemId}" -H "Authorization: Bearer $TOKEN"Edita uma mensagem
PATCH /turmas/{turmaId}/conversa/mensagens/{mensagemId}
Acesso: Qualquer pessoa autenticada. Limite: até 60 chamadas a cada 60 s por origem. Status de sucesso: 200.
Parâmetros de caminho
| Parâmetro | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
mensagemId | string (uuid) | sim | Id da mensagem. | |
turmaId | string (uuid) | sim | Id da turma. |
Corpo da requisição (MensagemTexto)
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
texto | string | sim | 1–2000 caracteres |
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
id | string (uuid) | sim | ||
turmaId | string (uuid) | sim | ||
autor | object ou nulo | sim | Nulo quando o autor excluiu a conta. | |
autor.id | string (uuid) | sim | ||
autor.nome | string | sim | ||
texto | string ou nulo | sim | Nulo quando a mensagem foi removida (o texto é apagado na remoção). | |
criadaEm | string | sim | ||
editadaEm | string ou nulo | sim | ||
removida | boolean | sim | ||
removidaPorModeracao | boolean | sim | Removida por quem modera (e não pelo autor). | |
cursor | string | sim | Cursor desta mensagem (use em depois ou antes). |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X PATCH "$API/turmas/{turmaId}/conversa/mensagens/{mensagemId}" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"texto":"texto"}'