{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/acronis/main/json-schema/acronis-contract-part-schema.json",
  "title": "ContractPart",
  "x-generated": "2026-10-27",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/acronis-contractpart-api-openapi.yml#/components/schemas/ContractPart",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "APIConnection",
    "ActualQuantity",
    "AutomaticUpdate",
    "Contract",
    "ContractPartType",
    "Description",
    "Discount",
    "DiscountReason",
    "EndDate",
    "Id",
    "IsReadOnly",
    "MachinesCount",
    "MinBillableQuantity",
    "Price",
    "Product",
    "ProductName",
    "Quantity",
    "ServiceLevelAgreement",
    "ServiceObjectGroup",
    "ShowUsersOnInvoice",
    "StartDate",
    "SubscriptionType",
    "TrialPeriod",
    "UserType",
    "VARConnection",
    "VARGroup"
  ],
  "properties": {
    "APIConnection": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "ActualQuantity": {
      "type": "number"
    },
    "AutomaticUpdate": {
      "type": "boolean"
    },
    "Contract": {
      "$ref": "#/$defs/Guid"
    },
    "ContractPartType": {
      "$ref": "#/$defs/Guid"
    },
    "Description": {
      "type": "string"
    },
    "Discount": {
      "type": "number"
    },
    "DiscountReason": {
      "type": "string"
    },
    "EndDate": {
      "$ref": "#/$defs/DatetimeNoTZ"
    },
    "Id": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "IsReadOnly": {
      "type": "boolean"
    },
    "MachinesCount": {
      "type": [
        "integer",
        "null"
      ]
    },
    "MinBillableQuantity": {
      "type": "number"
    },
    "Price": {
      "type": "number"
    },
    "Product": {
      "$ref": "#/$defs/Guid"
    },
    "ProductName": {
      "type": "string"
    },
    "Quantity": {
      "type": "number"
    },
    "ServiceLevelAgreement": {
      "$ref": "#/$defs/Guid"
    },
    "ServiceObjectGroup": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "ShowUsersOnInvoice": {
      "type": "boolean"
    },
    "StartDate": {
      "$ref": "#/$defs/DatetimeNoTZ"
    },
    "SubscriptionType": {
      "$ref": "#/$defs/Guid"
    },
    "TrialPeriod": {
      "type": "integer"
    },
    "UserType": {
      "type": "integer"
    },
    "VARConnection": {
      "$ref": "#/$defs/Guid"
    },
    "VARGroup": {
      "$ref": "#/$defs/Guid"
    }
  },
  "$defs": {
    "DatetimeNoTZ": {
      "description": "RFC3339-like date and time without timezone.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?$"
    },
    "Guid": {
      "type": "string",
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    }
  }
}