{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/actionbox-cloud/json-schema/actionbox-cloud-resolve-request-schema.json",
  "title": "ResolveRequest",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/actionbox-cloud-openapi.json#/components/schemas/ResolveRequest",
  "properties": {
    "action_version": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": 1.0
        },
        {
          "type": "null"
        }
      ],
      "title": "Action Version"
    },
    "fingerprint": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 71,
          "minLength": 71,
          "pattern": "^sha256:[0-9a-f]{64}$"
        },
        {
          "type": "null"
        }
      ],
      "title": "Fingerprint"
    },
    "option_id": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 80
        },
        {
          "type": "null"
        }
      ],
      "title": "Option Id"
    },
    "response": {
      "anyOf": [
        {
          "oneOf": [
            {
              "$ref": "#/$defs/BooleanResponse"
            },
            {
              "$ref": "#/$defs/TextResponse"
            },
            {
              "$ref": "#/$defs/IntegerResponse"
            },
            {
              "$ref": "#/$defs/NumberResponse"
            },
            {
              "$ref": "#/$defs/RatingResponse"
            },
            {
              "$ref": "#/$defs/SingleChoiceResponse"
            },
            {
              "$ref": "#/$defs/MultiChoiceResponse"
            },
            {
              "$ref": "#/$defs/FormResponse"
            }
          ]
        },
        {
          "type": "null"
        }
      ],
      "title": "Response"
    },
    "reason": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 500
        },
        {
          "type": "null"
        }
      ],
      "title": "Reason"
    },
    "approval_override": {
      "type": "boolean",
      "title": "Approval Override",
      "default": false
    }
  },
  "type": "object",
  "$defs": {
    "BooleanResponse": {
      "properties": {
        "type": {
          "type": "string",
          "const": "boolean",
          "title": "Type"
        },
        "value": {
          "type": "boolean",
          "title": "Value"
        }
      },
      "type": "object",
      "required": [
        "type",
        "value"
      ],
      "title": "BooleanResponse"
    },
    "FormResponse": {
      "properties": {
        "type": {
          "type": "string",
          "const": "form",
          "title": "Type"
        },
        "values": {
          "additionalProperties": true,
          "type": "object",
          "title": "Values"
        }
      },
      "type": "object",
      "required": [
        "type",
        "values"
      ],
      "title": "FormResponse"
    },
    "IntegerResponse": {
      "properties": {
        "type": {
          "type": "string",
          "const": "integer",
          "title": "Type"
        },
        "value": {
          "type": "integer",
          "title": "Value"
        }
      },
      "type": "object",
      "required": [
        "type",
        "value"
      ],
      "title": "IntegerResponse"
    },
    "MultiChoiceResponse": {
      "properties": {
        "type": {
          "type": "string",
          "const": "multi_choice",
          "title": "Type"
        },
        "value": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Value"
        }
      },
      "type": "object",
      "required": [
        "type",
        "value"
      ],
      "title": "MultiChoiceResponse"
    },
    "NumberResponse": {
      "properties": {
        "type": {
          "type": "string",
          "const": "number",
          "title": "Type"
        },
        "value": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "number"
            }
          ],
          "title": "Value"
        }
      },
      "type": "object",
      "required": [
        "type",
        "value"
      ],
      "title": "NumberResponse"
    },
    "RatingResponse": {
      "properties": {
        "type": {
          "type": "string",
          "const": "rating",
          "title": "Type"
        },
        "value": {
          "type": "integer",
          "title": "Value"
        }
      },
      "type": "object",
      "required": [
        "type",
        "value"
      ],
      "title": "RatingResponse"
    },
    "SingleChoiceResponse": {
      "properties": {
        "type": {
          "type": "string",
          "const": "single_choice",
          "title": "Type"
        },
        "value": {
          "type": "string",
          "title": "Value"
        }
      },
      "type": "object",
      "required": [
        "type",
        "value"
      ],
      "title": "SingleChoiceResponse"
    },
    "TextResponse": {
      "properties": {
        "type": {
          "type": "string",
          "const": "text",
          "title": "Type"
        },
        "value": {
          "type": "string",
          "title": "Value"
        }
      },
      "type": "object",
      "required": [
        "type",
        "value"
      ],
      "title": "TextResponse"
    }
  }
}