Saltar para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://docs.dokstamp.com/llms.txt

Use this file to discover all available pages before exploring further.

Quick Start

Este guia mostra como emitir um certificado digital de ponta a ponta utilizando chamadas reais à API. O utilizador vai criar as entidades mínimas necessárias e emitir um certificado numa única sessão.
Todas as entidades devem pertencer ao mesmo tenant. Obtenha as suas credenciais de integração junto ao seu gestor de conta DokStamp antes de começar.

Pré-requisitos

  • Credenciais de integração (client_id e client_secret) — fornecidas pelo seu gestor de conta DokStamp
  • O seu identificador X-Tenant
  • Um ficheiro PDF do certificado a ser emitido

Passo 1 — Obter um Token de Serviço

curl -X POST https://api.dokstamp.com/oauth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
Guarde o access_token da resposta. É válido por 12 horas. Utilize-o em todos os pedidos subsequentes.

Passo 2 — Criar uma Instituição

Uma instituição é o órgão emissor. Deve existir antes de cursos ou certificados.
curl -X POST https://api.dokstamp.com/institutions \
  -H "Authorization: Bearer {TOKEN}" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-Tenant: {TENANT}" \
  -d '{
    "name": "Minha Universidade",
    "legal_name": "Fundação Minha Universidade",
    "tax_id": "00.000.000/0001-00",
    "country": "Brazil",
    "website": "https://minhauniversidade.edu.br",
    "status": "active"
  }'
Guarde o uuid da resposta — será necessário como institution_uuid.

Passo 3 — Criar um Curso

curl -X POST https://api.dokstamp.com/courses \
  -H "Authorization: Bearer {TOKEN}" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-Tenant: {TENANT}" \
  -d '{
    "name": "Bacharelado em Ciência da Computação",
    "code": "BCC-2024",
    "description": "Curso de graduação de 4 anos em ciência da computação.",
    "workload_hours": 3200,
    "status": "active",
    "institution_uuid": "{INSTITUTION_UUID}"
  }'
Guarde o uuid como course_uuid.

Passo 4 — Criar um Estudante

curl -X POST https://api.dokstamp.com/students \
  -H "Authorization: Bearer {TOKEN}" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-Tenant: {TENANT}" \
  -d '{
    "name": "Maria Fernanda Silva",
    "email": "maria@email.com",
    "date_of_birth": "1998-05-20",
    "gender": "female"
  }'
Guarde o uuid como student_uuid.

Passo 5 — Carregar o PDF

Carregue o ficheiro PDF do certificado assinado:
curl -X POST https://api.dokstamp.com/files \
  -H "Authorization: Bearer {TOKEN}" \
  -H "Accept: application/json" \
  -H "X-Tenant: {TENANT}" \
  -F "files[]=@/caminho/para/certificado.pdf"
A resposta devolve um array. Guarde o uuid do primeiro item como file_uuid.

Passo 6 — Emitir o Certificado

Agora combine tudo num certificado:
curl -X POST https://api.dokstamp.com/certificates \
  -H "Authorization: Bearer {TOKEN}" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-Tenant: {TENANT}" \
  -d '{
    "institution_uuid": "{INSTITUTION_UUID}",
    "course_uuid": "{COURSE_UUID}",
    "student_uuid": "{STUDENT_UUID}",
    "file_uuid": "{FILE_UUID}",
    "status": "issued",
    "issued_at": "2024-12-01T00:00:00Z"
  }'
Resposta:
{
  "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",
    "student": { "name": "Maria Fernanda Silva" },
    "course": { "name": "Bacharelado em Ciência da Computação" },
    "institution": { "name": "Minha Universidade" }
  }
}
O public_verification_url é o link partilhável para verificação da credencial.

O que fazer a seguir?

Ordem de Registo de Entidades

Veja o mapa completo de dependências antes de construir integrações.

Ciclo de Vida do Certificado

Saiba como os certificados passam de rascunho a emitido, revogado e expirado.

Guia: Emitir Certificado

Um guia mais detalhado com módulos, turmas, matrículas e templates.

Referência da API

Referência completa de parâmetros para cada endpoint.