{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/clarify/main/json-schema/clarify-update-layout-body-dto-schema.json",
  "title": "UpdateLayoutBodyDto",
  "x-generated": "2026-10-08",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/clarify-openapi.json#/components/schemas/UpdateLayoutBodyDto",
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "description": "The resource type; matches the `object` path parameter."
        },
        "id": {
          "type": "string",
          "description": "The unique ID of the resource to update."
        },
        "attributes": {
          "description": "The field values to change, keyed by field name; omitted fields keep their current values. System fields (prefixed with a single `_`) cannot be set.",
          "type": "object",
          "properties": {
            "tree": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "number",
                      "enum": [
                        1
                      ]
                    },
                    "children": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "minLength": 1
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "NavGroup"
                            ]
                          },
                          "props": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "minLength": 1
                              }
                            },
                            "required": [
                              "name"
                            ],
                            "additionalProperties": false
                          },
                          "children": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string",
                                  "minLength": 1
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "NavLink"
                                  ]
                                },
                                "props": {
                                  "type": "object",
                                  "properties": {
                                    "entity": {
                                      "type": "string",
                                      "minLength": 1
                                    },
                                    "listId": {
                                      "type": "string",
                                      "minLength": 1
                                    }
                                  },
                                  "required": [
                                    "entity"
                                  ],
                                  "additionalProperties": false
                                }
                              },
                              "required": [
                                "id",
                                "type",
                                "props"
                              ],
                              "additionalProperties": false
                            }
                          }
                        },
                        "required": [
                          "id",
                          "type",
                          "props",
                          "children"
                        ],
                        "additionalProperties": false
                      },
                      "minItems": 1,
                      "maxItems": 1
                    }
                  },
                  "required": [
                    "version",
                    "children"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "number",
                      "enum": [
                        1
                      ]
                    },
                    "children": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "minLength": 1
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "Tabs"
                                ]
                              },
                              "children": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "id": {
                                      "type": "string",
                                      "minLength": 1
                                    },
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "Tab"
                                      ]
                                    },
                                    "props": {
                                      "oneOf": [
                                        {
                                          "type": "object",
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "enum": [
                                                "overview"
                                              ]
                                            },
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "kind",
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "enum": [
                                                "emails"
                                              ]
                                            },
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "field": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "personField": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "label": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "kind",
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "enum": [
                                                "meetings"
                                              ]
                                            },
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "field": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "personField": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "label": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "kind",
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "enum": [
                                                "attachments"
                                              ]
                                            },
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "kind",
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "enum": [
                                                "related-records"
                                              ]
                                            },
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "relationshipSlug": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "listId": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "versionId": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "label": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "kind",
                                            "name",
                                            "relationshipSlug"
                                          ],
                                          "additionalProperties": false
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "enum": [
                                                "campaigns"
                                              ]
                                            },
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "kind",
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "enum": [
                                                "notes"
                                              ]
                                            },
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "kind",
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "enum": [
                                                "snippets"
                                              ]
                                            },
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "kind",
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        }
                                      ]
                                    }
                                  },
                                  "required": [
                                    "id",
                                    "type",
                                    "props"
                                  ],
                                  "additionalProperties": false
                                }
                              }
                            },
                            "required": [
                              "id",
                              "type",
                              "children"
                            ],
                            "additionalProperties": false
                          },
                          {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "minLength": 1
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "Widgets"
                                ]
                              },
                              "children": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "id": {
                                      "type": "string",
                                      "minLength": 1
                                    },
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "FieldsWidget"
                                      ]
                                    },
                                    "children": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "id": {
                                            "type": "string",
                                            "minLength": 1
                                          },
                                          "type": {
                                            "type": "string",
                                            "enum": [
                                              "Field"
                                            ]
                                          },
                                          "props": {
                                            "type": "object",
                                            "properties": {
                                              "fieldSlug": {
                                                "type": "string",
                                                "minLength": 1
                                              }
                                            },
                                            "required": [
                                              "fieldSlug"
                                            ],
                                            "additionalProperties": false
                                          }
                                        },
                                        "required": [
                                          "id",
                                          "type",
                                          "props"
                                        ],
                                        "additionalProperties": false
                                      }
                                    }
                                  },
                                  "required": [
                                    "id",
                                    "type",
                                    "children"
                                  ],
                                  "additionalProperties": false
                                }
                              }
                            },
                            "required": [
                              "id",
                              "type",
                              "children"
                            ],
                            "additionalProperties": false
                          },
                          {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "minLength": 1
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "Sidebar"
                                ]
                              },
                              "children": {
                                "type": "array",
                                "items": {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "minLength": 1
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "FieldsGroup"
                                          ]
                                        },
                                        "props": {
                                          "type": "object",
                                          "properties": {
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        },
                                        "children": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "minLength": 1
                                              },
                                              "type": {
                                                "type": "string",
                                                "enum": [
                                                  "Field"
                                                ]
                                              },
                                              "props": {
                                                "type": "object",
                                                "properties": {
                                                  "fieldSlug": {
                                                    "type": "string",
                                                    "minLength": 1
                                                  }
                                                },
                                                "required": [
                                                  "fieldSlug"
                                                ],
                                                "additionalProperties": false
                                              }
                                            },
                                            "required": [
                                              "id",
                                              "type",
                                              "props"
                                            ],
                                            "additionalProperties": false
                                          }
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "type",
                                        "props",
                                        "children"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "minLength": 1
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MeetingParticipantsGroup"
                                          ]
                                        },
                                        "props": {
                                          "type": "object",
                                          "properties": {
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "name"
                                          ],
                                          "additionalProperties": false
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "type",
                                        "props"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "minLength": 1
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MeetingRecording"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "type"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "minLength": 1
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "RelatedLists"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "type"
                                      ],
                                      "additionalProperties": false
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "minLength": 1
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "RelatedRecordsGroup"
                                          ]
                                        },
                                        "props": {
                                          "type": "object",
                                          "properties": {
                                            "name": {
                                              "type": "string",
                                              "minLength": 1
                                            },
                                            "relationshipSlug": {
                                              "type": "string",
                                              "minLength": 1
                                            }
                                          },
                                          "required": [
                                            "name",
                                            "relationshipSlug"
                                          ],
                                          "additionalProperties": false
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "type",
                                        "props"
                                      ],
                                      "additionalProperties": false
                                    }
                                  ]
                                }
                              }
                            },
                            "required": [
                              "id",
                              "type",
                              "children"
                            ],
                            "additionalProperties": false
                          },
                          {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "minLength": 1
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "Header"
                                ]
                              },
                              "children": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "id": {
                                      "type": "string",
                                      "minLength": 1
                                    },
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "Field"
                                      ]
                                    },
                                    "props": {
                                      "type": "object",
                                      "properties": {
                                        "fieldSlug": {
                                          "type": "string",
                                          "minLength": 1
                                        }
                                      },
                                      "required": [
                                        "fieldSlug"
                                      ],
                                      "additionalProperties": false
                                    }
                                  },
                                  "required": [
                                    "id",
                                    "type",
                                    "props"
                                  ],
                                  "additionalProperties": false
                                }
                              }
                            },
                            "required": [
                              "id",
                              "type",
                              "children"
                            ],
                            "additionalProperties": false
                          }
                        ]
                      }
                    }
                  },
                  "required": [
                    "version",
                    "children"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "number",
                      "enum": [
                        1
                      ]
                    },
                    "children": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "minLength": 1
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "NavGroup"
                            ]
                          },
                          "props": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "minLength": 1
                              }
                            },
                            "required": [
                              "name"
                            ],
                            "additionalProperties": false
                          },
                          "children": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string",
                                  "minLength": 1
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "NavLink"
                                  ]
                                },
                                "props": {
                                  "type": "object",
                                  "properties": {
                                    "entity": {
                                      "type": "string",
                                      "minLength": 1
                                    },
                                    "listId": {
                                      "type": "string",
                                      "minLength": 1
                                    }
                                  },
                                  "required": [
                                    "entity"
                                  ],
                                  "additionalProperties": false
                                }
                              },
                              "required": [
                                "id",
                                "type",
                                "props"
                              ],
                              "additionalProperties": false
                            }
                          }
                        },
                        "required": [
                          "id",
                          "type",
                          "props",
                          "children"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "version",
                    "children"
                  ],
                  "additionalProperties": false
                }
              ],
              "description": "The layout’s UI tree: a recursive structure of nodes describing app navigation, a record page’s regions, or a list’s navigation, depending on the layout ID."
            }
          },
          "required": [
            "tree"
          ],
          "additionalProperties": true
        }
      },
      "required": [
        "type",
        "id",
        "attributes"
      ],
      "additionalProperties": false,
      "description": "The changes to apply."
    },
    "meta": {
      "readOnly": true,
      "description": "Optional JSON:API meta member carrying request-specific options; not accepted for this resource."
    }
  },
  "required": [
    "data"
  ]
}