Saltar al contenido

Emite certificados de um modelo ativo

POST/api/certificates

Auth
Requiere token
X-CommunityId
X-CommunityId Envía el X-CommunityId de la comunidad en la que ocurre la operación.
Las descripciones de los endpoints vienen de la especificación de la API y, por ahora, están en portugués. La interfaz alrededor está traducida.

O modelo vem por `templateId` ou `templateSlug`. Para quem: qualquer combinação de `profileIds`, `memberGroupIds` e `tags` (nomes) / `tagIds`, só membros da comunidade; a união das pessoas, sem repetir quem está em mais de um. `memberGroupId` e `tagId` no singular continuam aceitos. Emissão por e-mail não existe mais: `emails` responde 400. Quem já tem um certificado vigente do modelo é avisado e pulado (`skipped`, motivo `alreadyHas`), a menos que `issueAnyway: true`. Nome com caractere que nenhuma fonte desenha é pulado (`unsupportedName`). `dryRun: true` responde 200 com essa conferência sem gravar. Emitindo, responde **202**: as linhas nascem `PENDING` com a data e hora deste pedido, e a renderização vai para a fila; com mais de uma pessoa há um `batch` para acompanhar. Limite de 1.000 pessoas por pedido.

Headers

NombreTipoDescripción
X-CommunityIdopcionalstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.

Cuerpo de la solicitud application/json

NombreTipoDescripción
templateIdopcionalstring (uuid)Ou `templateSlug`.
templateSlugopcionalstring
profileIdsopcionalstring (uuid)[]
memberGroupIdsopcionalstring (uuid)[]
tagsopcionalstring[]Nomes das tags, como em `GET /api/profiles/tags`.
tagIdsopcionalstring (uuid)[]Ids de `CommunityTag` (só existem para tags com cor).
memberGroupIdopcionalstring (uuid)
tagIdopcionalstring (uuid)
overridesopcionalobjectValores desta emissão; ausentes vêm do modelo.
overrides.titleopcionalstring
overrides.descriptionopcionalstring
overrides.workloadHoursopcionalnumber
overrides.subjectTitleopcionalstringDo que é o certificado (um curso, um evento, uma mentoria). Preenche {assunto} e o campo `subjectTitle` da arte.
overrides.courseTitleopcionalstringApelido de `subjectTitle`.
overrides.eventTitleopcionalstringApelido de `subjectTitle`.
sendEmailopcionalboolean
issueAnywayopcionalboolean"Emitir mesmo assim" para quem já tem.
dryRunopcionalboolean

Respuestas

CódigoDescripción
200Conferência (`dryRun`) ou nada a emitir.
202Emissão aceita, renderizando na fila.
400Requisição inválida — falha de validação.
401Token ausente, inválido ou expirado.
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
500Erro interno do servidor.

Ejemplo con curl

curl -X POST "https://api.memberfy.net/api/certificates" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{}'