Certificados
Um certificado é a credencial digital que vincula um estudante a um curso, emitida por uma instituição. Ele inclui um arquivo PDF assinado, uma URL de verificação pública e um snapshot imutável da identidade do estudante no momento da emissão.
O objeto certificado
{
"uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "issued",
"issued_at": "2024-12-01T00:00:00.000000Z",
"revoked_at": null,
"revocation_reason": null,
"public_verification_url": "https://verificar.dokstamp.eu/a1b2c3d4",
"blockchain_tx_hash": null,
"blockchain_tx_url": null,
"institution": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"name": "Federal University of Technology"
},
"course": {
"uuid": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"name": "Bachelor of Computer Science"
},
"student": {
"uuid": "f6a7b8c9-d0e1-2345-fghi-456789012345",
"name": "Maria Fernanda Silva"
},
"cohort": null,
"enrollment": null,
"template": null,
"files": [
{
"type": "certificate",
"uuid": "h8i9j0k1-l2m3-4567-nopq-678901234567"
}
]
}
| Campo | Tipo | Descrição |
|---|
uuid | string | Identificador único |
status | enum | draft, issued, revoked, expired |
issued_at | datetime | Data oficial de emissão |
revoked_at | datetime|null | Timestamp de revogação |
revocation_reason | string|null | Motivo da revogação |
public_verification_url | string|null | URL compartilhável para verificação por terceiros |
blockchain_tx_hash | string|null | Hash da transação blockchain (se ancorado) |
files | array | Arquivos PDF anexados |
Listar certificados
# Listar todos os certificados emitidos de um curso
curl "https://api.dokstamp.eu/certificates?where[status]=issued&where[course_uuid]=c3d4e5f6-a7b8-9012-cdef-123456789012&sort[column]=issued_at&sort[order]=desc" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "X-Tenant: {TENANT}"
Emitir um certificado
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|
institution_uuid | string | Sim | UUID da instituição emissora |
course_uuid | string | Sim | UUID do curso |
student_uuid | string | Sim | UUID do estudante destinatário |
file_uuid | string | Sim | UUID do arquivo PDF enviado (deve estar sem uso) |
status | enum | Não | draft (padrão) ou issued |
issued_at | datetime | Não | Data oficial de emissão (obrigatória se status=issued) |
cohort_uuid | string | Não | UUID da turma |
enrollment_uuid | string | Não | UUID da matrícula |
template_uuid | string | Não | UUID do modelo de certificado |
public_verification_url | string | Não | URL de verificação personalizada (gerada automaticamente se omitida) |
curl -X POST https://api.dokstamp.eu/certificates \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Tenant: {TENANT}" \
-d '{
"institution_uuid": "550e8400-e29b-41d4-a716-446655440000",
"course_uuid": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"student_uuid": "f6a7b8c9-d0e1-2345-fghi-456789012345",
"file_uuid": "h8i9j0k1-l2m3-4567-nopq-678901234567",
"status": "issued",
"issued_at": "2024-12-01T00:00:00Z",
"cohort_uuid": "e5f6a7b8-c9d0-1234-efgh-345678901234",
"enrollment_uuid": "g7h8i9j0-k1l2-3456-mnop-567890123456"
}'
Resposta 201:
{
"data": {
"uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "issued",
"issued_at": "2024-12-01T00:00:00.000000Z",
"public_verification_url": "https://verificar.dokstamp.eu/a1b2c3d4",
"institution": { "name": "Federal University of Technology" },
"course": { "name": "Bachelor of Computer Science" },
"student": { "name": "Maria Fernanda Silva" }
}
}
Um UUID de arquivo só pode ser usado uma vez. Se você tentar criar um segundo certificado com o mesmo file_uuid, receberá um erro 422. Faça upload de um novo arquivo para cada certificado.
Obter um certificado
GET /certificates/{uuid}?includes[student]=1&includes[course]=1&includes[institution]=1&includes[files]=1
Atualizar um certificado
PATCH /certificates/{uuid}
PUT /certificates/{uuid}
Você pode atualizar certificados com status draft. A atualização de um certificado com status issued é restrita.
Excluir um certificado
DELETE /certificates/{uuid}
DELETE /certificates/batch/destroy
Assertion de emblema (Open Badges)
GET /certificates/{uuid}/badges/assertions
Retorna a assertion W3C Open Badges 2.0 para o certificado. Este endpoint é usado por serviços de verificação de emblemas e badge backpacks (ex.: Badgr, Credly).
Relacionados