{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/bbandt-corp/main/json-schema/bbandt-corp-consent-revocation-request-schema.json",
  "title": "Consent revocation request entity",
  "description": "Details of request to revoke consent grant",
  "x-generated": "2026-10-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/bbandt-corp-user-consent-api-openapi.yml#/components/schemas/ConsentRevocationRequest",
  "type": "object",
  "properties": {
    "reason": {
      "description": "The reason for consent revocation",
      "$ref": "#/$defs/ConsentUpdateReason"
    },
    "initiator": {
      "description": "The party initiating revocation",
      "$ref": "#/$defs/PartyType"
    }
  },
  "required": [
    "reason",
    "initiator"
  ],
  "$defs": {
    "ConsentUpdateReason": {
      "title": "Consent Update Reason",
      "description": "Reason for Updating a Consent Grant",
      "type": "string",
      "enum": [
        "BUSINESS_RULE",
        "USER_ACTION"
      ]
    },
    "PartyType": {
      "title": "Party Type",
      "description": "Identifies the type of a party",
      "type": "string",
      "enum": [
        "DATA_ACCESS_PLATFORM",
        "DATA_PROVIDER",
        "DATA_RECIPIENT",
        "INDIVIDUAL",
        "MERCHANT",
        "VENDOR"
      ]
    }
  }
}