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.
Portfólio do Estudante
Cada estudante pode ter uma página de portfólio público — uma apresentação curada dos seus certificados conquistados, acessível através de um URL único. As instituições gerem a página em nome dos estudantes por meio da API.
As páginas de portfólio são acessíveis publicamente em:
https://portfolio.dokstamp.eu/{slug}
Por exemplo: https://portfolio.dokstamp.eu/maria-fernanda-silva
Criar uma página de portfólio
curl -X POST "https://api.dokstamp.com/students/{student_uuid}/pages" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Tenant: {TENANT}" \
-d '{
"slug": "maria-fernanda-silva",
"is_public": true,
"bio": "Formada em Ciência da Computação com foco em sistemas distribuídos e aprendizado de máquina."
}'
O slug deve ser amigável para URL (letras minúsculas, números, hífens) e único na plataforma.
Adicionar certificados ao portfólio
Após emitir os certificados, adicione-os à página de portfólio do estudante:
curl -X POST "https://api.dokstamp.com/students/{student_uuid}/pages/{page_uuid}/items" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Tenant: {TENANT}" \
-d '{
"certificate_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"sort_order": 1,
"is_visible": true
}'
Reordenar itens do portfólio
# Atualizar sort_order para reposicionar um item
curl -X PATCH "https://api.dokstamp.com/students/{student_uuid}/pages/{page_uuid}/items/{item_uuid}" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Tenant: {TENANT}" \
-d '{ "sort_order": 2 }'
Ocultar um certificado da visualização pública
Mantenha o item no portfólio, mas torne-o invisível para visitantes públicos:
curl -X PATCH "https://api.dokstamp.com/students/{student_uuid}/pages/{page_uuid}/items/{item_uuid}" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Tenant: {TENANT}" \
-d '{ "is_visible": false }'
Tornar a página privada
Uma página privada não é acessível publicamente. Útil enquanto se adicionam certificados antes de publicar:
curl -X PATCH "https://api.dokstamp.com/students/{student_uuid}/pages/{page_uuid}" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Tenant: {TENANT}" \
-d '{ "is_public": false }'
async function onboardarNovoFormando(student, certificate) {
// 1. Criar a página de portfólio
const pageRes = await api.post(`/students/${student.uuid}/pages`, {
slug: slugify(`${student.name}-${Date.now()}`),
is_public: false, // começar como privada
bio: `${student.name} se formou em ${certificate.course.name}.`,
});
const page = pageRes.data;
// 2. Adicionar o certificado
await api.post(`/students/${student.uuid}/pages/${page.uuid}/items`, {
certificate_uuid: certificate.uuid,
sort_order: 1,
is_visible: true,
});
// 3. Publicar a página
await api.patch(`/students/${student.uuid}/pages/${page.uuid}`, {
is_public: true,
});
return `https://portfolio.dokstamp.eu/${page.slug}`;
}
Regras de privacidade do portfólio
is_public | is_visible (item) | Resultado |
|---|
true | true | Certificado visível na página pública |
true | false | Página pública, mas certificado oculto |
false | qualquer | Página inteira é privada |