{
  "type": "object",
  "properties": {
    "properties": {
      "type": "array",
      "description": "The array of custom properties to create or update.",
      "items": {
        "title": "Organization Custom Property",
        "description": "Custom property defined on an organization",
        "type": "object",
        "properties": {
          "property_name": {
            "type": "string",
            "description": "The name of the property"
          },
          "url": {
            "type": "string",
            "format": "uri",
            "description": "The URL that can be used to fetch, update, or delete info about this property via the API."
          },
          "source_type": {
            "type": "string",
            "description": "The source type of the property",
            "enum": [
              "organization",
              "enterprise"
            ]
          },
          "value_type": {
            "type": "string",
            "enum": [
              "string",
              "single_select",
              "multi_select",
              "true_false",
              "url"
            ],
            "description": "The type of the value for the property"
          },
          "required": {
            "type": "boolean",
            "description": "Whether the property is required."
          },
          "default_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ],
            "description": "Default value of the property"
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Short description of the property"
          },
          "allowed_values": {
            "type": [
              "array",
              "null"
            ],
            "items": {
              "type": "string"
            },
            "description": "An ordered list of the allowed values of the property.\nThe property can have up to 200 allowed values."
          },
          "values_editable_by": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "org_actors",
              "org_and_repo_actors",
              null
            ],
            "description": "Who can edit the values of the property"
          },
          "require_explicit_values": {
            "type": "boolean",
            "description": "Whether setting properties values is mandatory"
          }
        },
        "required": [
          "property_name",
          "value_type"
        ]
      },
      "minItems": 1,
      "maxItems": 100
    }
  },
  "required": [
    "properties"
  ],
  "$schema": "https://json-schema.org/draft/2019-09/schema"
}