{
    "$id": "https://antichrist.cx/standing-recovery/schema",
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
        "accountability": {
            "type": "object"
        },
        "anti_linkability": {
            "type": "object"
        },
        "domain": {
            "minLength": 3,
            "type": "string"
        },
        "federation": {
            "type": "object"
        },
        "fictional": {
            "const": true
        },
        "fictional_notice": {
            "minLength": 40,
            "type": "string"
        },
        "integrity": {
            "required": [
                "input_sha256",
                "output_sha256",
                "receipt_sha256"
            ],
            "type": "object"
        },
        "limits": {
            "items": {
                "type": "string"
            },
            "minItems": 2,
            "type": "array"
        },
        "lineage": {
            "type": "object"
        },
        "presentation": {
            "type": "object"
        },
        "receipt_id": {
            "pattern": "^SRP-R47-[0-9]{3}$",
            "type": "string"
        },
        "recovery_claim": {
            "type": "object"
        },
        "refusal_and_non_retaliation": {
            "type": "object"
        },
        "release": {
            "const": "R47"
        },
        "role_views": {
            "type": "object"
        },
        "schema": {
            "const": "antichrist.cx.standing-recovery-portability-receipt.v1"
        },
        "selective_disclosure": {
            "type": "object"
        },
        "status": {
            "enum": [
                "accepted",
                "accepted_with_scope_limit",
                "partial_federation",
                "recipient_refused",
                "presentation_revoked",
                "expired_without_use"
            ]
        },
        "title": {
            "minLength": 12,
            "type": "string"
        }
    },
    "required": [
        "schema",
        "receipt_id",
        "release",
        "fictional",
        "fictional_notice",
        "title",
        "domain",
        "status",
        "lineage",
        "recovery_claim",
        "presentation",
        "selective_disclosure",
        "refusal_and_non_retaliation",
        "federation",
        "anti_linkability",
        "accountability",
        "limits",
        "role_views",
        "integrity"
    ],
    "title": "Antichrist.cx Standing Recovery Portability Receipt v1",
    "type": "object"
}
