Pular para o conteúdo principal

API de Certificados

Lista os certificados de cursos emitidos na organização ou no grupo do cliente de API. A lista inclui certificados válidos, expirados e revogados para que a integração possa avaliar o status atual de cada um.

Listar certificados​

GET /api/v1/certificates

Escopo obrigatório: training.read. Consulte Autenticação para obter um token de acesso.

curl --request GET \
--url "https://courses.e-learningcourses.com/api/v1/certificates?page=1&pageSize=1000" \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Accept: application/json"

Parâmetros de consulta​

ParâmetroTipoPadrãoDescrição
pageinteiro1Número da página, a partir de 1.
pageSizeinteiro1000Certificados por página, de 1 a 5000.

Resposta​

{
"data": [
{
"certificateId": "89254050-dfc4-467a-a7ea-745f81a77b63",
"certificateNumber": "CERT-2026-001042",
"email": "alex.morgan@example.com",
"learnerName": "Alex Morgan",
"courseId": "38f595b7-2ff4-4da6-bf24-91316399ec9a",
"courseName": "Código de conduta para fornecedores",
"groupId": "fbc74870-3995-4f2c-b129-c2812b3e56c7",
"completedUtc": "2026-09-05T14:12:08Z",
"issuedUtc": "2026-09-05T14:13:00Z",
"expiresUtc": "2027-09-05T14:13:00Z",
"status": "valid",
"verificationUrl": "https://courses.e-learningcourses.com/certificates/verify/11be8ddd-b51c-4dbf-b48d-727159cf215b"
}
],
"pagination": {
"page": 1,
"pageSize": 1000,
"totalRecords": 1,
"totalPages": 1
}
}
CampoTipoDescrição
certificateIdUUIDIdentificador usado para baixar o PDF.
certificateNumberstringNúmero impresso no certificado.
emailstring ou nullE-mail do aluno; quando disponível, pode ser associado à API de Usuários.
learnerNamestringNome impresso no certificado no momento da emissão.
courseIdUUIDIdentificador do curso; corresponde ao courseId dos registros de treinamento e dos pacotes.
courseNamestringNome do curso impresso no certificado.
groupIdUUID ou nullIdentificador do grupo associado; corresponde ao groupId da API de Grupos.
completedUtcdata-horaData e hora UTC da conclusão do curso.
issuedUtcdata-horaData e hora UTC da emissão do certificado.
expiresUtcdata-hora ou nullData e hora UTC da expiração; null quando não há prazo de validade.
statusstringvalid, expired ou revoked. A revogação prevalece sobre a expiração; o certificado expira ao chegar a expiresUtc.
verificationUrlURLPágina pública para verificar a autenticidade e a validade do certificado. O endereço retornado pode ser diferente do exemplo.

Os certificados são ordenados por issuedUtc, do mais antigo para o mais recente, e depois por certificateId. Quando não há resultados, data está vazio e totalPages é 0.

Baixar o PDF de um certificado​

GET /api/v1/certificates/{certificateId}/pdf

Use um certificateId da lista e envie o mesmo token de acesso. A resposta é application/pdf para um certificado emitido, mesmo que ele tenha expirado ou sido revogado depois.

curl --request GET \
--url "https://courses.e-learningcourses.com/api/v1/certificates/$CERTIFICATE_ID/pdf" \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Accept: application/pdf" \
--output certificate.pdf

O endpoint retorna 404 se o certificado não existir, estiver fora do escopo do cliente ou se o PDF armazenado não estiver disponível. verificationUrl leva a uma página pública de verificação, não à URL de download do PDF.

Erros​

Paginação inválida na lista retorna 400 no formato Problem Details. Token ausente ou expirado retorna 401; escopo insuficiente ou perda de acesso do cliente retorna 403. O limite compartilhado pode retornar 429. Consulte Autenticação para conhecer os limites e as orientações de nova tentativa.

OpenAPI​

https://courses.e-learningcourses.com/api/v1/openapi.json