SkillhabitDocs

Certificate Management

Manager-facing certificate and participation generation and removal workflows.

POST
/manage-certificate/participation

Starts manager-driven participation/certificate generation for a user and content item. The endpoint validates the requested certificate dates, verifies the target user account, starts a generation progress record, and delegates to the participation service for the requested content type.

AuthorizationBearer <token>

A JSON Web Token

In: header

Request Body

application/json

Certificate participation request. userId, contentId, and contentType are required; date fields are epoch milliseconds when supplied.

TypeScript Definitions

Use the request body type in TypeScript.

Request to generate certificate-backed participation for a user and content item.

Response Body

application/json

application/json

curl -X POST "https://example.com/manage-certificate/participation" \  -H "Content-Type: application/json" \  -d '{}'
{  "progressId": "c1b2a3d4-5e6f-4a70-9b8c-1d2e3f4a5b60"}
POST
/manage-certificate/invite

Placeholder endpoint for certificate invitation creation. The current implementation has no request body and no side effects.

AuthorizationBearer <token>

A JSON Web Token

In: header

Response Body

curl -X POST "https://example.com/manage-certificate/invite"
Empty
DELETE
/manage-certificate/participation/users/{userId}/contents/{contentId}

Removes a certificate for a user and content item. The content type is resolved from the stored certificate.

AuthorizationBearer <token>

A JSON Web Token

In: header

Path Parameters

userId*string

User id whose certificate should be removed.

contentId*string

Content id for the course, program, SCORM package, or meetup.

Response Body

curl -X DELETE "https://example.com/manage-certificate/participation/users/7f9c2a1e-4b8d-4f6a-9c2e-1d3b5a7e9c01/contents/d69c7cd1-9943-4f7f-b95f-0572b3458e9c"
Empty
GET
/manage-certificate/status/{progressId}

Returns the current status of a certificate/participation generation progress record created by POST /manage-certificate/participation.

AuthorizationBearer <token>

A JSON Web Token

In: header

Path Parameters

progressId*string

Progress id returned when certificate generation was started.

Header Parameters

PingPong-Calling-User-Id?string

User id of the manager/admin checking generation status.

Response Body

curl -X GET "https://example.com/manage-certificate/status/c1b2a3d4-5e6f-4a70-9b8c-1d2e3f4a5b60" \  -H "PingPong-Calling-User-Id: a7a1c0de-2b6f-4f2d-8d8e-9f0a2b3c4d5e"
Empty