web/docs/schemas/evidence-receipt.v1.schema.json

72 lines
1.5 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://edut.ai/schemas/evidence-receipt.v1.schema.json",
"title": "EDUT Evidence Receipt Schema v1",
"type": "object",
"additionalProperties": false,
"required": [
"schema_version",
"receipt_id",
"event_type",
"wallet",
"timestamp",
"hash"
],
"properties": {
"schema_version": {
"type": "string",
"const": "evidence_receipt.v1"
},
"receipt_id": {
"type": "string"
},
"event_type": {
"type": "string",
"enum": [
"membership_mint",
"membership_confirm",
"offer_checkout_quote",
"offer_checkout_confirm",
"entitlement_mint",
"entitlement_state_change"
]
},
"wallet": {
"type": "string",
"pattern": "^0x[a-fA-F0-9]{40}$"
},
"designation_code": {
"type": ["string", "null"]
},
"offer_id": {
"type": ["string", "null"]
},
"quote_id": {
"type": ["string", "null"]
},
"entitlement_id": {
"type": ["string", "null"]
},
"tx_hash": {
"type": ["string", "null"],
"pattern": "^0x[a-fA-F0-9]{64}$"
},
"chain_id": {
"type": ["integer", "null"],
"minimum": 1
},
"policy_hash": {
"type": ["string", "null"],
"pattern": "^[a-fA-F0-9]{64}$"
},
"timestamp": {
"type": "string",
"format": "date-time"
},
"hash": {
"type": "string",
"pattern": "^[a-fA-F0-9]{64}$"
}
}
}