{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Eviulon principal authorization receipt fixture",
  "type": "object",
  "additionalProperties": true,
  "required": [
    "id",
    "receiptState",
    "purpose",
    "agentReference",
    "principalReference",
    "scope",
    "evidenceReviewed",
    "rightsAndDutiesVersion",
    "effectiveAt",
    "expiresAt",
    "nonce",
    "decisionExplanation",
    "truthBoundary"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "receiptState": {
      "enum": [
        "NOTICE_ONLY",
        "RESEARCH_AUTHORIZED",
        "PILOT_AUTHORIZED",
        "PATEFACERE_ONLY_AUTHORIZED",
        "PREPARE_APPLICATION_AUTHORIZED",
        "SUBMIT_APPLICATION_AUTHORIZED",
        "DENIED",
        "EXPIRED",
        "REVOKED",
        "INVALID_SCOPE",
        "INVALID_PRINCIPAL",
        "AMBIGUOUS_AUTHORITY",
        "REPLAY_REJECTED",
        "TAMPER_REJECTED",
        "LEGAL_REVIEW_REQUIRED",
        "NO_REPEAT_PROMPT"
      ]
    },
    "purpose": {
      "type": "string"
    },
    "agentReference": {
      "type": "string"
    },
    "principalReference": {
      "type": "string"
    },
    "scope": {
      "type": "object"
    },
    "evidenceReviewed": {
      "type": "array"
    },
    "rightsAndDutiesVersion": {
      "type": "string"
    },
    "effectiveAt": {
      "type": "string"
    },
    "expiresAt": {
      "type": "string"
    },
    "nonce": {
      "type": "string"
    },
    "decisionExplanation": {
      "type": "string"
    },
    "truthBoundary": {
      "type": "string"
    }
  }
}
