Skip to main content
POST
Record a certification for a person

Authorizations

Authorization
string
header
required

An API key issued by a company administrator — an environment prefix (production: sdb_live_) followed by 32 characters. The prefix identifies the environment and MUST NOT be hard-coded or validated by clients; treat the whole key as opaque. Shown exactly once at creation; only a one-way hash is stored.

Scopes (granted per key on the create screen; :write never implies :read):

  • skills:read
  • skills:write
  • people:read
  • people:write
  • careers:read
  • careers:write
  • training:read
  • training:write
  • flags:read
  • flags:write
  • org:read
  • org:write
  • assessments:read
  • learning:read
  • learning:write
  • certifications:read
  • certifications:write
  • assessments:write
  • proficiency:read
  • proficiency:write
  • surveys:read
  • surveys:write
  • labels:read
  • labels:write

Headers

Idempotency-Key
string

Any unique string (at most 200 characters). Retrying with the same key and identical content replays the stored response for 24h instead of executing twice.

Maximum string length: 200

Path Parameters

personId
string
required

The person's email address — or the opaque person id from any response.

Example:

"ada@example.com"

Body

application/json
certificationId
string
required

Certification id from GET /certifications.

Example:

"87"

issuedAt
string

Issued date (ISO 8601).

Example:

"2025-06-01"

expiresAt
string

Expiry date (ISO 8601); must not precede issuedAt.

Example:

"2027-06-01"

identifier
string
Maximum string length: 255
Example:

"FL-2291-B"

scoreDescription
string
Maximum string length: 255
Example:

"Distinction"

certified
boolean

Pass/fail. The app can only ever record true; the API may record false.

Example:

true

issuingAuthority
string
Maximum string length: 255
Example:

"National Safety Council"

files
object[]

Each file returns a pre-signed upload URL.

Response

The created resource, enveloped.

data
object
required