Skip to main content
POST
/
v1
/
issuers
Create Issuer
curl --request POST \
  --url https://api.truthlocks.com/v1/issuers \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "name": "Acme University",
  "domain": "acme.edu"
}
'
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "tenant_id": "tenant-uuid",
  "name": "Acme University",
  "domain": "acme.edu",
  "status": "PENDING",
  "trust_level": "BASIC",
  "created_at": "2026-01-13T12:00:00Z",
  "updated_at": "2026-01-13T12:00:00Z"
}
Registers a new issuer in the trust registry. Newly created issuers start in PENDING status and must be approved by a governance admin before they can mint attestations.

Parameters

name
string
required
Human-readable name for the issuer
domain
string
required
Verified domain for the issuer (e.g., acme.edu)

Responses

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "tenant_id": "tenant-uuid",
  "name": "Acme University",
  "domain": "acme.edu",
  "status": "PENDING",
  "trust_level": "BASIC",
  "created_at": "2026-01-13T12:00:00Z",
  "updated_at": "2026-01-13T12:00:00Z"
}

Authorizations

X-API-Key
string
header
required

API key for machine-to-machine authentication

Body

application/json
name
string
required
domain
string
required

Response

Issuer created

id
string<uuid>
tenant_id
string<uuid>
name
string
domain
string
status
enum<string>
Available options:
PENDING,
APPROVED,
SUSPENDED,
REVOKED
trust_level
enum<string>
Available options:
BASIC,
VERIFIED,
ENTERPRISE
created_at
string<date-time>
updated_at
string<date-time>