{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/blackbaud/main/json-schema/blackbaud-table-entry-edit-schema.json",
  "title": "TableEntryEdit",
  "description": "Table entry to update",
  "x-generated": "2026-10-14",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/blackbaud-code-table-api-openapi.yml#/components/schemas/TableEntryEdit",
  "required": [
    "long_description"
  ],
  "type": "object",
  "properties": {
    "is_active": {
      "type": "boolean",
      "description": "The active status of the entry."
    },
    "long_description": {
      "maxLength": 100,
      "minLength": 0,
      "type": "string",
      "description": "The long description of the entry."
    },
    "short_description": {
      "type": [
        "string",
        "null"
      ],
      "description": "The short description of the entry. Only supported by entries of certain tables, such as constituent codes."
    },
    "numeric_value": {
      "type": [
        "number",
        "null"
      ],
      "description": "The numeric value of the entry. Also known as minimum amount for Gift/Donor table entries.",
      "format": "double"
    },
    "phone_format": {
      "$ref": "#/$defs/PhoneFormat"
    },
    "phone_type": {
      "$ref": "#/$defs/PhoneNumberType"
    },
    "ratings_data_type": {
      "$ref": "#/$defs/RatingsDataType"
    },
    "table_number": {
      "type": [
        "string",
        "null"
      ],
      "description": "For ratings type table entries that are of table data type, the table used as the possible rating values."
    }
  },
  "additionalProperties": false,
  "$defs": {
    "PhoneFormat": {
      "enum": [
        "None",
        "Mask1",
        "Mask2",
        "Mask3",
        "Mask4",
        "Mask5",
        "Mask6",
        "Mask7",
        "Mask8",
        "Mask9",
        "Mask10",
        "Mask11"
      ],
      "type": "string",
      "description": "<p>Members:</p><ul><li><i>None</i></li><li><i>Mask1</i></li><li><i>Mask2</i></li><li><i>Mask3</i></li><li><i>Mask4</i></li><li><i>Mask5</i></li><li><i>Mask6</i></li><li><i>Mask7</i></li><li><i>Mask8</i></li><li><i>Mask9</i></li><li><i>Mask10</i></li><li><i>Mask11</i></li></ul>"
    },
    "PhoneNumberType": {
      "enum": [
        "TelephoneNumber",
        "FaxNumber",
        "EmailAddress",
        "WebAddressUrl",
        "Other"
      ],
      "type": "string",
      "description": "<p>Members:</p><ul><li><i>TelephoneNumber</i></li><li><i>FaxNumber</i></li><li><i>EmailAddress</i></li><li><i>WebAddressUrl</i></li><li><i>Other</i></li></ul>"
    },
    "RatingsDataType": {
      "enum": [
        "Text",
        "Number",
        "Date",
        "Currency",
        "Boolean",
        "Table"
      ],
      "type": "string",
      "description": "<p>Members:</p><ul><li><i>Text</i></li><li><i>Number</i></li><li><i>Date</i></li><li><i>Currency</i></li><li><i>Boolean</i></li><li><i>Table</i></li></ul>"
    }
  }
}