Skip to content

Credentials API

List all credentials for the authenticated server.

{
"status": "success",
"data": [
{
"id": 1,
"uuid": "abc-123-def",
"name": "Production API",
"type": "API",
"hold": false,
"last_used_at": "2026-03-28T10:00:00Z"
},
{
"id": 2,
"uuid": "ghi-456-jkl",
"name": "SMTP Relay",
"type": "SMTP",
"hold": false,
"last_used_at": "2026-03-30T08:30:00Z"
}
]
}

Create a new credential.

ParameterTypeRequiredDescription
namestringYesHuman-readable name
typestringNoSMTP (default) or API
holdbooleanNoCreate in held state
{
"status": "success",
"data": {
"id": 3,
"uuid": "mno-789-pqr",
"name": "New API Key",
"type": "API",
"hold": false,
"key": "vml_abc123def456ghi789jkl"
}
}

Create a new credential and revoke the old one (key rotation).

ParameterTypeRequiredDescription
uuidstringYesUUID of the credential to regenerate
{
"status": "success",
"data": {
"old_id": 2,
"old_uuid": "ghi-456-jkl",
"new_id": 4,
"new_uuid": "stu-012-vwx",
"key": "vml_newkey123456789..."
}
}

Triggers a CredentialLocked webhook for the old credential.

Mark a credential as held (revoked). Held credentials cannot be used for authentication.

ParameterTypeRequiredDescription
uuidstringYesUUID of the credential to revoke
{
"status": "success",
"data": {
"id": 2,
"uuid": "ghi-456-jkl",
"hold": true
}
}

Triggers a CredentialLocked webhook.

Not authenticated
POST
X-Server-API-Key
Content-Type