Skip to content

List all certificates

GET
/api/v1/certificates
curl --request GET \
--url 'http://localhost:3000/api/v1/certificates?status=all&type=all&deviceId=550e8400-e29b-41d4-a716-446655440000&search=CN%3Ddevice-001&page=1&limit=20' \
--header 'X-API-Key: <X-API-Key>'

Retrieves all certificates (device and CA) for the organization with filtering and pagination support.

status
string
default: all
Allowed values: all valid expiring expired revoked

Filter by certificate status

type
string
default: all
Allowed values: all device ca

Filter by certificate type

deviceId
string
Example
550e8400-e29b-41d4-a716-446655440000

Filter by device ID (only for device certificates)

search
string
Example
CN=device-001

Search by subject or fingerprint

page
number
default: 1 >= 1

Page number (1-based)

limit
number
default: 20 >= 1 <= 100

Number of items per page

List of certificates retrieved successfully

Media type application/json
object
data
required

List of certificates

Array<object>
object
id
required

Certificate UUID

string
type
required

Certificate type

string
Allowed values: device ca
subject
required

Certificate subject (Common Name)

string
issuer
required

Certificate issuer

string
fingerprint
required

Certificate SHA-256 fingerprint

string
notBefore
required

Certificate validity start date

string format: date-time
notAfter
required

Certificate expiration date

string format: date-time
status
required

Certificate status

string
Allowed values: valid expiring expired revoked
deviceId

Device ID (only for device certificates)

string
deviceName

Device name (only for device certificates)

string
createdAt
required

Certificate creation date

string format: date-time
serialNumber

Certificate serial number (hex)

string
keyAlgorithm

Public key algorithm and size

string
signatureAlgorithm

Signature algorithm

string
subjectAltNames

Subject Alternative Names

Array<string>
certificate

PEM-encoded public certificate (CA certs only)

string
total
required

Total number of certificates matching the filter

number
page
required

Current page number

number
limit
required

Number of items per page

number
totalPages
required

Total number of pages

number
Example
{
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"type": "device",
"subject": "CN=device-001.example.com",
"issuer": "CN=Margo Root CA",
"fingerprint": "A1:B2:C3:D4:E5:F6...",
"notBefore": "2024-01-01T00:00:00.000Z",
"notAfter": "2025-01-01T00:00:00.000Z",
"status": "valid",
"deviceId": "550e8400-e29b-41d4-a716-446655440001",
"deviceName": "Production Gateway 1",
"createdAt": "2024-01-01T00:00:00.000Z"
}
],
"total": 150,
"page": 1,
"limit": 20,
"totalPages": 8
}

Unauthorized - Invalid or missing authentication

Forbidden - Insufficient permissions