Documentação de Integração da Plataforma Pontue
Obtém um token de acesso para fazer o login de um usuário.
IMPORTANTE:
Caso for fazer o Login SSO, insira a seguinte informação no campo scope
: login-sso
.
Se não for fazer o Login SSO, não envie o campo scope
.
Para o Login SSO, redirecionar o usuário para a URL: https://sso.dev.pontue.com.br
com os seguintes parâmetros na query string
: ssoAccessToken
(access_token
recebido nesse endpoint) e uma das três opções id
(ID do usuário na nossa plataforma) ou idRef
(ID de referência do usuário) ou email
(e-mail do usuário).
grant_type required | string Default: "client_credentials" O tipo de concessão da solicitação de token (Utilize: |
client_id required | string ID fornecido pela nossa equipe de TI. |
client_secret required | string Token fornecido pela nossa equipe de TI. |
scope | string Escopo da solicitação de token. Todos os escopos disponíveis são separados por espaço. |
{- "token_type": "string",
- "expires_in": 0,
- "access_token": "string"
}
Obtém dados de acesso do usuário.
IMPORTANTE:
No Header Authorization, utilizar o token_type
+ access_token
retornado pelo endpoint /oauth/token
.
Exemplo: Authorization: Bearer eyJ0eXAiOiJ...
.
Porém, aqui na documentação, adicione apenas o access_token
, pois o token_type
é adicionado automaticamente.
email required | string Email do usuário cadastrado na Plataforma Pontue. |
{- "email": "string"
}
{- "data": {
- "user": {
- "id": "string",
- "name": "string",
- "email": "string"
}, - "role": "string",
- "student": {
- "id": "string"
}, - "school": {
- "id": "string",
- "name": "string",
- "isSaas": 0,
- "isOnTrial": true
}, - "schoolClass": {
- "id": "string"
}, - "modules": [
- "string"
], - "access_token": "string",
- "token_type": "string",
- "expires_at": "string"
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
name required | string O nome da proposta |
gridId required | string <uuid> ID da grade da proposta |
subjectId | string <uuid> O ID da disciplina (caso a proposta seja disponibilizada para uma disciplina) |
hasTask | boolean Default: true Indica se a proposta possui tarefa ou não |
isPontueCorrection | boolean Default: false Indica se a proposta é vai ser corrigida pelos time de corretores Pontue (utilize |
guidance | string Orientação para o corretor. |
comment | string Orientação para o aluno. |
Array of objects Labels dos arquivos. Campo obrigatório se enviado arquivos. | |
file-1 | string <binary> Arquivo para a proposta. |
file-2 | string <binary> Arquivo para a proposta. |
Array of objects Links para a proposta. Campo obrigatório se não enviado arquivos. |
{- "data": {
- "proposalId": "string"
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
proposalId | string <uuid> ID da proposta |
{- "data": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "school": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}, - "number": 0,
- "guidance": "string",
- "comment": "string",
- "hasTask": true,
- "isPontueCorrection": true,
- "subject": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}, - "teachers": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}
], - "schoolClasses": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}
], - "grid": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}, - "links": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "url": "string",
- "label": "string",
- "name": "string"
}
], - "files": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "url": "string",
- "label": "string",
- "name": "string"
}
]
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
proposalId | string <uuid> ID da proposta |
name required | string O nome da proposta |
gridId required | string <uuid> ID da grade da proposta |
subjectId | string <uuid> O ID da disciplina (caso a proposta seja disponibilizada para uma disciplina) |
hasTask | boolean Default: true Indica se a proposta possui tarefa ou não |
isPontueCorrection | boolean Default: false Indica se a proposta é vai ser corrigida pelos time de corretores Pontue (utilize |
guidance | string Orientação para o corretor. |
comment | string Orientação para o aluno. |
Array of objects Labels dos arquivos. | |
file-1 | string <binary> Arquivo para a proposta. |
file-2 | string <binary> Arquivo para a proposta. |
removeIds | Array of strings <uuid> [ items <uuid > ] Array de |
Array of objects Links para a proposta. |
{ }
Liberar propostas para turmas ou disciplina.
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
OBS: se enviado disciplina e as turmas, dará preferência pra disciplina.
proposalId | string <uuid> ID da proposta |
subjectId | string <uuid> ID da disciplina |
Array of objects Array de objetos com os ID's das turmas | |
releaseAt | string Data que a proposta deve ser liberada. |
removeAt | string Data que a proposta deve ser removida. |
{- "subjectId": "68460e63-0717-47f9-8fd8-d28f152cb30b",
- "schoolClasses": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
], - "releaseAt": "string",
- "removeAt": "string"
}
{- "message": "string"
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
proposalId required | string <uuid> ID da proposta. |
studentId required | string <uuid> ID do aluno. |
files | Array of strings <binary> [ items <binary > ] Arquivos com as imagens da redação (redação por foto). |
essayTypedText | string Texto digitado pelo aluno (redação digitada). |
object Tipo da redação. |
{- "data": {
- "essay": {
- "id": "string",
- "urls": [
- {
- "url": "string",
- "order": 0
}
], - "children": [
- {
- "id": "string",
- "urls": [
- {
- "url": "string",
- "order": 0
}
]
}
]
}
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
essayId | string <uuid> ID da redação |
{- "data": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "number": 0,
- "student": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "schoolClass": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "school": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}
}
}, - "proposal": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "number": 0,
- "grid": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}
}, - "essayImages": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "order": 0,
- "url": "string",
- "annotations": "string",
- "comments": "string"
}
], - "children": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "number": 0,
- "student": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "schoolClass": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "school": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}
}
}, - "proposal": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "number": 0,
- "grid": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}
}, - "essayImages": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "order": 0,
- "url": "string",
- "annotations": "string",
- "comments": "string"
}
]
}
], - "zeroReason": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "reason": "string"
}
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
essayId | string <uuid> ID da redação |
proposalId required | string <uuid> ID da proposta. |
files | Array of strings <binary> [ items <binary > ] Arquivos com as imagens da redação (redação por foto). |
essayTypedText | string Texto digitado pelo aluno (redação digitada). |
Array of objects Array com os ID's e a ordem das imagens que irá MANTER na redação. | |
object Objeto com os nomes dos novos arquivos (com o tipo do arquivo) que serão adicionados e a ordem que o arquivo deverá permanecer na redação. |
{- "data": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "student": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "schoolClass": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "school": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}
}
}, - "proposal": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}, - "essayImages": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "url": "string",
- "order": 0
}
]
}, - "meta": { }
}
Obtém as imagens de uma redação corrigida e não reportada.
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
essayId | string <uuid> ID da redação |
{- "data": {
- "image": "89f204d4-24d2-439a-b6e8-e97405cb1f8e",
- "essayImages": [
- {
- "id": "string",
- "comments": "string",
- "order": 0
}
]
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
required | Array of objects Array de objetos com os nomes e ID's de referência das turmas |
{- "schoolClasses": [
- {
- "name": "string",
- "idRef": "string"
}
]
}
{- "data": {
- "schoolClasses": [
- {
- "id": "string",
- "nome": "string",
- "idRef": "string"
}
]
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
search | string Default: null Filtrar pelo nome da turma. |
page | integer Default: 1 Quantidades de páginas. |
perPage | integer Default: 15 Quantidades de turmas por página. |
sort | string Default: "name" Organizar lista por |
order | string Default: "asc" Ordenar por |
{- "data": {
- "schoolClasses": [
- {
- "id": "string",
- "name": "string",
- "idRef": "string",
- "students": 0,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z"
}
]
}, - "meta": {
- "total": 1,
- "perPage": 1,
- "currentPage": 1
}
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
schoolClassId | string <uuid> ID da turma |
{- "data": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "idRef": "string",
- "students": 0,
- "createdAt": "string",
- "updatedAt": "string",
- "deletedAt": "string"
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
schoolClassId | string <uuid> ID da turma |
name required | string O nome da turma |
{- "name": "string"
}
{- "data": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "idRef": "string",
- "createdAt": "string",
- "updatedAt": "string"
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
schoolClassId | string <uuid> ID da turma |
{- "data": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "idRef": "string",
- "createdAt": "string",
- "updatedAt": "string",
- "deletedAt": "string"
}
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
schoolClassId | string <uuid> ID da turma que todos os alunos serão vinculados. |
Array of objects Array de objetos com os nomes, sobrenomes, emails e ID's de referência dos alunos |
{- "schoolClassId": "32ad2012-6b66-4a81-84a0-de848cad73c0",
- "students": [
- {
- "name": "string",
- "surname": "string",
- "email": "string",
- "idRef": "string"
}
]
}
{- "data": {
- "students": [
- {
- "id": "string",
- "user": {
- "id": "string",
- "name": "string",
- "surname": "string",
- "fullName": "string",
- "email": "string",
- "profilePicture": "string",
- "idRef": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "string"
}, - "schoolClass": {
- "id": "string",
- "name": "string",
- "idRef": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "string"
}
]
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
search | string Default: null Filtrar pelo nome do aluno. |
schoolClassId | string <uuid> Default: null Filtrar pelo id da turma. |
page | integer Default: 1 Quantidades de páginas. |
perPage | integer Default: 12 Quantidades de alunos por página. |
sort | string Default: "name" Organizar lista por |
order | string Default: "asc" Ordenar por |
{- "search": null,
- "schoolClassId": null,
- "page": 1,
- "perPage": 12,
- "sort": "name",
- "order": "asc"
}
{- "data": {
- "students": [
- {
- "id": "string",
- "user": {
- "id": "string",
- "name": "string",
- "surname": "string",
- "fullName": "string",
- "email": "user@example.com",
- "profilePicture": "string",
- "idRef": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z"
}, - "schoolClass": {
- "id": "string",
- "name": "string",
- "idRef": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z"
}
]
}, - "meta": {
- "total": 1,
- "perPage": 1,
- "currentPage": 1
}
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
studentId | string <uuid> ID da aluno |
{- "data": {
- "student": {
- "id": "string",
- "user": {
- "id": "string",
- "name": "string",
- "surname": "string",
- "fullName": "string",
- "email": "string",
- "profilePicture": "string",
- "idRef": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "string"
}, - "schoolClass": {
- "id": "string",
- "name": "string",
- "idRef": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z"
}
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
studentId | string <uuid> ID do aluno |
schoolClassId required | string <uuid> ID da turma |
name required | string O nome do aluno |
surname required | string O sobrenome do aluno |
email required | string O email do aluno |
idRef | string or null O id de referência do aluno |
{- "schoolClassId": "32ad2012-6b66-4a81-84a0-de848cad73c0",
- "name": "string",
- "surname": "string",
- "email": "string",
- "idRef": "string"
}
{- "data": {
- "student": {
- "id": "string",
- "user": {
- "id": "string",
- "name": "string",
- "surname": "string",
- "fullName": "string",
- "email": "string",
- "profilePicture": "string",
- "idRef": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": null
}, - "schoolClass": {
- "id": "string",
- "name": "string",
- "idRef": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": null
}
}, - "meta": { }
}
OBS: Utilize o access_token
retornado pelo endpoint /oauth/token
para autenticação.
studentId | string <uuid> ID do aluno |
{- "data": {
- "student": {
- "id": "string",
- "user": {
- "id": "string",
- "name": "string",
- "surname": "string",
- "fullName": "string",
- "email": "string",
- "profilePicture": "string",
- "idRef": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "string"
}, - "schoolClass": {
- "id": "string",
- "name": "string",
- "idRef": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z"
}
}
}
Endpoint para receber os webhooks da Plataforma Pontue.
Esse endpoint não é cadastrado no nosso sistema, é o POST
que iremos fazer para a URL que vocês nos passarem.
object Redação | |
object Correção | |
Array of objects Imagens da redação com a correção. Se a redação for denunciada, esse campo será | |
object Aluno |
{- "essay": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43",
- "thereWasDiscrepancy": true
}, - "correction": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "videoUrl": "string",
- "video": {
- "webm": "string",
- "mp4": "string"
}, - "grades": [
- {
- "name": "string",
- "grade": 0,
- "error": "string"
}
], - "report": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}, - "zeroReason": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "reason": "string"
}
}, - "essayImages": [
- {
- "image": "string",
- "order": 0
}
], - "student": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string"
}
}