{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/customermates-com/json-schema/customermates-com-webhook-public-dto-schema-schema.json",
  "title": "WebhookPublicDtoSchema",
  "x-generated": "2026-10-28",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/customermates-openapi.json#/components/schemas/WebhookPublicDtoSchema",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "url": {
      "type": "string",
      "format": "uri"
    },
    "description": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "events": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "record.created",
          "record.updated",
          "record.deleted",
          "record.restored",
          "record.deletedPermanently",
          "messaging.message.received",
          "messaging.message.updated",
          "messaging.message.deleted",
          "messaging.message.reaction",
          "messaging.email.received",
          "messaging.email.deleted",
          "messaging.chat.updated",
          "messaging.chat.deleted",
          "messaging.calendar.changed",
          "messaging.calendar_event.changed",
          "messaging.relation.created"
        ]
      }
    },
    "bodyTemplate": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "enabled": {
      "type": "boolean"
    },
    "pausedReason": {
      "description": "Why the webhook was paused automatically, for example its only trigger field was deleted.",
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "triggerFieldDeleted"
          ]
        },
        {
          "type": "null"
        }
      ]
    },
    "recordTrigger": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "query": {
              "type": "object",
              "properties": {
                "typeId": {
                  "type": "string",
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                },
                "filters": {
                  "default": [],
                  "maxItems": 50,
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "fieldId": {
                        "anyOf": [
                          {
                            "type": "string",
                            "format": "uuid",
                            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                          },
                          {
                            "type": "string",
                            "enum": [
                              "system:createdAt",
                              "system:updatedAt",
                              "system:assignedTo"
                            ]
                          }
                        ]
                      },
                      "operator": {
                        "type": "string",
                        "enum": [
                          "eq",
                          "ne",
                          "contains",
                          "startsWith",
                          "gt",
                          "gte",
                          "lt",
                          "lte",
                          "empty",
                          "notEmpty",
                          "in",
                          "notIn",
                          "all",
                          "between",
                          "overlaps",
                          "inLastDays",
                          "notInLastDays"
                        ],
                        "description": "For multiple choice fields in, all and notIn take option values and match records holding any, all or none of them. between uses two inclusive date endpoints in values; overlaps takes the same endpoints and also matches a date range that only partly falls between them; a range without an end counts as its start day. inLastDays and notInLastDays use a positive whole day count in value as a decimal without currency. Range contains tests a point; gt/gte test its start, lt/lte its end. Relative windows begin at UTC midnight that many days before the query clock: inLastDays includes later dates, notInLastDays matches only earlier ones."
                      },
                      "value": {
                        "anyOf": [
                          {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "text"
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 100000,
                                    "pattern": "^[^\\u0000]*$"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "textList"
                                  },
                                  "value": {
                                    "minItems": 1,
                                    "maxItems": 100,
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "maxLength": 100000,
                                      "pattern": "^[^\\u0000]*$"
                                    }
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "decimal"
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 128,
                                    "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
                                  },
                                  "currency": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^[A-Z]{3}$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value",
                                  "currency"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "boolean"
                                  },
                                  "value": {
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "date"
                                  },
                                  "value": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "format": "date",
                                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                                      },
                                      {
                                        "type": "string",
                                        "format": "date-time",
                                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                      }
                                    ]
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "dateTime"
                                  },
                                  "value": {
                                    "type": "string",
                                    "format": "date-time",
                                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "range"
                                  },
                                  "start": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^[^\\u0000]*$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "end": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^[^\\u0000]*$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  }
                                },
                                "required": [
                                  "kind",
                                  "start",
                                  "end"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "select"
                                  },
                                  "value": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 200,
                                    "pattern": "^[^\\u0000]*$"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "selectList"
                                  },
                                  "value": {
                                    "minItems": 1,
                                    "maxItems": 100,
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 200,
                                      "pattern": "^[^\\u0000]*$"
                                    }
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "member"
                                  },
                                  "value": {
                                    "type": "string",
                                    "format": "uuid",
                                    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "file"
                                  },
                                  "value": {
                                    "minItems": 1,
                                    "maxItems": 20,
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "format": "uuid",
                                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                    }
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "richText"
                                  },
                                  "documentJson": {
                                    "type": "string",
                                    "maxLength": 1000000,
                                    "pattern": "^[^\\u0000]*$",
                                    "description": "Full Formatted text replacement as a ProseMirror document JSON string. Markdown is returned on read but cannot be sent here; use append for Markdown additions."
                                  }
                                },
                                "required": [
                                  "kind",
                                  "documentJson"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "address"
                                  },
                                  "value": {
                                    "$ref": "#/$defs/RecordAddress"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              }
                            ],
                            "type": "object"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      },
                      "values": {
                        "maxItems": 100,
                        "type": "array",
                        "items": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "text"
                                },
                                "value": {
                                  "type": "string",
                                  "maxLength": 100000,
                                  "pattern": "^[^\\u0000]*$"
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "textList"
                                },
                                "value": {
                                  "minItems": 1,
                                  "maxItems": 100,
                                  "type": "array",
                                  "items": {
                                    "type": "string",
                                    "maxLength": 100000,
                                    "pattern": "^[^\\u0000]*$"
                                  }
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "decimal"
                                },
                                "value": {
                                  "type": "string",
                                  "maxLength": 128,
                                  "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
                                },
                                "currency": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^[A-Z]{3}$"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                }
                              },
                              "required": [
                                "kind",
                                "value",
                                "currency"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "boolean"
                                },
                                "value": {
                                  "type": "boolean"
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "date"
                                },
                                "value": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "format": "date",
                                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                                    },
                                    {
                                      "type": "string",
                                      "format": "date-time",
                                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                    }
                                  ]
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "dateTime"
                                },
                                "value": {
                                  "type": "string",
                                  "format": "date-time",
                                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "range"
                                },
                                "start": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^[^\\u0000]*$"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "end": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^[^\\u0000]*$"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                }
                              },
                              "required": [
                                "kind",
                                "start",
                                "end"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "select"
                                },
                                "value": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 200,
                                  "pattern": "^[^\\u0000]*$"
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "selectList"
                                },
                                "value": {
                                  "minItems": 1,
                                  "maxItems": 100,
                                  "type": "array",
                                  "items": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 200,
                                    "pattern": "^[^\\u0000]*$"
                                  }
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "member"
                                },
                                "value": {
                                  "type": "string",
                                  "format": "uuid",
                                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "file"
                                },
                                "value": {
                                  "minItems": 1,
                                  "maxItems": 20,
                                  "type": "array",
                                  "items": {
                                    "type": "string",
                                    "format": "uuid",
                                    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                  }
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "richText"
                                },
                                "documentJson": {
                                  "type": "string",
                                  "maxLength": 1000000,
                                  "pattern": "^[^\\u0000]*$",
                                  "description": "Full Formatted text replacement as a ProseMirror document JSON string. Markdown is returned on read but cannot be sent here; use append for Markdown additions."
                                }
                              },
                              "required": [
                                "kind",
                                "documentJson"
                              ],
                              "additionalProperties": false
                            },
                            {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "const": "address"
                                },
                                "value": {
                                  "$ref": "#/$defs/RecordAddress"
                                }
                              },
                              "required": [
                                "kind",
                                "value"
                              ],
                              "additionalProperties": false
                            }
                          ],
                          "type": "object"
                        }
                      }
                    },
                    "required": [
                      "fieldId",
                      "operator",
                      "value"
                    ],
                    "additionalProperties": false
                  }
                },
                "relationships": {
                  "default": [],
                  "maxItems": 50,
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "relationId": {
                        "type": "string",
                        "format": "uuid",
                        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "outgoing",
                          "incoming"
                        ]
                      },
                      "operator": {
                        "type": "string",
                        "enum": [
                          "any",
                          "none"
                        ]
                      },
                      "recordIds": {
                        "anyOf": [
                          {
                            "maxItems": 100,
                            "type": "array",
                            "items": {
                              "type": "string",
                              "format": "uuid",
                              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                            }
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "required": [
                      "relationId",
                      "direction",
                      "operator",
                      "recordIds"
                    ],
                    "additionalProperties": false
                  }
                },
                "relatedFilters": {
                  "maxItems": 16,
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "path": {
                        "minItems": 1,
                        "maxItems": 6,
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "relationId": {
                              "type": "string",
                              "format": "uuid",
                              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                            },
                            "direction": {
                              "type": "string",
                              "enum": [
                                "outgoing",
                                "incoming"
                              ]
                            }
                          },
                          "required": [
                            "relationId",
                            "direction"
                          ],
                          "additionalProperties": false
                        }
                      },
                      "operator": {
                        "type": "string",
                        "enum": [
                          "any",
                          "none"
                        ]
                      },
                      "filters": {
                        "maxItems": 50,
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "fieldId": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "format": "uuid",
                                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "system:createdAt",
                                    "system:updatedAt",
                                    "system:assignedTo"
                                  ]
                                }
                              ]
                            },
                            "operator": {
                              "type": "string",
                              "enum": [
                                "eq",
                                "ne",
                                "contains",
                                "startsWith",
                                "gt",
                                "gte",
                                "lt",
                                "lte",
                                "empty",
                                "notEmpty",
                                "in",
                                "notIn",
                                "all",
                                "between",
                                "overlaps",
                                "inLastDays",
                                "notInLastDays"
                              ],
                              "description": "For multiple choice fields in, all and notIn take option values and match records holding any, all or none of them. between uses two inclusive date endpoints in values; overlaps takes the same endpoints and also matches a date range that only partly falls between them; a range without an end counts as its start day. inLastDays and notInLastDays use a positive whole day count in value as a decimal without currency. Range contains tests a point; gt/gte test its start, lt/lte its end. Relative windows begin at UTC midnight that many days before the query clock: inLastDays includes later dates, notInLastDays matches only earlier ones."
                            },
                            "value": {
                              "anyOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "text"
                                        },
                                        "value": {
                                          "type": "string",
                                          "maxLength": 100000,
                                          "pattern": "^[^\\u0000]*$"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "textList"
                                        },
                                        "value": {
                                          "minItems": 1,
                                          "maxItems": 100,
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "maxLength": 100000,
                                            "pattern": "^[^\\u0000]*$"
                                          }
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "decimal"
                                        },
                                        "value": {
                                          "type": "string",
                                          "maxLength": 128,
                                          "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
                                        },
                                        "currency": {
                                          "anyOf": [
                                            {
                                              "type": "string",
                                              "pattern": "^[A-Z]{3}$"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ]
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value",
                                        "currency"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "boolean"
                                        },
                                        "value": {
                                          "type": "boolean"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "date"
                                        },
                                        "value": {
                                          "anyOf": [
                                            {
                                              "type": "string",
                                              "format": "date",
                                              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                                            },
                                            {
                                              "type": "string",
                                              "format": "date-time",
                                              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                            }
                                          ]
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "dateTime"
                                        },
                                        "value": {
                                          "type": "string",
                                          "format": "date-time",
                                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "range"
                                        },
                                        "start": {
                                          "anyOf": [
                                            {
                                              "type": "string",
                                              "pattern": "^[^\\u0000]*$"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ]
                                        },
                                        "end": {
                                          "anyOf": [
                                            {
                                              "type": "string",
                                              "pattern": "^[^\\u0000]*$"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ]
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "start",
                                        "end"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "select"
                                        },
                                        "value": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 200,
                                          "pattern": "^[^\\u0000]*$"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "selectList"
                                        },
                                        "value": {
                                          "minItems": 1,
                                          "maxItems": 100,
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 200,
                                            "pattern": "^[^\\u0000]*$"
                                          }
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "member"
                                        },
                                        "value": {
                                          "type": "string",
                                          "format": "uuid",
                                          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "file"
                                        },
                                        "value": {
                                          "minItems": 1,
                                          "maxItems": 20,
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "format": "uuid",
                                            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                          }
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "richText"
                                        },
                                        "documentJson": {
                                          "type": "string",
                                          "maxLength": 1000000,
                                          "pattern": "^[^\\u0000]*$",
                                          "description": "Full Formatted text replacement as a ProseMirror document JSON string. Markdown is returned on read but cannot be sent here; use append for Markdown additions."
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "documentJson"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "address"
                                        },
                                        "value": {
                                          "$ref": "#/$defs/RecordAddress"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    }
                                  ],
                                  "type": "object"
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            },
                            "values": {
                              "maxItems": 100,
                              "type": "array",
                              "items": {
                                "oneOf": [
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "text"
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 100000,
                                        "pattern": "^[^\\u0000]*$"
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "textList"
                                      },
                                      "value": {
                                        "minItems": 1,
                                        "maxItems": 100,
                                        "type": "array",
                                        "items": {
                                          "type": "string",
                                          "maxLength": 100000,
                                          "pattern": "^[^\\u0000]*$"
                                        }
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "decimal"
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 128,
                                        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
                                      },
                                      "currency": {
                                        "anyOf": [
                                          {
                                            "type": "string",
                                            "pattern": "^[A-Z]{3}$"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ]
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value",
                                      "currency"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "boolean"
                                      },
                                      "value": {
                                        "type": "boolean"
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "date"
                                      },
                                      "value": {
                                        "anyOf": [
                                          {
                                            "type": "string",
                                            "format": "date",
                                            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                                          },
                                          {
                                            "type": "string",
                                            "format": "date-time",
                                            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                          }
                                        ]
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "dateTime"
                                      },
                                      "value": {
                                        "type": "string",
                                        "format": "date-time",
                                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "range"
                                      },
                                      "start": {
                                        "anyOf": [
                                          {
                                            "type": "string",
                                            "pattern": "^[^\\u0000]*$"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ]
                                      },
                                      "end": {
                                        "anyOf": [
                                          {
                                            "type": "string",
                                            "pattern": "^[^\\u0000]*$"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ]
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "start",
                                      "end"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "select"
                                      },
                                      "value": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 200,
                                        "pattern": "^[^\\u0000]*$"
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "selectList"
                                      },
                                      "value": {
                                        "minItems": 1,
                                        "maxItems": 100,
                                        "type": "array",
                                        "items": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 200,
                                          "pattern": "^[^\\u0000]*$"
                                        }
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "member"
                                      },
                                      "value": {
                                        "type": "string",
                                        "format": "uuid",
                                        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "file"
                                      },
                                      "value": {
                                        "minItems": 1,
                                        "maxItems": 20,
                                        "type": "array",
                                        "items": {
                                          "type": "string",
                                          "format": "uuid",
                                          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                        }
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "richText"
                                      },
                                      "documentJson": {
                                        "type": "string",
                                        "maxLength": 1000000,
                                        "pattern": "^[^\\u0000]*$",
                                        "description": "Full Formatted text replacement as a ProseMirror document JSON string. Markdown is returned on read but cannot be sent here; use append for Markdown additions."
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "documentJson"
                                    ],
                                    "additionalProperties": false
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "kind": {
                                        "type": "string",
                                        "const": "address"
                                      },
                                      "value": {
                                        "$ref": "#/$defs/RecordAddress"
                                      }
                                    },
                                    "required": [
                                      "kind",
                                      "value"
                                    ],
                                    "additionalProperties": false
                                  }
                                ],
                                "type": "object"
                              }
                            }
                          },
                          "required": [
                            "fieldId",
                            "operator",
                            "value"
                          ],
                          "additionalProperties": false
                        }
                      },
                      "relationships": {
                        "default": [],
                        "maxItems": 50,
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "relationId": {
                              "type": "string",
                              "format": "uuid",
                              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                            },
                            "direction": {
                              "type": "string",
                              "enum": [
                                "outgoing",
                                "incoming"
                              ]
                            },
                            "operator": {
                              "type": "string",
                              "enum": [
                                "any",
                                "none"
                              ]
                            },
                            "recordIds": {
                              "anyOf": [
                                {
                                  "maxItems": 100,
                                  "type": "array",
                                  "items": {
                                    "type": "string",
                                    "format": "uuid",
                                    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                  }
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "required": [
                            "relationId",
                            "direction",
                            "operator",
                            "recordIds"
                          ],
                          "additionalProperties": false
                        }
                      },
                      "search": {
                        "type": "string",
                        "maxLength": 500
                      },
                      "recordIds": {
                        "description": "Match these terminal record identities after following the path; all steps require record access.",
                        "maxItems": 100,
                        "type": "array",
                        "items": {
                          "type": "string",
                          "format": "uuid",
                          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                        }
                      }
                    },
                    "required": [
                      "path",
                      "operator",
                      "filters",
                      "relationships"
                    ],
                    "additionalProperties": false
                  }
                },
                "search": {
                  "type": "string",
                  "maxLength": 500
                }
              },
              "required": [
                "typeId",
                "filters",
                "relationships"
              ],
              "additionalProperties": false
            },
            "changedFieldIds": {
              "maxItems": 100,
              "type": "array",
              "items": {
                "type": "string",
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
              }
            }
          },
          "required": [
            "query",
            "changedFieldIds"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "recordSources": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "query": {
                "type": "object",
                "properties": {
                  "typeId": {
                    "type": "string",
                    "format": "uuid",
                    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                  },
                  "filters": {
                    "default": [],
                    "maxItems": 50,
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "fieldId": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "uuid",
                              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                "system:createdAt",
                                "system:updatedAt",
                                "system:assignedTo"
                              ]
                            }
                          ]
                        },
                        "operator": {
                          "type": "string",
                          "enum": [
                            "eq",
                            "ne",
                            "contains",
                            "startsWith",
                            "gt",
                            "gte",
                            "lt",
                            "lte",
                            "empty",
                            "notEmpty",
                            "in",
                            "notIn",
                            "all",
                            "between",
                            "overlaps",
                            "inLastDays",
                            "notInLastDays"
                          ],
                          "description": "For multiple choice fields in, all and notIn take option values and match records holding any, all or none of them. between uses two inclusive date endpoints in values; overlaps takes the same endpoints and also matches a date range that only partly falls between them; a range without an end counts as its start day. inLastDays and notInLastDays use a positive whole day count in value as a decimal without currency. Range contains tests a point; gt/gte test its start, lt/lte its end. Relative windows begin at UTC midnight that many days before the query clock: inLastDays includes later dates, notInLastDays matches only earlier ones."
                        },
                        "value": {
                          "anyOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "text"
                                    },
                                    "value": {
                                      "type": "string",
                                      "maxLength": 100000,
                                      "pattern": "^[^\\u0000]*$"
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "textList"
                                    },
                                    "value": {
                                      "minItems": 1,
                                      "maxItems": 100,
                                      "type": "array",
                                      "items": {
                                        "type": "string",
                                        "maxLength": 100000,
                                        "pattern": "^[^\\u0000]*$"
                                      }
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "decimal"
                                    },
                                    "value": {
                                      "type": "string",
                                      "maxLength": 128,
                                      "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
                                    },
                                    "currency": {
                                      "anyOf": [
                                        {
                                          "type": "string",
                                          "pattern": "^[A-Z]{3}$"
                                        },
                                        {
                                          "type": "null"
                                        }
                                      ]
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value",
                                    "currency"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "boolean"
                                    },
                                    "value": {
                                      "type": "boolean"
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "date"
                                    },
                                    "value": {
                                      "anyOf": [
                                        {
                                          "type": "string",
                                          "format": "date",
                                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                                        },
                                        {
                                          "type": "string",
                                          "format": "date-time",
                                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                        }
                                      ]
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "dateTime"
                                    },
                                    "value": {
                                      "type": "string",
                                      "format": "date-time",
                                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "range"
                                    },
                                    "start": {
                                      "anyOf": [
                                        {
                                          "type": "string",
                                          "pattern": "^[^\\u0000]*$"
                                        },
                                        {
                                          "type": "null"
                                        }
                                      ]
                                    },
                                    "end": {
                                      "anyOf": [
                                        {
                                          "type": "string",
                                          "pattern": "^[^\\u0000]*$"
                                        },
                                        {
                                          "type": "null"
                                        }
                                      ]
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "start",
                                    "end"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "select"
                                    },
                                    "value": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 200,
                                      "pattern": "^[^\\u0000]*$"
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "selectList"
                                    },
                                    "value": {
                                      "minItems": 1,
                                      "maxItems": 100,
                                      "type": "array",
                                      "items": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 200,
                                        "pattern": "^[^\\u0000]*$"
                                      }
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "member"
                                    },
                                    "value": {
                                      "type": "string",
                                      "format": "uuid",
                                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "file"
                                    },
                                    "value": {
                                      "minItems": 1,
                                      "maxItems": 20,
                                      "type": "array",
                                      "items": {
                                        "type": "string",
                                        "format": "uuid",
                                        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                      }
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "richText"
                                    },
                                    "documentJson": {
                                      "type": "string",
                                      "maxLength": 1000000,
                                      "pattern": "^[^\\u0000]*$",
                                      "description": "Full Formatted text replacement as a ProseMirror document JSON string. Markdown is returned on read but cannot be sent here; use append for Markdown additions."
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "documentJson"
                                  ],
                                  "additionalProperties": false
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "const": "address"
                                    },
                                    "value": {
                                      "$ref": "#/$defs/RecordAddress"
                                    }
                                  },
                                  "required": [
                                    "kind",
                                    "value"
                                  ],
                                  "additionalProperties": false
                                }
                              ],
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "values": {
                          "maxItems": 100,
                          "type": "array",
                          "items": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "text"
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 100000,
                                    "pattern": "^[^\\u0000]*$"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "textList"
                                  },
                                  "value": {
                                    "minItems": 1,
                                    "maxItems": 100,
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "maxLength": 100000,
                                      "pattern": "^[^\\u0000]*$"
                                    }
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "decimal"
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 128,
                                    "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
                                  },
                                  "currency": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^[A-Z]{3}$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value",
                                  "currency"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "boolean"
                                  },
                                  "value": {
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "date"
                                  },
                                  "value": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "format": "date",
                                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                                      },
                                      {
                                        "type": "string",
                                        "format": "date-time",
                                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                      }
                                    ]
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "dateTime"
                                  },
                                  "value": {
                                    "type": "string",
                                    "format": "date-time",
                                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "range"
                                  },
                                  "start": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^[^\\u0000]*$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "end": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^[^\\u0000]*$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  }
                                },
                                "required": [
                                  "kind",
                                  "start",
                                  "end"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "select"
                                  },
                                  "value": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 200,
                                    "pattern": "^[^\\u0000]*$"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "selectList"
                                  },
                                  "value": {
                                    "minItems": 1,
                                    "maxItems": 100,
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 200,
                                      "pattern": "^[^\\u0000]*$"
                                    }
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "member"
                                  },
                                  "value": {
                                    "type": "string",
                                    "format": "uuid",
                                    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "file"
                                  },
                                  "value": {
                                    "minItems": 1,
                                    "maxItems": 20,
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "format": "uuid",
                                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                    }
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "richText"
                                  },
                                  "documentJson": {
                                    "type": "string",
                                    "maxLength": 1000000,
                                    "pattern": "^[^\\u0000]*$",
                                    "description": "Full Formatted text replacement as a ProseMirror document JSON string. Markdown is returned on read but cannot be sent here; use append for Markdown additions."
                                  }
                                },
                                "required": [
                                  "kind",
                                  "documentJson"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "address"
                                  },
                                  "value": {
                                    "$ref": "#/$defs/RecordAddress"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "value"
                                ],
                                "additionalProperties": false
                              }
                            ],
                            "type": "object"
                          }
                        }
                      },
                      "required": [
                        "fieldId",
                        "operator",
                        "value"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "relationships": {
                    "default": [],
                    "maxItems": 50,
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "relationId": {
                          "type": "string",
                          "format": "uuid",
                          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                        },
                        "direction": {
                          "type": "string",
                          "enum": [
                            "outgoing",
                            "incoming"
                          ]
                        },
                        "operator": {
                          "type": "string",
                          "enum": [
                            "any",
                            "none"
                          ]
                        },
                        "recordIds": {
                          "anyOf": [
                            {
                              "maxItems": 100,
                              "type": "array",
                              "items": {
                                "type": "string",
                                "format": "uuid",
                                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                              }
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "relationId",
                        "direction",
                        "operator",
                        "recordIds"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "relatedFilters": {
                    "maxItems": 16,
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "minItems": 1,
                          "maxItems": 6,
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "relationId": {
                                "type": "string",
                                "format": "uuid",
                                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                              },
                              "direction": {
                                "type": "string",
                                "enum": [
                                  "outgoing",
                                  "incoming"
                                ]
                              }
                            },
                            "required": [
                              "relationId",
                              "direction"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "operator": {
                          "type": "string",
                          "enum": [
                            "any",
                            "none"
                          ]
                        },
                        "filters": {
                          "maxItems": 50,
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "fieldId": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "format": "uuid",
                                    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                  },
                                  {
                                    "type": "string",
                                    "enum": [
                                      "system:createdAt",
                                      "system:updatedAt",
                                      "system:assignedTo"
                                    ]
                                  }
                                ]
                              },
                              "operator": {
                                "type": "string",
                                "enum": [
                                  "eq",
                                  "ne",
                                  "contains",
                                  "startsWith",
                                  "gt",
                                  "gte",
                                  "lt",
                                  "lte",
                                  "empty",
                                  "notEmpty",
                                  "in",
                                  "notIn",
                                  "all",
                                  "between",
                                  "overlaps",
                                  "inLastDays",
                                  "notInLastDays"
                                ],
                                "description": "For multiple choice fields in, all and notIn take option values and match records holding any, all or none of them. between uses two inclusive date endpoints in values; overlaps takes the same endpoints and also matches a date range that only partly falls between them; a range without an end counts as its start day. inLastDays and notInLastDays use a positive whole day count in value as a decimal without currency. Range contains tests a point; gt/gte test its start, lt/lte its end. Relative windows begin at UTC midnight that many days before the query clock: inLastDays includes later dates, notInLastDays matches only earlier ones."
                              },
                              "value": {
                                "anyOf": [
                                  {
                                    "oneOf": [
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "text"
                                          },
                                          "value": {
                                            "type": "string",
                                            "maxLength": 100000,
                                            "pattern": "^[^\\u0000]*$"
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "textList"
                                          },
                                          "value": {
                                            "minItems": 1,
                                            "maxItems": 100,
                                            "type": "array",
                                            "items": {
                                              "type": "string",
                                              "maxLength": 100000,
                                              "pattern": "^[^\\u0000]*$"
                                            }
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "decimal"
                                          },
                                          "value": {
                                            "type": "string",
                                            "maxLength": 128,
                                            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
                                          },
                                          "currency": {
                                            "anyOf": [
                                              {
                                                "type": "string",
                                                "pattern": "^[A-Z]{3}$"
                                              },
                                              {
                                                "type": "null"
                                              }
                                            ]
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value",
                                          "currency"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "boolean"
                                          },
                                          "value": {
                                            "type": "boolean"
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "date"
                                          },
                                          "value": {
                                            "anyOf": [
                                              {
                                                "type": "string",
                                                "format": "date",
                                                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                                              },
                                              {
                                                "type": "string",
                                                "format": "date-time",
                                                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                              }
                                            ]
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "dateTime"
                                          },
                                          "value": {
                                            "type": "string",
                                            "format": "date-time",
                                            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "range"
                                          },
                                          "start": {
                                            "anyOf": [
                                              {
                                                "type": "string",
                                                "pattern": "^[^\\u0000]*$"
                                              },
                                              {
                                                "type": "null"
                                              }
                                            ]
                                          },
                                          "end": {
                                            "anyOf": [
                                              {
                                                "type": "string",
                                                "pattern": "^[^\\u0000]*$"
                                              },
                                              {
                                                "type": "null"
                                              }
                                            ]
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "start",
                                          "end"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "select"
                                          },
                                          "value": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 200,
                                            "pattern": "^[^\\u0000]*$"
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "selectList"
                                          },
                                          "value": {
                                            "minItems": 1,
                                            "maxItems": 100,
                                            "type": "array",
                                            "items": {
                                              "type": "string",
                                              "minLength": 1,
                                              "maxLength": 200,
                                              "pattern": "^[^\\u0000]*$"
                                            }
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "member"
                                          },
                                          "value": {
                                            "type": "string",
                                            "format": "uuid",
                                            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "file"
                                          },
                                          "value": {
                                            "minItems": 1,
                                            "maxItems": 20,
                                            "type": "array",
                                            "items": {
                                              "type": "string",
                                              "format": "uuid",
                                              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                            }
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "richText"
                                          },
                                          "documentJson": {
                                            "type": "string",
                                            "maxLength": 1000000,
                                            "pattern": "^[^\\u0000]*$",
                                            "description": "Full Formatted text replacement as a ProseMirror document JSON string. Markdown is returned on read but cannot be sent here; use append for Markdown additions."
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "documentJson"
                                        ],
                                        "additionalProperties": false
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "const": "address"
                                          },
                                          "value": {
                                            "$ref": "#/$defs/RecordAddress"
                                          }
                                        },
                                        "required": [
                                          "kind",
                                          "value"
                                        ],
                                        "additionalProperties": false
                                      }
                                    ],
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "values": {
                                "maxItems": 100,
                                "type": "array",
                                "items": {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "text"
                                        },
                                        "value": {
                                          "type": "string",
                                          "maxLength": 100000,
                                          "pattern": "^[^\\u0000]*$"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "textList"
                                        },
                                        "value": {
                                          "minItems": 1,
                                          "maxItems": 100,
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "maxLength": 100000,
                                            "pattern": "^[^\\u0000]*$"
                                          }
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "decimal"
                                        },
                                        "value": {
                                          "type": "string",
                                          "maxLength": 128,
                                          "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
                                        },
                                        "currency": {
                                          "anyOf": [
                                            {
                                              "type": "string",
                                              "pattern": "^[A-Z]{3}$"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ]
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value",
                                        "currency"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "boolean"
                                        },
                                        "value": {
                                          "type": "boolean"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "date"
                                        },
                                        "value": {
                                          "anyOf": [
                                            {
                                              "type": "string",
                                              "format": "date",
                                              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                                            },
                                            {
                                              "type": "string",
                                              "format": "date-time",
                                              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                            }
                                          ]
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "dateTime"
                                        },
                                        "value": {
                                          "type": "string",
                                          "format": "date-time",
                                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "range"
                                        },
                                        "start": {
                                          "anyOf": [
                                            {
                                              "type": "string",
                                              "pattern": "^[^\\u0000]*$"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ]
                                        },
                                        "end": {
                                          "anyOf": [
                                            {
                                              "type": "string",
                                              "pattern": "^[^\\u0000]*$"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ]
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "start",
                                        "end"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "select"
                                        },
                                        "value": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 200,
                                          "pattern": "^[^\\u0000]*$"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "selectList"
                                        },
                                        "value": {
                                          "minItems": 1,
                                          "maxItems": 100,
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 200,
                                            "pattern": "^[^\\u0000]*$"
                                          }
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "member"
                                        },
                                        "value": {
                                          "type": "string",
                                          "format": "uuid",
                                          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "file"
                                        },
                                        "value": {
                                          "minItems": 1,
                                          "maxItems": 20,
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "format": "uuid",
                                            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                          }
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "richText"
                                        },
                                        "documentJson": {
                                          "type": "string",
                                          "maxLength": 1000000,
                                          "pattern": "^[^\\u0000]*$",
                                          "description": "Full Formatted text replacement as a ProseMirror document JSON string. Markdown is returned on read but cannot be sent here; use append for Markdown additions."
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "documentJson"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "const": "address"
                                        },
                                        "value": {
                                          "$ref": "#/$defs/RecordAddress"
                                        }
                                      },
                                      "required": [
                                        "kind",
                                        "value"
                                      ],
                                      "additionalProperties": false
                                    }
                                  ],
                                  "type": "object"
                                }
                              }
                            },
                            "required": [
                              "fieldId",
                              "operator",
                              "value"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "relationships": {
                          "default": [],
                          "maxItems": 50,
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "relationId": {
                                "type": "string",
                                "format": "uuid",
                                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                              },
                              "direction": {
                                "type": "string",
                                "enum": [
                                  "outgoing",
                                  "incoming"
                                ]
                              },
                              "operator": {
                                "type": "string",
                                "enum": [
                                  "any",
                                  "none"
                                ]
                              },
                              "recordIds": {
                                "anyOf": [
                                  {
                                    "maxItems": 100,
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "format": "uuid",
                                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                                    }
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              }
                            },
                            "required": [
                              "relationId",
                              "direction",
                              "operator",
                              "recordIds"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "search": {
                          "type": "string",
                          "maxLength": 500
                        },
                        "recordIds": {
                          "description": "Match these terminal record identities after following the path; all steps require record access.",
                          "maxItems": 100,
                          "type": "array",
                          "items": {
                            "type": "string",
                            "format": "uuid",
                            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                          }
                        }
                      },
                      "required": [
                        "path",
                        "operator",
                        "filters",
                        "relationships"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "search": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "required": [
                  "typeId",
                  "filters",
                  "relationships"
                ],
                "additionalProperties": false
              },
              "changedFieldIds": {
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "string",
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                }
              },
              "events": {
                "minItems": 1,
                "maxItems": 5,
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "record.created",
                    "record.updated",
                    "record.deleted",
                    "record.restored",
                    "record.deletedPermanently"
                  ]
                }
              }
            },
            "required": [
              "query",
              "changedFieldIds",
              "events"
            ],
            "additionalProperties": false
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "recordOwnerUserId": {
      "anyOf": [
        {
          "type": "string",
          "format": "uuid",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
        },
        {
          "type": "null"
        }
      ]
    },
    "createdAt": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "hasSecret": {
      "type": "boolean"
    },
    "headerNames": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "id",
    "url",
    "description",
    "events",
    "bodyTemplate",
    "enabled",
    "createdAt",
    "updatedAt",
    "hasSecret",
    "headerNames"
  ],
  "additionalProperties": false
}