{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/snow-software/json-schema/snow-software-maintenance-period-request-schema.json",
  "title": "MaintenancePeriodRequest",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/snow-software-periods-api-openapi.yml#/components/schemas/MaintenancePeriodRequest",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "agreementPeriodId": {
      "type": [
        "string",
        "null"
      ],
      "description": "The unique ID of the agreement period.",
      "format": "guid"
    },
    "validFrom": {
      "type": [
        "string",
        "null"
      ],
      "description": "The valid form date.",
      "format": "date-time"
    },
    "validTo": {
      "type": [
        "string",
        "null"
      ],
      "description": "The valid to date.",
      "format": "date-time"
    },
    "hasUpgradeRights": {
      "type": "boolean",
      "description": "```true``` if has upgrade rights; otherwise, ```false```."
    },
    "invoiceReference": {
      "type": [
        "string",
        "null"
      ],
      "description": "The invoice reference."
    },
    "notes": {
      "type": [
        "string",
        "null"
      ],
      "description": "The notes."
    },
    "maintenanceCost": {
      "type": [
        "number",
        "null"
      ],
      "description": "The maintenance cost.",
      "format": "decimal"
    },
    "supportCost": {
      "type": [
        "number",
        "null"
      ],
      "description": "The support cost.",
      "format": "decimal"
    }
  }
}