Public, no sign-in; at most 20 requests a minute. Returns the public details of a certificate: status, which side created it, collection and issue dates, custodian, device, item and message counts, date range and data hash. Returns 404 for an unknown id.
GET
/certificates/{certificateId}/verify
curl \
--request GET 'http://api.example.com/certificates/{certificateId}/verify' \
--header "Authorization: Bearer $ACCESS_TOKEN"
Response examples (200)
{
"data": {
"selectedMessageUpload": {
"version": 1,
"conversations": [
{
"messageSharing": {
"sharedMessageCount": 25,
"totalMessageCount": 480,
"totalReportedAt": "2026-05-14T16:05:00.000Z"
},
"selectionCoverage": {
"app": "message",
"conversationId": 42,
"mode": "selected_messages",
"selectedMessageCount": 25,
"eligibleMessageCount": 480,
"includedMessageCount": 25,
"omittedEligibleMessageCount": 455,
"selectedNotIncludedCount": 0,
"totalMessageCount": 480,
"deviceConversation": "507f1f77bcf86cd799439011",
"ingestionStatus": "completed",
"ingestedMessageCount": 25,
"verifiedAt": "2026-05-14T16:10:00.000Z",
"completedAt": "2026-05-14T16:10:00.000Z",
"failedAt": null,
"isPartial": true,
"coverage": "selected_messages",
"eligibleScope": "after_date_and_incremental_filters",
"uploadAttemptId": "3f2b8c1e-9a4d-4e7b-8c2f-1d5e6a7b8c9d",
"deviceBackupId": "65a1b2c3d4e5f6a7b8c9d0e2",
"reportOrder": "2026-05-14T16:00:00.000Z:65a1b2c3d4e5f6a7b8c9d0e2"
}
}
]
},
"certificateId": "HC-2026-05-15-A1B2-1F3",
"status": "verified",
"generatedBySide": "org",
"collectionDate": "2026-05-14T16:02:00.000Z",
"custodianName": "Jane Doe",
"collectionId": "A1B2C3",
"dataHash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"itemsCollected": 1520,
"issuedAt": "2026-05-15T09:30:00.000Z",
"requestingAttorney": "John Smith",
"deviceName": "iPhone",
"deviceModel": "iPhone 15",
"conversationCount": 12,
"totalMessages": 1480,
"dataDateRange": {
"start": "2025-01-01",
"end": "2026-05-14"
},
"extractionCode": "A1B2C3"
},
"statusCode": 200,
"timestamp": "2026-01-15T10:15:00.000Z"
}