API Reference
Verify
Cryptographically verify a sealed .ddna envelope. Confirms the Ed25519 signature, checks the registry, and returns conformance level.
/v1/verifyscope: verifyOverview
The Verify endpoint validates a .ddna envelope's cryptographic signature using the eddsa-jcs-2022 cryptosuite. It checks whether the envelope is listed in the DeepaData registry and returns the conformance level and compliance check results.
What it verifies: The Ed25519 signature over the canonicalized envelope payload. If the signature is valid and the envelope hash matches a registry entry, the artifact is DeepaData-issued. Otherwise it may be self-sealed.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| envelope | object | required | The full .ddna envelope returned from /v1/issue. Must contain proof.verificationMethod. |
Example Request
curl -X POST https://deepadata.com/api/v1/verify \
-H "Authorization: Bearer dda_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"envelope": {
"ddna_header": {
"version": "1.0",
"format": "ddna",
"created": "2026-04-01T10:30:00.000Z"
},
"edm_payload": {
"meta": { "id": "edm_01HV8X3K2M...", "version": "0.8.0" },
"core": { "anchor": "...", "spark": "..." },
"constellation": { "emotion_primary": "relief" },
"governance": { "jurisdiction": "GDPR", "consent_basis": "consent" }
},
"proof": {
"type": "DataIntegrityProof",
"cryptosuite": "eddsa-jcs-2022",
"verificationMethod": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK#key-1",
"proofPurpose": "assertionMethod",
"proofValue": "z5vgFc8h2YR3..."
}
}
}'Response Fields
| Field | Type | Description |
|---|---|---|
| verified | boolean | True if Ed25519 signature is valid. |
| registry_listed | boolean | True if envelope hash found in DeepaData registry. |
| certificate_id | string | null | Certificate ID if registry listed, null otherwise. |
| conformance.level | string | 'sealed' | 'certified' | 'self-sealed' | null |
| conformance.checks.schema_valid | boolean | EDM schema validation passed. |
| conformance.checks.provenance_intact | boolean | Audit chain unbroken. |
| conformance.checks.consent_attested | boolean | Consent basis documented. |
| conformance.checks.governance_complete | boolean | Governance domain complete. |
| conformance.checks.non_biometric | boolean | No prohibited biometric inference. |
| signer.did | string | DID of the signing key. |
| signer.verification_method | string | Full verification method URI. |
Example Response
{
"success": true,
"data": {
"verified": true,
"registry_listed": true,
"certificate_id": "cert_8f7a3b2c-1234-5678-abcd-ef0123456789",
"conformance": {
"level": "sealed",
"checks": {
"schema_valid": true,
"provenance_intact": true,
"consent_attested": true,
"governance_complete": true,
"non_biometric": true
}
},
"signer": {
"did": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK",
"verification_method": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK#key-1"
}
},
"meta": {
"verified_at": "2026-04-01T10:31:00.000Z"
}
}Error Codes
'envelope' field is required and must be a .ddna envelope object
Envelope missing proof.verificationMethod
Missing or invalid API key
API key does not have 'verify' scope
Rate limit exceeded
Verification failed