VerifycateDeveloper Docs

Create a certificate

POST/api/v1/workspaces/{slug}/certificates

Create a new certificate in a workspace

Creates a certificate (defaults to draft) and an owned template draft. name is required.

Authorization

Scopecertificates:write
Authorization: Bearer vc_...

Requires certificates:write (or full access) and an active Pro seat. Enabling request or correction forms also requires an active seat for operate features.

Path parameters

slug*string

Workspace slug

Example: acme

Body parameters

name*string

Certificate name

Example: Python Fundamentals
status?string

draft, active, or archived (defaults to draft)

Example: active
description?string

What this certificate represents (max 4000 chars)

Example: Completion of the Python fundamentals track
certificate_type?string

One of certificate, badge, certification, course, workshop, event, membership, recognition

Example: course
level?string

One of beginner, intermediate, advanced, professional

Example: beginner
duration?string

Free-text time to earn (max 80 chars)

Example: 8 weeks
learn_more_url?string

http or https URL

Example: https://example.com/python
earning_criteria?string[]

Up to 10 criteria, each ≤ 500 chars

Example: ["Complete all modules"]
skill_ids?UUID[]

Ordered skill ids to link (max 20)

request_form_enabled?boolean

Enable the public certificate request form

Example: true
request_form_mode?string

auto_issue_all issues every applicant on submit; manual_approval queues each one for review. Defaults to manual_approval.

Example: manual_approval
unlock_form_enabled?boolean

Hold imported recipients behind an unlock form until they respond

Example: true
correction_form_enabled?boolean

Enable correction form

Example: true
correction_form_mode?string

Defaults to manual_approval

Attribute definitions, form fields, and validity_days are set via update after create when needed.

Response schema

active_recipient_count*integer
attributes*object
blockchain_enabled*boolean
certificate_type*string
correction_form_enabled*boolean
correction_form_fields*array
correction_form_mode*string
correction_form_token*string
created_at*string
description*string
duration*string
earning_criteria*object
has_template*boolean
id*string
learn_more_url*string
level*string
name*string
pending_recipient_count*integer
published_template_version?integer
?RecipientStatusCounts
awaiting_form_response*integer
awaiting_review*integer
changes_requested*integer
expired*integer
issued*integer
ready_to_send*integer
waiting_for_publish*integer
request_form_enabled*boolean
request_form_fields*array
request_form_mode*string
request_form_token*string
skills*array
sponsors*array
status*string
template_versions?array
unlock_form_enabled*boolean
unlock_form_fields*array
unlock_release_policy?string
updated_at*string
validity_days*integer
workspace_id*string