{
  "openapi": "3.0.1",
  "info": {
    "title": "Nexora API",
    "description": "Metadata-driven runtime business application platform API.",
    "version": "v1"
  },
  "paths": {
    "/api/auth/register": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/verify-email": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyEmailRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyEmailRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyEmailRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/login": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/LoginRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/tenant-login": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantLoginRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantLoginRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantLoginRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/select-tenant": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectTenantRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectTenantRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectTenantRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/me": {
      "get": {
        "tags": [
          "Auth"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/profile": {
      "get": {
        "tags": [
          "Auth"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/change-password": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/builder/modules/{moduleName}": {
      "get": {
        "tags": [
          "Builder"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/builder/modules/{moduleName}/draft": {
      "put": {
        "tags": [
          "Builder"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": { }
            },
            "text/json": {
              "schema": { }
            },
            "application/*+json": {
              "schema": { }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/builder/modules/{moduleName}/validate": {
      "post": {
        "tags": [
          "Builder"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/builder/modules/{moduleName}/publish-preview": {
      "get": {
        "tags": [
          "Builder"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/builder/modules/{moduleName}/publish-history": {
      "get": {
        "tags": [
          "Builder"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/builder/modules/{moduleName}/audit": {
      "get": {
        "tags": [
          "Builder"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/builder/modules/{moduleName}/publish": {
      "post": {
        "tags": [
          "Builder"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/dashboard": {
      "get": {
        "tags": [
          "ErehwontV2Dashboard"
        ],
        "parameters": [
          {
            "name": "year",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/purchase-orders/{purchaseOrderId}/receive-draft": {
      "get": {
        "tags": [
          "ErehwontV2PurchaseReceive"
        ],
        "parameters": [
          {
            "name": "purchaseOrderId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/purchase-orders/{purchaseOrderId}/receive": {
      "post": {
        "tags": [
          "ErehwontV2PurchaseReceive"
        ],
        "parameters": [
          {
            "name": "purchaseOrderId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReceivePurchaseOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ReceivePurchaseOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ReceivePurchaseOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/purchase-receives/{purchaseReceiveId}/post": {
      "post": {
        "tags": [
          "ErehwontV2PurchaseReceive"
        ],
        "parameters": [
          {
            "name": "purchaseReceiveId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/purchase-orders/export": {
      "post": {
        "tags": [
          "ErehwontV2PurchaseReceive"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/purchase-receives/export": {
      "post": {
        "tags": [
          "ErehwontV2PurchaseReceive"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices/export": {
      "post": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices/cancelled/export": {
      "post": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-credit-notes/export": {
      "post": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices/draft": {
      "get": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices/product-draft": {
      "get": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "parameters": [
          {
            "name": "customerId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "warehouseId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "productId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices/products": {
      "get": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "parameters": [
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productGroupId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "take",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices": {
      "post": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSalesInvoiceRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSalesInvoiceRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSalesInvoiceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices/{salesInvoiceId}/print": {
      "get": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "parameters": [
          {
            "name": "salesInvoiceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices/{salesInvoiceId}/cancel": {
      "post": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "parameters": [
          {
            "name": "salesInvoiceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CancelSalesInvoiceRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CancelSalesInvoiceRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CancelSalesInvoiceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/custom/erehwont-v2/sales-invoices/{salesInvoiceId}/credit-note": {
      "post": {
        "tags": [
          "ErehwontV2SalesInvoice"
        ],
        "parameters": [
          {
            "name": "salesInvoiceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSalesCreditNoteRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSalesCreditNoteRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSalesCreditNoteRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/{moduleId}/fields": {
      "get": {
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateFieldRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateFieldRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateFieldRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/{moduleId}/fields/{fieldId}": {
      "patch": {
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFieldRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFieldRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFieldRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/{moduleId}/fields/reorder": {
      "post": {
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderFieldsRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderFieldsRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderFieldsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/field-types": {
      "get": {
        "tags": [
          "FieldTypes"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules": {
      "get": {
        "tags": [
          "Modules"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Modules"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateModuleRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateModuleRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateModuleRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/menu": {
      "get": {
        "tags": [
          "Modules"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/{moduleId}": {
      "get": {
        "tags": [
          "Modules"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "patch": {
        "tags": [
          "Modules"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateModuleRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateModuleRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateModuleRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Modules"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/by-key/{moduleKey}": {
      "get": {
        "tags": [
          "Modules"
        ],
        "parameters": [
          {
            "name": "moduleKey",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/{moduleId}/permanent": {
      "delete": {
        "tags": [
          "Modules"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PermanentlyDeleteModuleRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/PermanentlyDeleteModuleRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/PermanentlyDeleteModuleRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/{name}/metadata": {
      "get": {
        "tags": [
          "Modules"
        ],
        "parameters": [
          {
            "name": "name",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/modules/{moduleName}/layout": {
      "get": {
        "tags": [
          "Modules"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Modules"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": { }
            },
            "text/json": {
              "schema": { }
            },
            "application/*+json": {
              "schema": { }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/navigation": {
      "get": {
        "tags": [
          "Navigation"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Navigation"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveNavigationItemRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveNavigationItemRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SaveNavigationItemRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/navigation/menu": {
      "get": {
        "tags": [
          "Navigation"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/navigation/{id}": {
      "put": {
        "tags": [
          "Navigation"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveNavigationItemRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveNavigationItemRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SaveNavigationItemRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Navigation"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/navigation/reorder": {
      "patch": {
        "tags": [
          "Navigation"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderNavigationRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderNavigationRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderNavigationRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/": {
      "get": {
        "tags": [
          "Nexora.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api": {
      "get": {
        "tags": [
          "Nexora.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/health": {
      "get": {
        "tags": [
          "Nexora.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/relationships/{relationshipId}": {
      "post": {
        "tags": [
          "RelationshipRecords"
        ],
        "parameters": [
          {
            "name": "relationshipId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignRelationshipRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignRelationshipRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AssignRelationshipRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "RelationshipRecords"
        ],
        "parameters": [
          {
            "name": "relationshipId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignRelationshipRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignRelationshipRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AssignRelationshipRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/relationships/{relationshipId}/{sourceId}": {
      "get": {
        "tags": [
          "RelationshipRecords"
        ],
        "parameters": [
          {
            "name": "relationshipId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "sourceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/relationships": {
      "post": {
        "tags": [
          "Relationships"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRelationshipRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRelationshipRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRelationshipRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Relationships"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/relationships/module/{moduleId}": {
      "get": {
        "tags": [
          "Relationships"
        ],
        "parameters": [
          {
            "name": "moduleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/relationships/{relationshipId}": {
      "patch": {
        "tags": [
          "Relationships"
        ],
        "parameters": [
          {
            "name": "relationshipId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRelationshipRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRelationshipRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRelationshipRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Relationships"
        ],
        "parameters": [
          {
            "name": "relationshipId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/platform/relationships/reorder": {
      "post": {
        "tags": [
          "Relationships"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderRelationshipsRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderRelationshipsRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderRelationshipsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/uploads/image": {
      "post": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}": {
      "post": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": { }
              }
            },
            "text/json": {
              "schema": {
                "type": "object",
                "additionalProperties": { }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "object",
                "additionalProperties": { }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "caseSensitive",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "sortBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sortDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filters",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/composite": {
      "post": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompositeRuntimeCreateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CompositeRuntimeCreateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CompositeRuntimeCreateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/{id}/composite": {
      "get": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompositeRuntimeCreateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CompositeRuntimeCreateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CompositeRuntimeCreateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/export": {
      "post": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeGridExportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/config": {
      "get": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/lookup": {
      "get": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filterField",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filterValue",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "lookupConfig",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "take",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/{id}": {
      "get": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": { }
              }
            },
            "text/json": {
              "schema": {
                "type": "object",
                "additionalProperties": { }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "object",
                "additionalProperties": { }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Runtime"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/bulk/template": {
      "get": {
        "tags": [
          "RuntimeBulk"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "operation",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "insert"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/bulk/jobs": {
      "post": {
        "tags": [
          "RuntimeBulk"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "Operation": {
                    "type": "string"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "Operation": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "RuntimeBulk"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "take",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/bulk/jobs/{jobId}": {
      "get": {
        "tags": [
          "RuntimeBulk"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "jobId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/bulk/jobs/{jobId}/result": {
      "get": {
        "tags": [
          "RuntimeBulk"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "jobId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/{recordId}/relationships": {
      "get": {
        "tags": [
          "RuntimeRecordRelationships"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "recordId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/{recordId}/relationships/{relationshipName}": {
      "get": {
        "tags": [
          "RuntimeRecordRelationships"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "recordId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "relationshipName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "RuntimeRecordRelationships"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "recordId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "relationshipName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeRelationshipAssignmentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeRelationshipAssignmentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RuntimeRelationshipAssignmentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/runtime/{moduleName}/{recordId}/relationships/{relationshipName}/{targetId}": {
      "delete": {
        "tags": [
          "RuntimeRecordRelationships"
        ],
        "parameters": [
          {
            "name": "moduleName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "recordId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "relationshipName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "targetId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/source/{tenantId}/modules": {
      "get": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/history": {
      "get": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/export/{tenantId}": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationExportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationExportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationExportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/export/{tenantId}/download": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationExportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationExportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationExportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/import": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/import/file": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "PackageFile": {
                    "type": "string",
                    "format": "binary"
                  },
                  "TenantName": {
                    "type": "string"
                  },
                  "AdminFullName": {
                    "type": "string"
                  },
                  "AdminEmail": {
                    "type": "string"
                  },
                  "AdminPassword": {
                    "type": "string"
                  },
                  "ModuleIdsJson": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "PackageFile": {
                  "style": "form"
                },
                "TenantName": {
                  "style": "form"
                },
                "AdminFullName": {
                  "style": "form"
                },
                "AdminEmail": {
                  "style": "form"
                },
                "AdminPassword": {
                  "style": "form"
                },
                "ModuleIdsJson": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/import/plan": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/import/file/plan": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "PackageFile": {
                    "type": "string",
                    "format": "binary"
                  },
                  "TenantName": {
                    "type": "string"
                  },
                  "AdminFullName": {
                    "type": "string"
                  },
                  "AdminEmail": {
                    "type": "string"
                  },
                  "AdminPassword": {
                    "type": "string"
                  },
                  "ModuleIdsJson": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "PackageFile": {
                  "style": "form"
                },
                "TenantName": {
                  "style": "form"
                },
                "AdminFullName": {
                  "style": "form"
                },
                "AdminEmail": {
                  "style": "form"
                },
                "AdminPassword": {
                  "style": "form"
                },
                "ModuleIdsJson": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/import/{tenantId}": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportExistingTenantRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportExistingTenantRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportExistingTenantRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/import/{tenantId}/file": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "PackageFile": {
                    "type": "string",
                    "format": "binary"
                  },
                  "ConflictStrategy": {
                    "type": "string"
                  },
                  "ModuleIdsJson": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "PackageFile": {
                  "style": "form"
                },
                "ConflictStrategy": {
                  "style": "form"
                },
                "ModuleIdsJson": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/import/{tenantId}/plan": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportExistingTenantRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportExistingTenantRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationImportExistingTenantRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/import/{tenantId}/file/plan": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "PackageFile": {
                    "type": "string",
                    "format": "binary"
                  },
                  "ConflictStrategy": {
                    "type": "string"
                  },
                  "ModuleIdsJson": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "PackageFile": {
                  "style": "form"
                },
                "ConflictStrategy": {
                  "style": "form"
                },
                "ModuleIdsJson": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/clone": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationCloneRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationCloneRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationCloneRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenant-configuration-packages/clone/plan": {
      "post": {
        "tags": [
          "TenantConfigurationPackages"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationCloneRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationCloneRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TenantConfigurationCloneRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenants": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Tenants"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterTenantRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterTenantRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterTenantRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenants/{clientId}": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Tenants"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenants/{clientId}/theme-preference": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Tenants"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Tenants"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenants/{clientId}/bulk-workers": {
      "patch": {
        "tags": [
          "Tenants"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantBulkWorkersRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantBulkWorkersRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantBulkWorkersRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/master/tenants/migrate": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users": {
      "get": {
        "tags": [
          "TenantUsers"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/roles": {
      "get": {
        "tags": [
          "TenantUsers"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "TenantUsers"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantRoleRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantRoleRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantRoleRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/permissions": {
      "get": {
        "tags": [
          "TenantUsers"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/access-nodes": {
      "get": {
        "tags": [
          "TenantUsers"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "TenantUsers"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessNodeRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessNodeRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessNodeRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/access-groups": {
      "get": {
        "tags": [
          "TenantUsers"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "TenantUsers"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessGroupRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessGroupRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessGroupRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/access-dimensions": {
      "get": {
        "tags": [
          "TenantUsers"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "TenantUsers"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessDimensionRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessDimensionRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantAccessDimensionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/roles/{roleId}": {
      "patch": {
        "tags": [
          "TenantUsers"
        ],
        "parameters": [
          {
            "name": "roleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantRoleRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantRoleRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantRoleRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/invite": {
      "post": {
        "tags": [
          "TenantUsers"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InviteTenantUserRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InviteTenantUserRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InviteTenantUserRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/{userId}/role": {
      "patch": {
        "tags": [
          "TenantUsers"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserRoleRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserRoleRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserRoleRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/{userId}/profile": {
      "patch": {
        "tags": [
          "TenantUsers"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserProfileRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserProfileRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserProfileRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/{userId}/access-groups": {
      "patch": {
        "tags": [
          "TenantUsers"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserAccessGroupsRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserAccessGroupsRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantUserAccessGroupsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/{userId}/password": {
      "patch": {
        "tags": [
          "TenantUsers"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetTenantUserPasswordRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetTenantUserPasswordRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetTenantUserPasswordRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/users/{userId}/deactivate": {
      "patch": {
        "tags": [
          "TenantUsers"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/ui/theme-preferences/effective": {
      "get": {
        "tags": [
          "UiThemePreferences"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/ui/theme-preferences/me": {
      "put": {
        "tags": [
          "UiThemePreferences"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "UiThemePreferences"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/ui/theme-preferences/tenant-default": {
      "put": {
        "tags": [
          "UiThemePreferences"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SaveUiThemePreferenceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "UiThemePreferences"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AssignRelationshipRequest": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "format": "uuid"
          },
          "targetId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "CancelSalesInvoiceRequest": {
        "type": "object",
        "properties": {
          "cancelRemark": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ChangePasswordRequest": {
        "type": "object",
        "properties": {
          "currentPassword": {
            "type": "string",
            "nullable": true
          },
          "newPassword": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CompositeRuntimeChildRequest": {
        "type": "object",
        "properties": {
          "sectionId": {
            "type": "string",
            "nullable": true
          },
          "moduleName": {
            "type": "string",
            "nullable": true
          },
          "sourceColumn": {
            "type": "string",
            "nullable": true
          },
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": { }
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CompositeRuntimeCreateRequest": {
        "type": "object",
        "properties": {
          "parent": {
            "type": "object",
            "additionalProperties": {
              "nullable": true
            },
            "nullable": true
          },
          "children": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CompositeRuntimeChildRequest"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateFieldRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "dataType": {
            "type": "string",
            "nullable": true
          },
          "configJson": {
            "type": "string",
            "nullable": true
          },
          "isRequired": {
            "type": "boolean"
          },
          "isUnique": {
            "type": "boolean"
          },
          "maxLength": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateModuleRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "iconName": {
            "type": "string",
            "nullable": true
          },
          "isVisibleInMenu": {
            "type": "boolean",
            "nullable": true
          },
          "menuGroup": {
            "type": "string",
            "nullable": true
          },
          "parentModuleId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "menuOrder": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "defaultPageType": {
            "type": "string",
            "nullable": true
          },
          "defaultPageValue": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateRelationshipRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "sourceModuleId": {
            "type": "string",
            "format": "uuid"
          },
          "targetModuleId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "relationshipType": {
            "type": "string",
            "nullable": true
          },
          "sourceColumnName": {
            "type": "string",
            "nullable": true
          },
          "deleteBehavior": {
            "type": "string",
            "nullable": true
          },
          "isRequired": {
            "type": "boolean"
          },
          "isUnique": {
            "type": "boolean"
          },
          "junctionTableName": {
            "type": "string",
            "nullable": true
          },
          "sourceJunctionColumnName": {
            "type": "string",
            "nullable": true
          },
          "targetJunctionColumnName": {
            "type": "string",
            "nullable": true
          },
          "displayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CreateSalesCreditNoteRequest": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateSalesInvoiceItemRequest": {
        "type": "object",
        "properties": {
          "productGroupId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "customerProductCode": {
            "type": "string",
            "nullable": true
          },
          "quantity": {
            "type": "number",
            "format": "double"
          },
          "unitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "rate": {
            "type": "number",
            "format": "double"
          },
          "discountPercent": {
            "type": "number",
            "format": "double"
          },
          "cgst": {
            "type": "number",
            "format": "double"
          },
          "sgst": {
            "type": "number",
            "format": "double"
          },
          "igst": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "CreateSalesInvoiceRequest": {
        "type": "object",
        "properties": {
          "invoiceDate": {
            "type": "string",
            "format": "date",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "warehouseId": {
            "type": "string",
            "format": "uuid"
          },
          "customerPoNo": {
            "type": "string",
            "nullable": true
          },
          "customerPoDate": {
            "type": "string",
            "format": "date",
            "nullable": true
          },
          "remark": {
            "type": "string",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreateSalesInvoiceItemRequest"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTenantAccessDimensionRequest": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "nullable": true
          },
          "label": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "valueType": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTenantAccessGroupRequest": {
        "type": "object",
        "properties": {
          "groupType": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "externalKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTenantAccessNodeRequest": {
        "type": "object",
        "properties": {
          "parentId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "nodeType": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "externalKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTenantRoleRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "permissionKeys": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "accessPolicies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantAccessPolicyRequest"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InviteTenantUserRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string",
            "nullable": true
          },
          "profileJson": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LoginRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          },
          "tenantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PermanentlyDeleteModuleRequest": {
        "type": "object",
        "properties": {
          "confirmationText": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ReceivePurchaseOrderItemRequest": {
        "type": "object",
        "properties": {
          "purchaseOrderItemId": {
            "type": "string",
            "format": "uuid"
          },
          "productGroupId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "receivedQty": {
            "type": "number",
            "format": "double"
          },
          "rate": {
            "type": "number",
            "format": "double"
          },
          "discountPercent": {
            "type": "number",
            "format": "double"
          },
          "cgst": {
            "type": "number",
            "format": "double"
          },
          "sgst": {
            "type": "number",
            "format": "double"
          },
          "igst": {
            "type": "number",
            "format": "double"
          },
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ReceivePurchaseOrderRequest": {
        "type": "object",
        "properties": {
          "invoiceNo": {
            "type": "string",
            "nullable": true
          },
          "invoiceDate": {
            "type": "string",
            "format": "date",
            "nullable": true
          },
          "receiveDate": {
            "type": "string",
            "format": "date",
            "nullable": true
          },
          "transportationCharge": {
            "type": "number",
            "format": "double"
          },
          "remark": {
            "type": "string",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReceivePurchaseOrderItemRequest"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RegisterRequest": {
        "type": "object",
        "properties": {
          "clientName": {
            "type": "string",
            "nullable": true
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RegisterTenantAdminRequest": {
        "type": "object",
        "properties": {
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RegisterTenantRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "admin": {
            "$ref": "#/components/schemas/RegisterTenantAdminRequest"
          }
        },
        "additionalProperties": false
      },
      "ReorderFieldsRequest": {
        "type": "object",
        "properties": {
          "fieldIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ReorderNavigationItemRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "parentNavigationItemId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ReorderNavigationRequest": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReorderNavigationItemRequest"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ReorderRelationshipsRequest": {
        "type": "object",
        "properties": {
          "relationshipIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RuntimeGridExportColumn": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string",
            "nullable": true
          },
          "label": {
            "type": "string",
            "nullable": true
          },
          "sourcePath": {
            "type": "string",
            "nullable": true
          },
          "formula": {
            "type": "string",
            "nullable": true
          },
          "dataType": {
            "type": "string",
            "nullable": true
          },
          "virtual": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "RuntimeGridExportRequest": {
        "type": "object",
        "properties": {
          "search": {
            "type": "string",
            "nullable": true
          },
          "caseSensitive": {
            "type": "boolean"
          },
          "sortBy": {
            "type": "string",
            "nullable": true
          },
          "sortDirection": {
            "type": "string",
            "nullable": true
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RuntimeRecordFilter"
            },
            "nullable": true
          },
          "columns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RuntimeGridExportColumn"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RuntimeRecordFilter": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string",
            "nullable": true
          },
          "operator": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "nullable": true
          },
          "valueTo": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RuntimeRelationshipAssignmentRequest": {
        "type": "object",
        "properties": {
          "targetId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "SaveNavigationItemRequest": {
        "type": "object",
        "properties": {
          "parentNavigationItemId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "moduleDefinitionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "label": {
            "type": "string",
            "nullable": true
          },
          "itemType": {
            "type": "string",
            "nullable": true
          },
          "iconName": {
            "type": "string",
            "nullable": true
          },
          "route": {
            "type": "string",
            "nullable": true
          },
          "routeParametersJson": {
            "type": "string",
            "nullable": true
          },
          "filterJson": {
            "type": "string",
            "nullable": true
          },
          "permissionKey": {
            "type": "string",
            "nullable": true
          },
          "openBehavior": {
            "type": "string",
            "nullable": true
          },
          "isVisible": {
            "type": "boolean",
            "nullable": true
          },
          "isCollapsedByDefault": {
            "type": "boolean",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SaveUiThemePreferenceRequest": {
        "type": "object",
        "properties": {
          "theme": { }
        },
        "additionalProperties": false
      },
      "SelectTenantRequest": {
        "type": "object",
        "properties": {
          "tenantId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "SetTenantUserPasswordRequest": {
        "type": "object",
        "properties": {
          "newPassword": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantAccessDimensionPackage": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "nullable": true
          },
          "normalizedKey": {
            "type": "string",
            "nullable": true
          },
          "label": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "valueType": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "TenantAccessPolicyRequest": {
        "type": "object",
        "properties": {
          "moduleDefinitionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "action": {
            "type": "string",
            "nullable": true
          },
          "recordScope": {
            "type": "string",
            "nullable": true
          },
          "filterJson": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantConfigurationCloneRequest": {
        "type": "object",
        "properties": {
          "tenantName": {
            "type": "string",
            "nullable": true
          },
          "sourceTenantId": {
            "type": "string",
            "format": "uuid"
          },
          "moduleIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "includeSetupData": {
            "type": "boolean"
          },
          "sourceEnvironment": {
            "type": "string",
            "nullable": true
          },
          "admin": {
            "$ref": "#/components/schemas/TenantInitialAdminRequest"
          }
        },
        "additionalProperties": false
      },
      "TenantConfigurationExportRequest": {
        "type": "object",
        "properties": {
          "moduleIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "includeSetupData": {
            "type": "boolean"
          },
          "sourceEnvironment": {
            "type": "string",
            "nullable": true
          },
          "exportedBy": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantConfigurationImportExistingTenantRequest": {
        "type": "object",
        "properties": {
          "package": {
            "$ref": "#/components/schemas/TenantConfigurationPackage"
          },
          "conflictStrategy": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantConfigurationImportRequest": {
        "type": "object",
        "properties": {
          "tenantName": {
            "type": "string",
            "nullable": true
          },
          "admin": {
            "$ref": "#/components/schemas/TenantInitialAdminRequest"
          },
          "package": {
            "$ref": "#/components/schemas/TenantConfigurationPackage"
          }
        },
        "additionalProperties": false
      },
      "TenantConfigurationModulePackage": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "format": "uuid"
          },
          "stableId": {
            "type": "string",
            "format": "uuid"
          },
          "sourceParentModuleId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "parentStableId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "key": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "tableName": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isSystem": {
            "type": "boolean"
          },
          "isActive": {
            "type": "boolean"
          },
          "iconName": {
            "type": "string",
            "nullable": true
          },
          "isVisibleInMenu": {
            "type": "boolean"
          },
          "menuGroup": {
            "type": "string",
            "nullable": true
          },
          "menuOrder": {
            "type": "integer",
            "format": "int32"
          },
          "defaultPageType": {
            "type": "string",
            "nullable": true
          },
          "defaultPageValue": {
            "type": "string",
            "nullable": true
          },
          "layoutJson": {
            "type": "string",
            "nullable": true
          },
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantFieldPackage"
            },
            "nullable": true
          },
          "uniqueRules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantUniqueRulePackage"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantConfigurationPackage": {
        "type": "object",
        "properties": {
          "packageType": {
            "type": "string",
            "nullable": true
          },
          "packageVersion": {
            "type": "string",
            "nullable": true
          },
          "packageFormatVersion": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "exportedAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "sourceEnvironment": {
            "type": "string",
            "nullable": true
          },
          "sourceTenantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sourceTenantName": {
            "type": "string",
            "nullable": true
          },
          "sourceTenantKey": {
            "type": "string",
            "nullable": true
          },
          "exportedBy": {
            "type": "string",
            "nullable": true
          },
          "includes": {
            "$ref": "#/components/schemas/TenantConfigurationPackageIncludes"
          },
          "modules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantConfigurationModulePackage"
            },
            "nullable": true
          },
          "relationships": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantRelationshipPackage"
            },
            "nullable": true
          },
          "navigationItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantNavigationItemPackage"
            },
            "nullable": true
          },
          "tenantTheme": {
            "$ref": "#/components/schemas/TenantThemePreferencePackage"
          },
          "roles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantRolePackage"
            },
            "nullable": true
          },
          "accessDimensions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantAccessDimensionPackage"
            },
            "nullable": true
          },
          "setupDataModules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantSetupDataModulePackage"
            },
            "nullable": true
          },
          "contentFingerprintVersion": {
            "type": "string",
            "nullable": true
          },
          "contentFingerprint": {
            "type": "string",
            "nullable": true
          },
          "packageHash": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantConfigurationPackageIncludes": {
        "type": "object",
        "properties": {
          "structure": {
            "type": "boolean"
          },
          "setupData": {
            "type": "boolean"
          },
          "transactionData": {
            "type": "boolean"
          },
          "users": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "TenantFieldPackage": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "format": "uuid"
          },
          "stableId": {
            "type": "string",
            "format": "uuid"
          },
          "key": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "columnName": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "dataType": {
            "type": "string",
            "nullable": true
          },
          "maxLength": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "configJson": {
            "type": "string",
            "nullable": true
          },
          "isRequired": {
            "type": "boolean"
          },
          "isUnique": {
            "type": "boolean"
          },
          "isSearchable": {
            "type": "boolean"
          },
          "isSortable": {
            "type": "boolean"
          },
          "isSystem": {
            "type": "boolean"
          },
          "isActive": {
            "type": "boolean"
          },
          "displayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TenantInitialAdminRequest": {
        "type": "object",
        "properties": {
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantLoginRequest": {
        "type": "object",
        "properties": {
          "tenantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "tenantKey": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantNavigationItemPackage": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "format": "uuid"
          },
          "stableId": {
            "type": "string",
            "format": "uuid"
          },
          "sourceParentNavigationItemId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "parentStableId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sourceModuleDefinitionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "moduleStableId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "label": {
            "type": "string",
            "nullable": true
          },
          "normalizedLabel": {
            "type": "string",
            "nullable": true
          },
          "itemType": {
            "type": "string",
            "nullable": true
          },
          "iconName": {
            "type": "string",
            "nullable": true
          },
          "route": {
            "type": "string",
            "nullable": true
          },
          "routeParametersJson": {
            "type": "string",
            "nullable": true
          },
          "filterJson": {
            "type": "string",
            "nullable": true
          },
          "permissionKey": {
            "type": "string",
            "nullable": true
          },
          "openBehavior": {
            "type": "string",
            "nullable": true
          },
          "isVisible": {
            "type": "boolean"
          },
          "isCollapsedByDefault": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TenantRelationshipPackage": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "format": "uuid"
          },
          "stableId": {
            "type": "string",
            "format": "uuid"
          },
          "sourceModuleId": {
            "type": "string",
            "format": "uuid"
          },
          "sourceModuleStableId": {
            "type": "string",
            "format": "uuid"
          },
          "targetModuleId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "targetModuleStableId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "key": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "relationshipType": {
            "type": "string",
            "nullable": true
          },
          "sourceColumnName": {
            "type": "string",
            "nullable": true
          },
          "junctionTableName": {
            "type": "string",
            "nullable": true
          },
          "sourceJunctionColumnName": {
            "type": "string",
            "nullable": true
          },
          "targetJunctionColumnName": {
            "type": "string",
            "nullable": true
          },
          "deleteBehavior": {
            "type": "string",
            "nullable": true
          },
          "isRequired": {
            "type": "boolean"
          },
          "isUnique": {
            "type": "boolean"
          },
          "isSystem": {
            "type": "boolean"
          },
          "isActive": {
            "type": "boolean"
          },
          "displayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TenantRoleAccessPolicyPackage": {
        "type": "object",
        "properties": {
          "sourceModuleDefinitionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "action": {
            "type": "string",
            "nullable": true
          },
          "recordScope": {
            "type": "string",
            "nullable": true
          },
          "filterJson": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantRolePackage": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "normalizedName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isSystem": {
            "type": "boolean"
          },
          "isActive": {
            "type": "boolean"
          },
          "permissionKeys": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "accessPolicies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantRoleAccessPolicyPackage"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantSetupDataModulePackage": {
        "type": "object",
        "properties": {
          "sourceModuleId": {
            "type": "string",
            "format": "uuid"
          },
          "moduleKey": {
            "type": "string",
            "nullable": true
          },
          "tableName": {
            "type": "string",
            "nullable": true
          },
          "records": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantSetupDataRecordPackage"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantSetupDataRecordPackage": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "format": "uuid"
          },
          "values": {
            "type": "object",
            "additionalProperties": {
              "nullable": true
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantThemePreferencePackage": {
        "type": "object",
        "properties": {
          "themeJson": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TenantUniqueRulePackage": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "format": "uuid"
          },
          "stableId": {
            "type": "string",
            "format": "uuid"
          },
          "key": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "fieldColumnNamesJson": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "displayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "UpdateFieldRequest": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "configJson": {
            "type": "string",
            "nullable": true
          },
          "isRequired": {
            "type": "boolean",
            "nullable": true
          },
          "isUnique": {
            "type": "boolean",
            "nullable": true
          },
          "isSearchable": {
            "type": "boolean",
            "nullable": true
          },
          "isSortable": {
            "type": "boolean",
            "nullable": true
          },
          "maxLength": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "displayOrder": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateModuleRequest": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          },
          "iconName": {
            "type": "string",
            "nullable": true
          },
          "isVisibleInMenu": {
            "type": "boolean",
            "nullable": true
          },
          "menuGroup": {
            "type": "string",
            "nullable": true
          },
          "parentModuleId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "menuOrder": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "defaultPageType": {
            "type": "string",
            "nullable": true
          },
          "defaultPageValue": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateRelationshipRequest": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "targetModuleId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sourceColumnName": {
            "type": "string",
            "nullable": true
          },
          "deleteBehavior": {
            "type": "string",
            "nullable": true
          },
          "isRequired": {
            "type": "boolean",
            "nullable": true
          },
          "isUnique": {
            "type": "boolean",
            "nullable": true
          },
          "displayOrder": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTenantBulkWorkersRequest": {
        "type": "object",
        "properties": {
          "bulkWorkerCount": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "UpdateTenantRoleRequest": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "nullable": true
          },
          "permissionKeys": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "accessPolicies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantAccessPolicyRequest"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTenantUserAccessGroupsRequest": {
        "type": "object",
        "properties": {
          "accessGroupIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTenantUserProfileRequest": {
        "type": "object",
        "properties": {
          "profileJson": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTenantUserRoleRequest": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VerifyEmailRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "otp": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "Paste a JWT access token.",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "security": [
    {
      "Bearer": [ ]
    }
  ]
}