VALID
Checks meet validation conditions under the selected context.
Request a context-bound assessment, follow its job and read VALID, INVALID or INDETERMINATE reports.
Checks meet validation conditions under the selected context.
One or more checks fail; the report explains why.
Insufficient data or grounds for a conclusion; never automatically relabel as valid.
LOCAL SIMULATION · Target contracts · No network requests
/v1/archives/{archiveId}/verification| Property | Value |
|---|---|
| Technical owner | Verification Service |
| Application scope | verification:write |
| HTTP | 202 |
| Call processing | Asynchronous work: inspect Job and the result-resource state. |
| Event | VerificationRequested |
Select an authorized versioned context; INDETERMINATE is a report outcome, not a transport failure.
curl --fail-with-body --request POST \
"${BASE_URL%/}/v1/archives/${ARCHIVE_ID}/verification" \
--header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "X-Correlation-ID: ${CORRELATION_ID}" \
--header "Idempotency-Key: ${IDEMPOTENCY_KEY}" \
--header "Content-Type: application/json" \
--data-binary "@${REQUEST_FILE}"{
"evidenceVersion": 1,
"trustContextId": "trust-test-001",
"dataReference": "https://storage.example.invalid/test/object-001"
}{
"jobId": "job-verification-001",
"state": "QUEUED",
"resourceId": "ver-test-001",
"correlationId": "corr-test-001",
"pollAfterSeconds": 2
}{
"type": "object",
"properties": {
"evidenceVersion": {
"type": "integer",
"minimum": 1
},
"trustContextId": {
"type": "string"
},
"dataReference": {
"type": "string",
"format": "uri"
}
},
"required": [
"evidenceVersion",
"trustContextId",
"dataReference"
],
"additionalProperties": false,
"examples": [
{
"evidenceVersion": 1,
"trustContextId": "trust-test-001",
"dataReference": "https://storage.example.invalid/test/object-001"
}
]
}{
"type": "https://example.invalid/problems/trust-context-unavailable",
"title": "Trust Context Unavailable",
"code": "TRUST_CONTEXT_UNAVAILABLE",
"detail": "The requested trust context is unavailable.",
"correlationId": "corr-test-001",
"requestId": "req-test-001",
"retryable": false,
"service": "Verification Service",
"timestamp": "2026-10-15T05:00:01Z",
"errors": [],
"status": 422,
"instance": "urn:ltans:request:req-test-001"
}/v1/verifications/{verificationId}| Property | Value |
|---|---|
| Technical owner | Verification Service |
| Application scope | verification:read |
| HTTP | 200 |
| Call processing | Authentication/authorization → HTTP handling; not a resource-state enum. |
| Event | Audit or internal event |
Select an authorized versioned context; INDETERMINATE is a report outcome, not a transport failure.
curl --fail-with-body --request GET \
"${BASE_URL%/}/v1/verifications/${VERIFICATION_ID}" \
--header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "X-Correlation-ID: ${CORRELATION_ID}"{
"verificationId": "ver-test-001",
"archiveId": "arc-test-001",
"outcome": "INDETERMINATE",
"evaluatedAt": "2026-10-15T05:00:00Z",
"trustContextId": "trust-test-001",
"policyId": "policy-test-v1",
"policyVersion": "1",
"toolVersion": "target-validator-1",
"evidenceVersion": 1,
"reasonCodes": [
"TEST_TRUST_MATERIAL_NOT_SUPPLIED"
],
"steps": [
{
"check": "timestamp-path",
"outcome": "INDETERMINATE",
"reasonCode": "TEST_TRUST_MATERIAL_NOT_SUPPLIED",
"detail": "Synthetic response: no trusted TSA token is bundled."
}
]
}{
"type": "object",
"properties": {
"verificationId": {
"type": "string"
},
"archiveId": {
"type": "string"
},
"outcome": {
"type": "string",
"enum": [
"VALID",
"INVALID",
"INDETERMINATE"
]
},
"evaluatedAt": {
"type": "string",
"format": "date-time"
},
"steps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"check": {
"type": "string"
},
"outcome": {
"type": "string",
"enum": [
"VALID",
"INVALID",
"INDETERMINATE",
"NOT_APPLICABLE"
]
},
"detail": {
"type": "string"
},
"reasonCode": {
"type": "string"
}
},
"required": [
"check",
"outcome",
"reasonCode"
],
"additionalProperties": false
},
"minItems": 1
},
"trustContextId": {
"type": "string"
},
"policyId": {
"type": "string"
},
"policyVersion": {
"type": "string"
},
"toolVersion": {
"type": "string"
},
"evidenceVersion": {
"type": "integer",
"minimum": 1
},
"reasonCodes": {
"type": "array",
"minItems": 1,
"items": {
"type": "string"
}
}
},
"required": [
"verificationId",
"archiveId",
"outcome",
"steps",
"evaluatedAt",
"trustContextId",
"policyId",
"policyVersion",
"toolVersion",
"evidenceVersion",
"reasonCodes"
],
"additionalProperties": false,
"examples": [
{
"verificationId": "ver-test-001",
"archiveId": "arc-test-001",
"outcome": "INDETERMINATE",
"evaluatedAt": "2026-10-15T05:00:00Z",
"trustContextId": "trust-test-001",
"policyId": "policy-test-v1",
"policyVersion": "1",
"toolVersion": "target-validator-1",
"evidenceVersion": 1,
"reasonCodes": [
"TEST_TRUST_MATERIAL_NOT_SUPPLIED"
],
"steps": [
{
"check": "timestamp-path",
"outcome": "INDETERMINATE",
"reasonCode": "TEST_TRUST_MATERIAL_NOT_SUPPLIED",
"detail": "Synthetic response: no trusted TSA token is bundled."
}
]
}
]
}{
"type": "https://example.invalid/problems/trust-context-unavailable",
"title": "Trust Context Unavailable",
"code": "TRUST_CONTEXT_UNAVAILABLE",
"detail": "The requested trust context is unavailable.",
"correlationId": "corr-test-001",
"requestId": "req-test-001",
"retryable": false,
"service": "Verification Service",
"timestamp": "2026-10-15T05:00:01Z",
"errors": [],
"status": 422,
"instance": "urn:ltans:request:req-test-001"
}