$ provenance-docs — api reference

verify asset

POST /api/v1/verify — run verification on an asset.

Verify asset

Run verification on an asset and receive a confidence score with risk flags.

Request

POST /api/v1/verify

Headers

HeaderValue
AuthorizationBearer pk_prov_...
Content-Typeapplication/json

Body

FieldTypeRequiredDescription
planetstringYesPlanet ID: artworks, collectibles, realestate, vehicles
asset_idstringYesUUID of the asset to verify
islandstringNoLegacy alias for planet

Example

curl -X POST https://api.provenance.guru/api/v1/verify \
  -H "Authorization: Bearer pk_prov_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "planet": "artworks",
    "asset_id": "550e8400-e29b-41d4-a716-446655440000"
  }'

Response

{
  "asset_id": "550e8400-e29b-41d4-a716-446655440000",
  "planet": "artworks",
  "verified": true,
  "confidence": 0.92,
  "risk_flags": [],
  "sources": ["certificate", "provenance_chain"],
  "certificate_id": "PROV-2026-001234",
  "computed_at": "2026-06-15T12:00:00.000Z"
}

Response fields

FieldTypeDescription
asset_idstringThe verified asset UUID
planetstringPlanet the asset belongs to
verifiedbooleanWhether the asset passed verification
confidencenumberConfidence score (0.0 – 1.0)
risk_flagsarrayRisk indicators found during verification
sourcesarrayData sources used in verification
certificate_idstringAssociated certificate number, if any
computed_atstringISO 8601 timestamp of verification

Side effects

A successful verification creates an event in asset_events:

{
  "event_type": "VERIFIED",
  "payload": {
    "confidence": 0.92,
    "verified": true,
    "risk_flags": [],
    "api_key_id": "key-uuid"
  }
}

Errors

StatusCause
400Invalid planet or missing asset_id
400Planet scope mismatch on API key
401Invalid or missing API key
404Asset not found in planet
500Verification engine failure