{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google/json-schema/google-google-apps-drive-labels-v2-label-limits-schema.json",
  "title": "GoogleAppsDriveLabelsV2LabelLimits",
  "description": "Label constraints governing the structure of a Label; such as, the maximum number of Fields allowed and maximum length of the label title.",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-limits-api-openapi.yml#/components/schemas/GoogleAppsDriveLabelsV2LabelLimits",
  "properties": {
    "fieldLimits": {
      "$ref": "#/$defs/GoogleAppsDriveLabelsV2FieldLimits",
      "description": "The limits for Fields."
    },
    "maxDeletedFields": {
      "description": "The maximum number of published Fields that can be deleted.",
      "format": "int32",
      "type": "integer"
    },
    "maxDescriptionLength": {
      "description": "The maximum number of characters allowed for the description.",
      "format": "int32",
      "type": "integer"
    },
    "maxDraftRevisions": {
      "description": "The maximum number of draft revisions that will be kept before deleting old drafts.",
      "format": "int32",
      "type": "integer"
    },
    "maxFields": {
      "description": "The maximum number of Fields allowed within the label.",
      "format": "int32",
      "type": "integer"
    },
    "maxTitleLength": {
      "description": "The maximum number of characters allowed for the title.",
      "format": "int32",
      "type": "integer"
    },
    "name": {
      "description": "Resource name.",
      "type": "string"
    }
  },
  "type": "object",
  "$defs": {
    "GoogleAppsDriveLabelsV2DateLimits": {
      "description": "Limits for date Field type.",
      "properties": {
        "maxValue": {
          "$ref": "#/$defs/GoogleTypeDate",
          "description": "Maximum value for the date Field type."
        },
        "minValue": {
          "$ref": "#/$defs/GoogleTypeDate",
          "description": "Minimum value for the date Field type."
        }
      },
      "type": "object"
    },
    "GoogleAppsDriveLabelsV2FieldLimits": {
      "description": "Field constants governing the structure of a Field; such as, the maximum title length, minimum and maximum field values or length, etc.",
      "properties": {
        "dateLimits": {
          "$ref": "#/$defs/GoogleAppsDriveLabelsV2DateLimits",
          "description": "Date Field limits."
        },
        "integerLimits": {
          "$ref": "#/$defs/GoogleAppsDriveLabelsV2IntegerLimits",
          "description": "Integer Field limits."
        },
        "longTextLimits": {
          "$ref": "#/$defs/GoogleAppsDriveLabelsV2LongTextLimits",
          "description": "Long text Field limits."
        },
        "maxDescriptionLength": {
          "description": "Limits for Field description, also called help text.",
          "format": "int32",
          "type": "integer"
        },
        "maxDisplayNameLength": {
          "description": "Limits for Field title.",
          "format": "int32",
          "type": "integer"
        },
        "maxIdLength": {
          "description": "Max length for the id.",
          "format": "int32",
          "type": "integer"
        },
        "selectionLimits": {
          "$ref": "#/$defs/GoogleAppsDriveLabelsV2SelectionLimits",
          "description": "Selection Field limits."
        },
        "textLimits": {
          "$ref": "#/$defs/GoogleAppsDriveLabelsV2TextLimits",
          "description": "The relevant limits for the specified Field.Type. Text Field limits."
        },
        "userLimits": {
          "$ref": "#/$defs/GoogleAppsDriveLabelsV2UserLimits",
          "description": "User Field limits."
        }
      },
      "type": "object"
    },
    "GoogleAppsDriveLabelsV2IntegerLimits": {
      "description": "Limits for integer Field type.",
      "properties": {
        "maxValue": {
          "description": "Maximum value for an integer Field type.",
          "format": "int64",
          "type": "string"
        },
        "minValue": {
          "description": "Minimum value for an integer Field type.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleAppsDriveLabelsV2ListLimits": {
      "description": "Limits for list-variant of a Field type.",
      "properties": {
        "maxEntries": {
          "description": "Maximum number of values allowed for the Field type.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleAppsDriveLabelsV2LongTextLimits": {
      "description": "Limits for long text Field type.",
      "properties": {
        "maxLength": {
          "description": "Maximum length allowed for a long text Field type.",
          "format": "int32",
          "type": "integer"
        },
        "minLength": {
          "description": "Minimum length allowed for a long text Field type.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleAppsDriveLabelsV2SelectionLimits": {
      "description": "Limits for selection Field type.",
      "properties": {
        "listLimits": {
          "$ref": "#/$defs/GoogleAppsDriveLabelsV2ListLimits",
          "description": "Limits for list-variant of a Field type."
        },
        "maxChoices": {
          "description": "The max number of choices.",
          "format": "int32",
          "type": "integer"
        },
        "maxDeletedChoices": {
          "description": "Maximum number of deleted choices.",
          "format": "int32",
          "type": "integer"
        },
        "maxDisplayNameLength": {
          "description": "Maximum length for display name.",
          "format": "int32",
          "type": "integer"
        },
        "maxIdLength": {
          "description": "Maximum ID length for a selection options.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleAppsDriveLabelsV2TextLimits": {
      "description": "Limits for text Field type.",
      "properties": {
        "maxLength": {
          "description": "Maximum length allowed for a text Field type.",
          "format": "int32",
          "type": "integer"
        },
        "minLength": {
          "description": "Minimum length allowed for a text Field type.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleAppsDriveLabelsV2UserLimits": {
      "description": "Limits for Field.Type.USER.",
      "properties": {
        "listLimits": {
          "$ref": "#/$defs/GoogleAppsDriveLabelsV2ListLimits",
          "description": "Limits for list-variant of a Field type."
        }
      },
      "type": "object"
    },
    "GoogleTypeDate": {
      "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp",
      "properties": {
        "day": {
          "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.",
          "format": "int32",
          "type": "integer"
        },
        "month": {
          "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.",
          "format": "int32",
          "type": "integer"
        },
        "year": {
          "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    }
  }
}