Pré-visualização do modelo renderizada pelo servidor
POST/api/certificates/templates/{id}/preview
- Auth
- Token erforderlich
- X-CommunityId
X-CommunityIdSende die X-CommunityId der Community, in der die Operation stattfindet.
Die Beschreibungen der Endpoints stammen aus der API-Spezifikation und sind vorerst auf Portugiesisch. Die Oberfläche drumherum ist übersetzt.
O mesmo motor da emissão, com dados fictícios (nome longo de propósito). O corpo é opcional e pode trazer edições não salvas (`layout`, `title`, `signers`...). Responde a imagem PNG (1600 px de largura) ou o PDF com `?format=pdf`. O header `X-Certificate-Warnings` lista campos cujo texto não coube nem no tamanho mínimo.
Parameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | path | string (uuid) | |
formatoptional | query | png | pdf |
Header
| Name | Typ | Beschreibung |
|---|---|---|
X-CommunityIdoptional | string (uuid) | ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade. |
Request-Body application/json
| Name | Typ | Beschreibung |
|---|---|---|
nameoptional | string | Nome interno do modelo. |
slugoptional | string | Endereço estável do modelo, para outros módulos (gatilhos de curso e evento) apontarem para ele sem o id. Gerado do nome na criação quando não vier; editável; único na comunidade; minúsculas, números e hífens. Renomear o modelo não muda o slug. Inválido ou já usado: 400 com `param: slug`. · max 60 |
titleoptional | string | Título impresso ("Certificado de conclusão"). |
descriptionoptional | string | Aceita {nome}, {assunto} e {cargaHoraria} ({curso} e {evento} continuam valendo, como apelidos de {assunto}). Trecho entre colchetes é opcional: `concluiu[ {assunto}], com…` some quando a variável dentro dele está vazia. Fora de colchetes, a oração (entre vírgulas) com uma variável vazia é omitida, exceto a primeira, onde só a variável sai. |
workloadHoursoptional | number | |
languageoptional | string | Nasce com o idioma da comunidade. |
timezoneoptional | string | Fuso IANA da data impressa. |
signersoptional | object[] | |
signers[].namePflicht | string | |
signers[].roleoptional | string | |
signers[].signatureImageUrloptional | string | URL devolvida pelo upload de assinatura. |
layoutoptional | object[] | Só no tipo IMAGE. |
layout[].keyPflicht | recipientName | issuedAt | qr | title | description | workload | subjectTitle | code | signer1 | signer2 | |
layout[].boxPflicht | object | |
layout[].box.xoptional | number | ≥ 0, ≤ 100 |
layout[].box.yoptional | number | ≥ 0, ≤ 100 |
layout[].box.woptional | number | ≥ 0.1, ≤ 100 |
layout[].box.hoptional | number | ≥ 0.1, ≤ 100 |
layout[].fontoptional | inter | montserrat | lora | playfair-display | eb-garamond | great-vibes | noto-sans | Obrigatório fora do `qr`. |
layout[].weightoptional | 400 | 700 | |
layout[].sizeoptional | number | % da altura da página (6 ≈ 36 pt). |
layout[].minSizeoptional | number | O texto encolhe até aqui antes de quebrar em duas linhas. |
layout[].coloroptional | string | |
layout[].alignoptional | left | center | right | |
layout[].valignoptional | top | middle | bottom | |
layout[].uppercaseoptional | boolean |
Antworten
| Status | Beschreibung |
|---|---|
200 | A imagem ou o PDF. |
400 | Requisição inválida — falha de validação. |
401 | Token ausente, inválido ou expirado. |
403 | Autenticado, mas sem permissão para esta operação. |
404 | Recurso não encontrado. |
500 | Erro interno do servidor. |
curl-Beispiel
curl -X POST "https://api.memberfy.net/api/certificates/templates/<id>/preview" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{}'