{
  "openapi": "3.1.0",
  "x-stoplight": {
    "id": "qiz1rcfqd2jy6"
  },
  "info": {
    "title": "NocoDB v3",
    "version": "",
    "description": "NocoDB API Documentation"
  },
  "x-tagGroups": [
    {
      "name": "Meta APIs",
      "tags": [
        "Workspaces",
        "Bases",
        "Tables",
        "Views",
        "Fields",
        "View Filters",
        "View Sorts",
        "Scripts",
        "API Tokens"
      ]
    },
    {
      "name": "Collaboration APIs",
      "tags": [
        "Workspace Members",
        "Base Members"
      ]
    }
  ],
  "servers": [
    {
      "url": "https://app.nocodb.com"
    }
  ],
  "paths": {
    "/api/v3/meta/workspaces": {
      "get": {
        "summary": "List workspaces",
        "operationId": "workspace-list",
        "description": "Retrieve a list of all workspaces accessible to the user.\n\n**Note**: Workspace APIs are available only with self-hosted **Enterprise** plans and cloud-hosted **Enterprise** plans.",
        "tags": [
          "Workspaces"
        ],
        "responses": {
          "200": {
            "description": "Workspaces retrieved successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspaceV3ListResponse"
                },
                "examples": {
                  "Workspaces List": {
                    "value": {
                      "list": [
                        {
                          "id": "w6dw3fo0",
                          "title": "My Workspace",
                          "org_id": "org123",
                          "created_at": "2025-01-16T06:04:18.000Z",
                          "updated_at": "2025-01-16T06:04:18.000Z"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request."
          },
          "500": {
            "description": "The server encountered an unexpected error while processing the request."
          }
        }
      },
      "post": {
        "summary": "Create workspace",
        "operationId": "workspace-create",
        "description": "Create a new workspace with the specified title and optional organization ID.\n\n**Note**: Workspace APIs are available only with self-hosted **Enterprise** plans and cloud-hosted **Enterprise** plans.",
        "tags": [
          "Workspaces"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkspaceV3Create"
              },
              "examples": {
                "Create Workspace": {
                  "value": {
                    "title": "New Workspace",
                    "org_id": "org123"
                  }
                },
                "Create Workspace (On-prem)": {
                  "value": {
                    "title": "New Workspace"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace created successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspaceV3"
                },
                "examples": {
                  "Created Workspace": {
                    "value": {
                      "id": "w7xyz123",
                      "title": "New Workspace",
                      "org_id": "org123",
                      "created_at": "2025-01-16T06:04:18.000Z",
                      "updated_at": "2025-01-16T06:04:18.000Z"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request."
          },
          "500": {
            "description": "The server encountered an unexpected error while processing the request."
          }
        }
      }
    },
    "/api/v3/meta/workspaces/{workspaceId}": {
      "get": {
        "summary": "Get workspace",
        "operationId": "workspace-read",
        "description": "Retrieve details of a specific workspace.\n\n**Note**: Workspace APIs are available only with self-hosted **Enterprise** plans and cloud-hosted **Enterprise** plans.",
        "tags": [
          "Workspaces"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace."
          },
          {
            "name": "include",
            "in": "query",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "description": "Include additional data. Use 'members' to include workspace member information.",
            "example": "members"
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace retrieved successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspaceV3"
                },
                "examples": {
                  "Workspace": {
                    "value": {
                      "id": "w6dw3fo0",
                      "title": "My Workspace",
                      "org_id": "org123",
                      "created_at": "2025-01-16T06:04:18.000Z",
                      "updated_at": "2025-01-16T06:04:18.000Z"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found."
          },
          "500": {
            "description": "The server encountered an unexpected error while processing the request."
          }
        }
      },
      "patch": {
        "summary": "Update workspace",
        "operationId": "workspace-update",
        "description": "Update workspace details.\n\n**Note**: Workspace APIs are available only with self-hosted **Enterprise** plans and cloud-hosted **Enterprise** plans.",
        "tags": [
          "Workspaces"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkspaceV3Update"
              },
              "examples": {
                "Update Workspace": {
                  "value": {
                    "title": "Updated Workspace Title"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace updated successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspaceV3"
                },
                "examples": {
                  "Updated Workspace": {
                    "value": {
                      "id": "w6dw3fo0",
                      "title": "Updated Workspace Title",
                      "org_id": "org123",
                      "created_at": "2025-01-16T06:04:18.000Z",
                      "updated_at": "2025-01-17T06:04:18.000Z"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request."
          },
          "404": {
            "description": "Workspace not found."
          },
          "500": {
            "description": "The server encountered an unexpected error while processing the request."
          }
        }
      },
      "delete": {
        "summary": "Delete workspace",
        "operationId": "workspace-delete",
        "description": "Delete a workspace.\n\n**Note**: Workspace APIs are available only with self-hosted **Enterprise** plans and cloud-hosted **Enterprise** plans.",
        "tags": [
          "Workspaces"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace deleted successfully."
          },
          "404": {
            "description": "Workspace not found."
          },
          "500": {
            "description": "The server encountered an unexpected error while processing the request."
          }
        }
      }
    },
    "/api/v3/meta/workspaces/{workspaceId}/bases": {
      "get": {
        "summary": "List bases",
        "operationId": "bases-list",
        "description": "Retrieve a list of bases associated with a specific workspace.",
        "tags": [
          "Bases"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful, and a list of bases is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "list": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Base"
                      },
                      "description": "List of bases."
                    }
                  }
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "list": [
                        {
                          "id": "pgfqcp0ocloo1j3",
                          "title": "Getting Started",
                          "meta": {
                            "icon_color": "#36BFFF"
                          },
                          "created_at": "2025-01-16 06:04:18+00:00",
                          "updated_at": "2025-01-16 06:04:18+00:00",
                          "workspace_id": "w6dw3fo0"
                        },
                        {
                          "id": "p1go4ju5jcwqf8v",
                          "title": "Base2",
                          "meta": {
                            "icon_color": "#36BFFF"
                          },
                          "created_at": "2025-01-16 06:04:48+00:00",
                          "updated_at": "2025-01-16 06:04:48+00:00",
                          "workspace_id": "w6dw3fo0"
                        },
                        {
                          "id": "pho1grz3alkye0t",
                          "title": "Base3",
                          "meta": {
                            "icon_color": "#FA8231"
                          },
                          "created_at": "2025-01-16 06:04:52+00:00",
                          "updated_at": "2025-01-16 06:04:52+00:00",
                          "workspace_id": "w6dw3fo0"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "The server encountered an unexpected error while processing the request."
          }
        }
      },
      "post": {
        "summary": "Create base",
        "description": "Create a new base in a specified workspace. The request requires the workspace identifier in the path and base details in the request body.",
        "operationId": "base-create",
        "tags": [
          "Bases"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace where the base will be created."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BaseCreate"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "title": "New Base",
                    "meta": {
                      "icon_color": "#36BFFF"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Base was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Base"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "p7nwavd2gcdkzvd",
                      "title": "New Base",
                      "meta": {
                        "icon_color": "#36BFFF"
                      },
                      "created_at": "2024-12-28 09:52:29+00:00",
                      "updated_at": "2024-12-28 09:52:29+00:00",
                      "workspace_id": "w6dw3fo0"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/workspaces/{workspaceId}?include[]=members": {
      "get": {
        "summary": "List workspace members",
        "operationId": "workspace-members-read",
        "description": "Retrieve details of a specific workspace, including its members.\n\nNotes:\n- To include member details, use the query parameter `include[]=members`.\n- Workspace collaboration APIs are available only with self-hosted Enterprise plans and cloud-hosted Enterprise plans.",
        "tags": [
          "Workspace Members"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace."
          },
          {
            "name": "include",
            "in": "query",
            "required": false,
            "schema": {
              "oneOf": [
                {
                  "type": "string",
                  "enum": [
                    "members"
                  ]
                },
                {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "members"
                    ]
                  }
                }
              ]
            },
            "description": "Include additional data. Use 'members' to include workspace member information.",
            "example": "members"
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace metadata retrieved successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspaceWithMembers"
                },
                "examples": {
                  "Workspace with Members": {
                    "value": {
                      "id": "w6dw3fo0",
                      "title": "My Workspace",
                      "created_at": "2025-01-16T06:04:18.000Z",
                      "updated_at": "2025-01-16T06:04:18.000Z",
                      "individual_members": {
                        "workspace_members": [
                          {
                            "email": "user@example.com",
                            "user_id": "usrL2PNC5o3H4lBEi",
                            "created_at": "2025-01-16T06:04:18.000Z",
                            "updated_at": "2025-01-16T06:04:18.000Z",
                            "workspace_role": "workspace-level-owner"
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found."
          },
          "500": {
            "description": "The server encountered an unexpected error while processing the request."
          }
        }
      }
    },
    "/api/v3/meta/workspaces/{workspaceId}/members": {
      "post": {
        "summary": "Add workspace members",
        "description": "Add new members to a workspace. The request requires the workspace identifier in the path and member details in the request body.\n\nNotes: Workspace collaboration APIs are available only with self-hosted Enterprise plans and cloud-hosted Enterprise plans.",
        "operationId": "workspace-members-invite",
        "tags": [
          "Workspace Members"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace where the members will be added."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkspaceUserCreate"
              },
              "examples": {
                "Example 1": {
                  "value": [
                    {
                      "email": "user@example.com",
                      "workspace_role": "workspace-level-viewer"
                    }
                  ]
                },
                "Example 2": {
                  "value": [
                    {
                      "email": "user1@example.com",
                      "workspace_role": "workspace-level-editor"
                    },
                    {
                      "email": "user2@example.com",
                      "workspace_role": "workspace-level-viewer"
                    }
                  ]
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace members were added successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WorkspaceUser"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "patch": {
        "summary": "Update workspace members",
        "description": "Update roles of existing workspace members. The request requires the workspace identifier in the path and member update details in the request body.\n\nNotes: Workspace collaboration APIs are available only with self-hosted Enterprise plans and cloud-hosted Enterprise plans.",
        "operationId": "workspace-members-update",
        "tags": [
          "Workspace Members"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace where the members will be updated."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkspaceUserUpdate"
              },
              "examples": {
                "Example 1": {
                  "value": [
                    {
                      "user_id": "user123",
                      "workspace_role": "workspace-level-editor"
                    }
                  ]
                },
                "Example 2": {
                  "value": [
                    {
                      "user_id": "user123",
                      "workspace_role": "workspace-level-editor"
                    },
                    {
                      "user_id": "user456",
                      "workspace_role": "workspace-level-viewer"
                    }
                  ]
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace members were updated successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WorkspaceUser"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "delete": {
        "summary": "Delete workspace members",
        "description": "Remove members from a workspace. The request requires the workspace identifier in the path and member details in the request body.\n\nNotes: Workspace collaboration APIs are available only with self-hosted Enterprise plans and cloud-hosted Enterprise plans.",
        "operationId": "workspace-members-delete",
        "tags": [
          "Workspace Members"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the workspace where the members will be removed."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkspaceUserDelete"
              },
              "examples": {
                "Example 1": {
                  "value": [
                    {
                      "user_id": "user123"
                    }
                  ]
                },
                "Example 2": {
                  "value": [
                    {
                      "user_id": "user123"
                    },
                    {
                      "user_id": "user456"
                    }
                  ]
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace members were removed successfully."
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}": {
      "get": {
        "summary": "Get base meta",
        "description": "Retrieve meta details of a specific base using its unique identifier.",
        "operationId": "base-read",
        "tags": [
          "Bases"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier of the base."
          }
        ],
        "responses": {
          "200": {
            "description": "Base meta was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Base"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "p7nwavd2gcdkzvd",
                      "title": "Getting Started",
                      "meta": {
                        "icon_color": "#36BFFF"
                      },
                      "created_at": "2024-12-28 09:52:29+00:00",
                      "updated_at": "2024-12-28 09:52:30+00:00",
                      "workspace_id": "w6dw3fo0",
                      "sources": [
                        {
                          "id": "biv0qz3hgg191s5",
                          "title": "jango_fett",
                          "type": "pg",
                          "is_schema_readonly": false,
                          "is_data_readonly": false,
                          "integration_id": "biv0qz3hgg191s5"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "patch": {
        "summary": "Update base",
        "description": "Update properties of a specific base. You can modify fields such as the title and metadata of the base. The baseId parameter identifies the base to be updated, and the new details must be provided in the request body. At least one of title or meta must be provided.",
        "operationId": "base-update",
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "tags": [
          "Bases"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BaseUpdate"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "title": "Updated Base Title",
                    "meta": {
                      "icon_color": "#36BFFF"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The base was updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Base"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "p7nwavd2gcdkzvd",
                      "title": "Updated Base Title",
                      "meta": {
                        "icon_color": "#36BFFF"
                      },
                      "created_at": "2024-12-28 09:52:29+00:00",
                      "updated_at": "2024-12-28 09:52:29+00:00",
                      "workspace_id": "w6dw3fo0"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "delete": {
        "summary": "Delete base",
        "description": "Delete a specific base using its unique identifier. Once deleted, the base and its associated data cannot be recovered.",
        "operationId": "base-delete",
        "tags": [
          "Bases"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "responses": {
          "204": {
            "description": "Base was deleted."
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{base_id}/tables": {
      "get": {
        "summary": "List tables",
        "description": "Retrieve list of all tables within the specified base.",
        "operationId": "tables-list",
        "tags": [
          "Tables"
        ],
        "parameters": [
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "responses": {
          "200": {
            "description": "List of tables retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TableList"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "list": [
                        {
                          "id": "mq31p5ngbwj5o7u",
                          "title": "Features",
                          "description": "Sample table description.",
                          "base_id": "pgfqcp0ocloo1j3",
                          "workspace_id": "w6dw3fo0"
                        },
                        {
                          "id": "mwmlsgaek7932m4",
                          "title": "Table-1",
                          "meta": {
                            "icon": "🚞"
                          },
                          "base_id": "pgfqcp0ocloo1j3",
                          "workspace_id": "w6dw3fo0"
                        },
                        {
                          "id": "m56zsedzrpz6p9w",
                          "title": "Table-2",
                          "meta": {
                            "icon": "🏞️"
                          },
                          "base_id": "pgfqcp0ocloo1j3",
                          "workspace_id": "w6dw3fo0"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "post": {
        "summary": "Create table",
        "description": "Create a new table within the specified base by providing the required table details in the request body.",
        "operationId": "table-create",
        "parameters": [
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "tags": [
          "Tables"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TableCreate"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "title": "Sample Table20",
                    "description": "Sample Description",
                    "fields": [
                      {
                        "title": "SingleLineText",
                        "type": "SingleLineText",
                        "default_value": "Default Title"
                      },
                      {
                        "title": "LongText",
                        "type": "LongText",
                        "default_value": "Default Description"
                      },
                      {
                        "title": "RichText",
                        "type": "LongText",
                        "default_value": "**Default Description**",
                        "options": {
                          "rich_text": true
                        }
                      },
                      {
                        "title": "UniqueEmail",
                        "type": "Email",
                        "unique": true
                      },
                      {
                        "title": "Email",
                        "type": "Email",
                        "default_value": "user@nocodb.com",
                        "options": {
                          "validation": true
                        }
                      },
                      {
                        "title": "URL",
                        "type": "URL",
                        "default_value": "https://nocodb.com",
                        "options": {
                          "validation": true
                        }
                      },
                      {
                        "title": "Phone",
                        "type": "PhoneNumber",
                        "default_value": "1234567890",
                        "options": {
                          "validation": true
                        }
                      },
                      {
                        "title": "Number",
                        "type": "Number",
                        "default_value": "34",
                        "options": {
                          "locale_string": true
                        }
                      },
                      {
                        "title": "Decimal",
                        "type": "Decimal",
                        "default_value": "34.56",
                        "options": {
                          "precision": 2
                        }
                      },
                      {
                        "title": "Currency",
                        "type": "Currency",
                        "default_value": "34.56",
                        "options": {
                          "locale": "en-US",
                          "code": "USD"
                        }
                      },
                      {
                        "title": "Percent",
                        "type": "Percent",
                        "default_value": "0.34",
                        "options": {
                          "show_as_progress": true
                        }
                      },
                      {
                        "title": "Date",
                        "type": "Date",
                        "default_value": "2021-09-30",
                        "options": {
                          "date_format": "YYYY-MM-DD"
                        }
                      },
                      {
                        "title": "DateTime",
                        "type": "DateTime",
                        "default_value": "2021-09-30 12:34:56",
                        "options": {
                          "date_format": "YYYY-MM-DD HH:mm:ss",
                          "time_format": "HH:mm:ss",
                          "12hr_format": true
                        }
                      },
                      {
                        "title": "SingleSelect",
                        "type": "SingleSelect",
                        "default_value": "Option 1",
                        "options": {
                          "choices": [
                            {
                              "title": "Option 1",
                              "color": "#36BFFF"
                            },
                            {
                              "title": "Option 2",
                              "color": "#36BFFF"
                            }
                          ]
                        }
                      },
                      {
                        "title": "MultiSelect",
                        "type": "MultiSelect",
                        "default_value": "[\"Option 1\"]",
                        "options": {
                          "choices": [
                            {
                              "title": "Option 1",
                              "color": "#36BFFF"
                            },
                            {
                              "title": "Option 2",
                              "color": "#36BFFF"
                            }
                          ]
                        }
                      },
                      {
                        "title": "Checkbox",
                        "type": "Checkbox",
                        "default_value": true,
                        "options": {
                          "icon": "heart",
                          "color": "#36BFFF"
                        }
                      },
                      {
                        "title": "Rating",
                        "type": "Rating",
                        "default_value": "3",
                        "options": {
                          "icon": "heart",
                          "max_value": 5,
                          "color": "#36BFFF"
                        }
                      },
                      {
                        "title": "Attachment",
                        "type": "Attachment"
                      },
                      {
                        "title": "JSON",
                        "type": "JSON",
                        "default_value": "{\"key\": \"value\"}"
                      },
                      {
                        "title": "User",
                        "type": "User",
                        "default_value": "uskfsbdfved8c03z",
                        "options": {
                          "allow_multiple_users": true
                        }
                      },
                      {
                        "title": "CreatedTime",
                        "type": "CreatedTime"
                      },
                      {
                        "title": "CreatedBy",
                        "type": "CreatedBy"
                      },
                      {
                        "title": "UpdatedBy",
                        "type": "LastModifiedBy"
                      },
                      {
                        "title": "UpdatedTime",
                        "type": "LastModifiedTime"
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Table created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Table"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "mo0tpvd1hjvfbrx",
                      "title": "Sample Table",
                      "description": "Sample Description",
                      "source_id": "bzyr9k9ui4oudwx",
                      "base_id": "p13yxf5plzg73jm",
                      "workspace_id": "wsdkr9ub",
                      "display_field_id": "c455mde7px2yidt",
                      "fields": [
                        {
                          "id": "c455mde7px2yidt",
                          "title": "SingleLineText",
                          "type": "SingleLineText",
                          "default_value": "Default Title"
                        },
                        {
                          "id": "c9zh8dmi7710mao",
                          "title": "LongText",
                          "type": "LongText",
                          "default_value": "Default Description"
                        },
                        {
                          "id": "c57o8n0cbyss84l",
                          "title": "RichText",
                          "type": "LongText",
                          "default_value": "**Default Description**",
                          "options": {
                            "rich_text": true
                          }
                        },
                        {
                          "id": "cnl62kaut6jp5rg",
                          "title": "Email",
                          "type": "Email",
                          "default_value": "user@nocodb.com",
                          "options": {
                            "validation": true
                          }
                        },
                        {
                          "id": "cx4mpq7zm4offr8",
                          "title": "URL",
                          "type": "URL",
                          "default_value": "https://nocodb.com",
                          "options": {
                            "validation": true
                          }
                        },
                        {
                          "id": "cx7i90tmjjbh50g",
                          "title": "Phone",
                          "type": "PhoneNumber",
                          "default_value": "1234567890",
                          "options": {
                            "validation": true
                          }
                        },
                        {
                          "id": "chcb0o99ricceek",
                          "title": "Number",
                          "type": "Number",
                          "default_value": "34",
                          "options": {
                            "locale_string": true
                          }
                        },
                        {
                          "id": "csumykirz5i02pg",
                          "title": "Decimal",
                          "type": "Decimal",
                          "default_value": "34.56",
                          "options": {
                            "precision": 2
                          }
                        },
                        {
                          "id": "cs1tvrdevhwf4r2",
                          "title": "Currency",
                          "type": "Currency",
                          "default_value": "34.56",
                          "options": {
                            "locale": "en-US",
                            "code": "USD"
                          }
                        },
                        {
                          "id": "crpqkxsq8d1ljgz",
                          "title": "Percent",
                          "type": "Percent",
                          "default_value": "0.34",
                          "options": {
                            "show_as_progress": true
                          }
                        },
                        {
                          "id": "crnzx3dtlnjjr5z",
                          "title": "Date",
                          "type": "Date",
                          "default_value": "2021-09-30",
                          "options": {
                            "date_format": "YYYY-MM-DD"
                          }
                        },
                        {
                          "id": "c26ypextdeug3qd",
                          "title": "DateTime",
                          "type": "DateTime",
                          "default_value": "2021-09-30 12:34:56",
                          "options": {
                            "date_format": "YYYY-MM-DD HH:mm:ss",
                            "time_format": "HH:mm:ss",
                            "12hr_format": true
                          }
                        },
                        {
                          "id": "cyllf65uowcvw1b",
                          "title": "SingleSelect",
                          "type": "SingleSelect",
                          "default_value": "Option 1",
                          "options": {
                            "choices": [
                              {
                                "title": "Option 1",
                                "color": "#36BFFF",
                                "id": "spd7exnmjz5uch8"
                              },
                              {
                                "title": "Option 2",
                                "color": "#36BFFF",
                                "id": "sytp5rjfte78p8k"
                              }
                            ]
                          }
                        },
                        {
                          "id": "clhlbmjw6dpz9ts",
                          "title": "MultiSelect",
                          "type": "MultiSelect",
                          "default_value": "[\"Option 1\"]",
                          "options": {
                            "choices": [
                              {
                                "title": "Option 1",
                                "color": "#36BFFF",
                                "id": "ssig2048lvr9puw"
                              },
                              {
                                "title": "Option 2",
                                "color": "#36BFFF",
                                "id": "sz7etgbnhm84e9w"
                              }
                            ]
                          }
                        },
                        {
                          "id": "c86vpwa0qzexf8i",
                          "title": "Checkbox",
                          "type": "Checkbox",
                          "default_value": "true",
                          "options": {
                            "color": "#36BFFF",
                            "icon": "heart"
                          }
                        },
                        {
                          "id": "c6h2p5nmlmynbiv",
                          "title": "Rating",
                          "type": "Rating",
                          "default_value": "3",
                          "options": {
                            "max_value": 5,
                            "color": "#36BFFF",
                            "icon": "heart"
                          }
                        },
                        {
                          "id": "cqh7kupxqaw7itc",
                          "title": "Attachment",
                          "type": "Attachment"
                        },
                        {
                          "id": "cp1d7w6surl8juh",
                          "title": "JSON",
                          "type": "JSON",
                          "default_value": "{\"key\": \"value\"}"
                        },
                        {
                          "id": "cebdv0v3uy7tyiy",
                          "title": "User",
                          "type": "User",
                          "default_value": "uskfsbdfved8c03z",
                          "options": {
                            "allow_multiple_users": true
                          }
                        },
                        {
                          "id": "cb4vptiuveysb5a",
                          "title": "Links",
                          "type": "Links",
                          "options": {
                            "relation_type": "mm",
                            "related_table_id": "mnkgbmqwkls36fg"
                          }
                        },
                        {
                          "id": "cavokt1gde5dy2m",
                          "title": "id",
                          "type": "ID"
                        },
                        {
                          "id": "csiwamkqrm08slv",
                          "title": "CreatedTime",
                          "type": "CreatedTime"
                        },
                        {
                          "id": "cczd61fh2m0mn8a",
                          "title": "CreatedBy",
                          "type": "CreatedBy"
                        },
                        {
                          "id": "chshjlwe59glff7",
                          "title": "UpdatedBy",
                          "type": "LastModifiedBy"
                        },
                        {
                          "id": "ctlyu6sbs77whvj",
                          "title": "UpdatedTime",
                          "type": "LastModifiedTime"
                        }
                      ],
                      "views": [
                        {
                          "id": "vwuke35pn7bcoqmb",
                          "title": "Sample Table",
                          "view_type": "grid"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/tables/{tableId}": {
      "get": {
        "summary": "Get table schema",
        "description": "Retrieve the details of a specific table.",
        "operationId": "table-read",
        "tags": [
          "Tables"
        ],
        "parameters": [
          {
            "name": "tableId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the table."
          },
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "responses": {
          "200": {
            "description": "Table details are retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Table"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "mo0tpvd1hjvfbrx",
                      "title": "Sample Table",
                      "description": "Sample Description",
                      "source_id": "bzyr9k9ui4oudwx",
                      "base_id": "p13yxf5plzg73jm",
                      "workspace_id": "wsdkr9ub",
                      "display_field_id": "c455mde7px2yidt",
                      "fields": [
                        {
                          "id": "c455mde7px2yidt",
                          "title": "SingleLineText",
                          "type": "SingleLineText",
                          "default_value": "Default Title"
                        },
                        {
                          "id": "c9zh8dmi7710mao",
                          "title": "LongText",
                          "type": "LongText",
                          "default_value": "Default Description"
                        },
                        {
                          "id": "c57o8n0cbyss84l",
                          "title": "RichText",
                          "type": "LongText",
                          "default_value": "**Default Description**",
                          "options": {
                            "rich_text": true
                          }
                        },
                        {
                          "id": "cnl62kaut6jp5rg",
                          "title": "Email",
                          "type": "Email",
                          "default_value": "user@nocodb.com",
                          "options": {
                            "validation": true
                          }
                        },
                        {
                          "id": "cx4mpq7zm4offr8",
                          "title": "URL",
                          "type": "URL",
                          "default_value": "https://nocodb.com",
                          "options": {
                            "validation": true
                          }
                        },
                        {
                          "id": "cx7i90tmjjbh50g",
                          "title": "Phone",
                          "type": "PhoneNumber",
                          "default_value": "1234567890",
                          "options": {
                            "validation": true
                          }
                        },
                        {
                          "id": "chcb0o99ricceek",
                          "title": "Number",
                          "type": "Number",
                          "default_value": "34",
                          "options": {
                            "locale_string": true
                          }
                        },
                        {
                          "id": "csumykirz5i02pg",
                          "title": "Decimal",
                          "type": "Decimal",
                          "default_value": "34.56",
                          "options": {
                            "precision": 2
                          }
                        },
                        {
                          "id": "cs1tvrdevhwf4r2",
                          "title": "Currency",
                          "type": "Currency",
                          "default_value": "34.56",
                          "options": {
                            "locale": "en-US",
                            "code": "USD"
                          }
                        },
                        {
                          "id": "crpqkxsq8d1ljgz",
                          "title": "Percent",
                          "type": "Percent",
                          "default_value": "0.34",
                          "options": {
                            "show_as_progress": true
                          }
                        },
                        {
                          "id": "crnzx3dtlnjjr5z",
                          "title": "Date",
                          "type": "Date",
                          "default_value": "2021-09-30",
                          "options": {
                            "date_format": "YYYY-MM-DD"
                          }
                        },
                        {
                          "id": "c26ypextdeug3qd",
                          "title": "DateTime",
                          "type": "DateTime",
                          "default_value": "2021-09-30 12:34:56",
                          "options": {
                            "date_format": "YYYY-MM-DD HH:mm:ss",
                            "time_format": "HH:mm:ss",
                            "12hr_format": true
                          }
                        },
                        {
                          "id": "cyllf65uowcvw1b",
                          "title": "SingleSelect",
                          "type": "SingleSelect",
                          "default_value": "Option 1",
                          "options": {
                            "choices": [
                              {
                                "title": "Option 1",
                                "color": "#36BFFF",
                                "id": "spd7exnmjz5uch8"
                              },
                              {
                                "title": "Option 2",
                                "color": "#36BFFF",
                                "id": "sytp5rjfte78p8k"
                              }
                            ]
                          }
                        },
                        {
                          "id": "clhlbmjw6dpz9ts",
                          "title": "MultiSelect",
                          "type": "MultiSelect",
                          "default_value": "[\"Option 1\"]",
                          "options": {
                            "choices": [
                              {
                                "title": "Option 1",
                                "color": "#36BFFF",
                                "id": "ssig2048lvr9puw"
                              },
                              {
                                "title": "Option 2",
                                "color": "#36BFFF",
                                "id": "sz7etgbnhm84e9w"
                              }
                            ]
                          }
                        },
                        {
                          "id": "c86vpwa0qzexf8i",
                          "title": "Checkbox",
                          "type": "Checkbox",
                          "default_value": "true",
                          "options": {
                            "color": "#36BFFF",
                            "icon": "heart"
                          }
                        },
                        {
                          "id": "c6h2p5nmlmynbiv",
                          "title": "Rating",
                          "type": "Rating",
                          "default_value": "3",
                          "options": {
                            "max_value": 5,
                            "color": "#36BFFF",
                            "icon": "heart"
                          }
                        },
                        {
                          "id": "cqh7kupxqaw7itc",
                          "title": "Attachment",
                          "type": "Attachment"
                        },
                        {
                          "id": "cp1d7w6surl8juh",
                          "title": "JSON",
                          "type": "JSON",
                          "default_value": "{\"key\": \"value\"}"
                        },
                        {
                          "id": "cebdv0v3uy7tyiy",
                          "title": "User",
                          "type": "User",
                          "default_value": "uskfsbdfved8c03z",
                          "options": {
                            "allow_multiple_users": true
                          }
                        },
                        {
                          "id": "cb4vptiuveysb5a",
                          "title": "Links",
                          "type": "Links",
                          "options": {
                            "relation_type": "mm",
                            "related_table_id": "mnkgbmqwkls36fg"
                          }
                        },
                        {
                          "id": "cavokt1gde5dy2m",
                          "title": "id",
                          "type": "ID"
                        },
                        {
                          "id": "csiwamkqrm08slv",
                          "title": "CreatedTime",
                          "type": "CreatedTime"
                        },
                        {
                          "id": "cczd61fh2m0mn8a",
                          "title": "CreatedBy",
                          "type": "CreatedBy"
                        },
                        {
                          "id": "chshjlwe59glff7",
                          "title": "UpdatedBy",
                          "type": "LastModifiedBy"
                        },
                        {
                          "id": "ctlyu6sbs77whvj",
                          "title": "UpdatedTime",
                          "type": "LastModifiedTime"
                        }
                      ],
                      "views": [
                        {
                          "id": "vwuke35pn7bcoqmb",
                          "title": "Sample Table",
                          "view_type": "grid"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Table not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "patch": {
        "summary": "Update table",
        "description": "Update the details of a specific table.",
        "operationId": "table-update",
        "tags": [
          "Tables"
        ],
        "parameters": [
          {
            "name": "tableId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the table."
          },
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TableUpdate"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "title": "Updated Table Title",
                    "description": "Updated Description",
                    "display_field_id": "c455mde7px2yidt",
                    "meta": {
                      "icon": "🚞"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Table meta updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Table"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "m0nibecfkcfsz2x",
                      "title": "Features",
                      "meta": {
                        "icon": "🚞"
                      },
                      "source_id": "bbtx6pvj7b8yszy",
                      "base_id": "pn9mmowpquxj60w",
                      "workspace_id": "w6wqiisd",
                      "views": [
                        {
                          "id": "vwuke35pn7bcoqmb",
                          "title": "Features",
                          "view_type": "grid"
                        }
                      ],
                      "display_field_id": "cb51p6e2r4gpxpv",
                      "fields": [
                        {
                          "id": "cz0jslmqdvcv68n",
                          "title": "Id",
                          "type": "ID"
                        },
                        {
                          "id": "cb51p6e2r4gpxpv",
                          "title": "Title",
                          "type": "SingleLineText"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "404": {
            "description": "Table not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "delete": {
        "summary": "Delete table",
        "description": "Delete a specific table.",
        "operationId": "table-delete",
        "tags": [
          "Tables"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "tableId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the table."
          }
        ],
        "responses": {
          "204": {
            "description": "Table deleted successfully."
          },
          "404": {
            "description": "Table not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/tables/{tableId}/views": {
      "get": {
        "summary": "List views",
        "operationId": "views-list",
        "tags": [
          "Views"
        ],
        "description": "Retrieve a list of all views for a specific table.\n\n**Note**: View APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "tableId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the table."
          }
        ],
        "responses": {
          "200": {
            "description": "List of views retrieved successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ViewList"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "list": [
                        {
                          "id": "vwpwk5v4urgbu85g",
                          "table_id": "mrc5unwjdov67vr",
                          "title": "Grid View",
                          "type": "grid",
                          "lock_type": "collaborative",
                          "created_at": "2025-06-26 15:02:56+00:00",
                          "updated_at": "2025-06-26 15:36:25+00:00"
                        },
                        {
                          "id": "vwfqa5qnmcaxt9yp",
                          "table_id": "mrc5unwjdov67vr",
                          "title": "Grid View 2",
                          "type": "grid",
                          "lock_type": "collaborative",
                          "created_at": "2025-06-26 15:40:01+00:00",
                          "updated_at": "2025-06-26 15:40:48+00:00",
                          "description": "Grid view with some description",
                          "created_by": "usq6o3vavwf0twzr"
                        },
                        {
                          "id": "vwx2x5ietbis99xg",
                          "table_id": "mrc5unwjdov67vr",
                          "title": "Grid Group By",
                          "type": "grid",
                          "lock_type": "collaborative",
                          "created_at": "2025-06-26 15:40:41+00:00",
                          "updated_at": "2025-06-26 15:40:41+00:00",
                          "created_by": "usq6o3vavwf0twzr"
                        },
                        {
                          "id": "vwjctk8vdhbhxtd4",
                          "table_id": "mrc5unwjdov67vr",
                          "title": "Gallery View",
                          "type": "gallery",
                          "lock_type": "collaborative",
                          "created_at": "2025-06-26 15:45:30+00:00",
                          "updated_at": "2025-06-26 15:45:30+00:00",
                          "created_by": "usq6o3vavwf0twzr"
                        },
                        {
                          "id": "vwnyxj93jfswla29",
                          "table_id": "mrc5unwjdov67vr",
                          "title": "Kanban View",
                          "type": "kanban",
                          "lock_type": "collaborative",
                          "created_at": "2025-06-26 15:45:40+00:00",
                          "updated_at": "2025-06-26 15:45:40+00:00",
                          "created_by": "usq6o3vavwf0twzr"
                        },
                        {
                          "id": "vw7hwhx551tbr44z",
                          "table_id": "mrc5unwjdov67vr",
                          "title": "Calendar View",
                          "type": "calendar",
                          "lock_type": "collaborative",
                          "created_at": "2025-06-26 15:45:47+00:00",
                          "updated_at": "2025-06-26 15:45:47+00:00",
                          "created_by": "usq6o3vavwf0twzr"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Table not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "post": {
        "summary": "Create view",
        "description": "Create a view for table.\n\n**Note**: View APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "view-create",
        "tags": [
          "Views"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "tableId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the table."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ViewCreate"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "title": "Created View Title",
                    "type": "grid"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "View meta updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/View"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "vw5rakj00x28vdht",
                      "table_id": "mrc5unwjdov67vr",
                      "title": "myFilterView2",
                      "type": "grid",
                      "lock_type": "collaborative",
                      "created_at": "2025-08-13 07:36:03+00:00",
                      "updated_at": "2025-08-13 07:36:03+00:00",
                      "created_by": "uspf4n7qlp704qrj",
                      "fields": [
                        {
                          "field_id": "csd3tnc2t8ccbw2",
                          "show": true
                        },
                        {
                          "field_id": "cwy23c7tglso0zp",
                          "show": true
                        },
                        {
                          "field_id": "clljtnye0his0wv",
                          "show": true
                        },
                        {
                          "field_id": "cmbwwvp0mhyw6uv",
                          "show": true
                        },
                        {
                          "field_id": "c1kzoujfb6on9ba",
                          "show": true
                        },
                        {
                          "field_id": "c711uewjhfevrjj",
                          "show": true
                        },
                        {
                          "field_id": "cjgsfkb3307h4gj",
                          "show": true
                        },
                        {
                          "field_id": "ck6lswg0z3h6ase",
                          "show": true
                        },
                        {
                          "field_id": "cxlnws1ojnocsr3",
                          "show": true
                        }
                      ],
                      "options": {
                        "row_height": "short"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "404": {
            "description": "Table not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/tables/{tableId}/fields": {
      "post": {
        "summary": "Create field",
        "description": "Create a new field within the specified table.",
        "operationId": "field-create",
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "tableId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the table."
          },
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateField"
              },
              "examples": {
                "SingleLineText / LongText": {
                  "value": {
                    "title": "New Field",
                    "type": "SingleLineText",
                    "default_value": "Default Value",
                    "description": "Sample Description"
                  }
                },
                "RichText": {
                  "value": {
                    "title": "New Field",
                    "type": "LongText",
                    "default_value": "Default Value",
                    "description": "Sample Description",
                    "options": {
                      "rich_text": true
                    }
                  }
                },
                "Email / URL / PhoneNumber": {
                  "value": {
                    "title": "New Field",
                    "type": "Email",
                    "default_value": "user@nocodb.com",
                    "description": "Sample Description",
                    "options": {
                      "validation": true
                    }
                  }
                },
                "Number / Decimal": {
                  "value": {
                    "title": "New Field",
                    "type": "Number",
                    "default_value": "23",
                    "description": "Sample Description",
                    "options": {
                      "precision": "4"
                    }
                  }
                },
                "Unique Constraint": {
                  "value": {
                    "title": "Unique Email",
                    "type": "Email",
                    "unique": true,
                    "description": "Email field with unique constraint - no duplicate values allowed"
                  },
                  "summary": "Example of creating a field with unique constraint"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Field was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateField"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/fields/{fieldId}": {
      "get": {
        "summary": "Get field",
        "description": "Retrieve the details of a specific field.",
        "operationId": "field-read",
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the field being updated."
          }
        ],
        "responses": {
          "200": {
            "description": "Field details are retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Field"
                }
              }
            }
          },
          "404": {
            "description": "Field not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "patch": {
        "summary": "Update field",
        "description": "Update the details of a specific field.",
        "operationId": "field-update",
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the field being updated."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FieldUpdate"
              },
              "examples": {
                "SingleLineText / LongText": {
                  "value": {
                    "title": "New Field",
                    "type": "SingleLineText",
                    "default_value": "Default Value",
                    "description": "Sample Description"
                  }
                },
                "RichText": {
                  "value": {
                    "title": "New Field",
                    "type": "LongText",
                    "default_value": "Default Value",
                    "description": "Sample Description",
                    "options": {
                      "rich_text": true
                    }
                  }
                },
                "Email / URL / PhoneNumber": {
                  "value": {
                    "title": "New Field",
                    "type": "Email",
                    "default_value": "user@nocodb.com",
                    "description": "Sample Description",
                    "options": {
                      "validation": true
                    }
                  }
                },
                "Number / Decimal": {
                  "value": {
                    "title": "New Field",
                    "type": "Number",
                    "default_value": "23",
                    "description": "Sample Description",
                    "options": {
                      "precision": "4"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Field was updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateField"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "delete": {
        "summary": "Delete field",
        "description": "Delete a specific field.",
        "operationId": "field-delete",
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the field."
          },
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "responses": {
          "204": {
            "description": "Field was deleted."
          },
          "404": {
            "description": "Field not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/views/{viewId}": {
      "get": {
        "summary": "Get view schema",
        "description": "Retrieve the details of a specific view.\n\n**Note**: View APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "view-read",
        "tags": [
          "Views"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "viewId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the view."
          }
        ],
        "responses": {
          "200": {
            "description": "View details are retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/View"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "vw5rakj00x28vdht",
                      "table_id": "mrc5unwjdov67vr",
                      "title": "myFilterView2",
                      "type": "grid",
                      "lock_type": "collaborative",
                      "created_at": "2025-08-13 07:36:03+00:00",
                      "updated_at": "2025-08-13 07:36:03+00:00",
                      "created_by": "uspf4n7qlp704qrj",
                      "fields": [
                        {
                          "field_id": "csd3tnc2t8ccbw2",
                          "show": true
                        },
                        {
                          "field_id": "cwy23c7tglso0zp",
                          "show": true
                        },
                        {
                          "field_id": "clljtnye0his0wv",
                          "show": true
                        },
                        {
                          "field_id": "cmbwwvp0mhyw6uv",
                          "show": true
                        },
                        {
                          "field_id": "c1kzoujfb6on9ba",
                          "show": true
                        },
                        {
                          "field_id": "c711uewjhfevrjj",
                          "show": true
                        },
                        {
                          "field_id": "cjgsfkb3307h4gj",
                          "show": true
                        },
                        {
                          "field_id": "ck6lswg0z3h6ase",
                          "show": true
                        },
                        {
                          "field_id": "cxlnws1ojnocsr3",
                          "show": true
                        }
                      ],
                      "options": {
                        "row_height": "short"
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "View not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "patch": {
        "summary": "Update view",
        "description": "Update the details of a specific view. The request body should contain the fields to be updated. Fields not included in the request body will remain unchanged. Fields included will overwrite the existing values. There is no provision for partial updates of fields, sort or filter using this PATCH request.\n\n**Note**: View APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "view-update",
        "tags": [
          "Views"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "viewId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the view."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ViewUpdate"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "title": "Updated View Title"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "View meta updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/View"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "vw5rakj00x28vdht",
                      "table_id": "mrc5unwjdov67vr",
                      "title": "myFilterView2",
                      "type": "grid",
                      "lock_type": "collaborative",
                      "created_at": "2025-08-13 07:36:03+00:00",
                      "updated_at": "2025-08-13 07:36:03+00:00",
                      "created_by": "uspf4n7qlp704qrj",
                      "fields": [
                        {
                          "field_id": "csd3tnc2t8ccbw2",
                          "show": true
                        },
                        {
                          "field_id": "cwy23c7tglso0zp",
                          "show": true
                        },
                        {
                          "field_id": "clljtnye0his0wv",
                          "show": true
                        },
                        {
                          "field_id": "cmbwwvp0mhyw6uv",
                          "show": true
                        },
                        {
                          "field_id": "c1kzoujfb6on9ba",
                          "show": true
                        },
                        {
                          "field_id": "c711uewjhfevrjj",
                          "show": true
                        },
                        {
                          "field_id": "cjgsfkb3307h4gj",
                          "show": true
                        },
                        {
                          "field_id": "ck6lswg0z3h6ase",
                          "show": true
                        },
                        {
                          "field_id": "cxlnws1ojnocsr3",
                          "show": true
                        }
                      ],
                      "options": {
                        "row_height": "short"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "404": {
            "description": "Table not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "delete": {
        "summary": "Delete view",
        "description": "Delete a specific view.\n\n**Note**: View APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "view-delete",
        "tags": [
          "Views"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "viewId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the view."
          }
        ],
        "responses": {
          "204": {
            "description": "View deleted successfully."
          },
          "404": {
            "description": "View not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/views/{viewId}/filters": {
      "get": {
        "summary": "List view filters",
        "description": "Retrieve a list of all filters and groups for a specific view.",
        "operationId": "view-filters-list",
        "tags": [
          "View Filters"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "viewId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the view."
          }
        ],
        "responses": {
          "200": {
            "description": "List of filters and groups retrieved successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FilterListResponse"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "list": [
                        {
                          "id": "root",
                          "group_operator": "AND",
                          "filters": [
                            {
                              "id": "fiml6n8qzam4wmvl",
                              "field_id": "c580jyan91qwrbx",
                              "operator": "eq",
                              "value": "Midmarket"
                            },
                            {
                              "id": "fi3egizdiubzfo9u",
                              "group_operator": "OR",
                              "filters": [
                                {
                                  "id": "fih624x0srskaf1i",
                                  "field_id": "caymvuj3az60wyk",
                                  "operator": "eq",
                                  "value": "Mexico"
                                },
                                {
                                  "id": "fi1pjkf0f88r8s6l",
                                  "field_id": "caymvuj3az60wyk",
                                  "operator": "eq",
                                  "value": "Canada"
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "View not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "post": {
        "summary": "Create filter",
        "description": "Create a new filter or filter-group for a specific view.",
        "operationId": "view-filter-create",
        "tags": [
          "View Filters"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "viewId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the view."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FilterCreateUpdate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Filter or group created successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FilterCreateUpdate"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "put": {
        "summary": "Replace filter",
        "description": "Replace filters for a specific view. All the existing filters will be overwritten with the new filters specified in this request.",
        "operationId": "view-filter-replace",
        "tags": [
          "View Filters"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "viewId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the view. It overwrites all existing filters."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FilterCreateUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Filter or group updated successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FilterCreateUpdate"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "404": {
            "description": "Filter or group not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/filters/{filterId}": {
      "patch": {
        "summary": "Update filter",
        "description": "Update the details of an existing filter or group.",
        "operationId": "view-filter-update",
        "tags": [
          "View Filters"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "filterId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the filter or group."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FilterCreateUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Filter or group updated successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FilterCreateUpdate"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "404": {
            "description": "Filter or group not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "delete": {
        "summary": "Delete filter",
        "description": "Delete an existing filter or filter-group.",
        "operationId": "view-filter-delete",
        "tags": [
          "View Filters"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "filterId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the filter or group."
          }
        ],
        "responses": {
          "204": {
            "description": "Filter or group deleted successfully."
          },
          "404": {
            "description": "Filter or group not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/views/{viewId}/sorts": {
      "get": {
        "summary": "List view sorts",
        "operationId": "view-sorts-list",
        "tags": [
          "View Sorts"
        ],
        "description": "Retrieve a list of all sorts for a specific view.",
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "viewId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the view."
          }
        ],
        "responses": {
          "200": {
            "description": "List of sorts retrieved successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SortListResponse"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "list": [
                        {
                          "id": "so3o7c6po0tktghc",
                          "field_id": "c580jyan91qwrbx",
                          "order": "asc"
                        },
                        {
                          "id": "so1n4x4w7dou8p0v",
                          "field_id": "caymvuj3az60wyk",
                          "order": "desc"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "View not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "post": {
        "summary": "Add sort",
        "operationId": "view-sort-create",
        "description": "Create a new sort for a specific view.",
        "tags": [
          "View Sorts"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "viewId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the view."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SortCreate"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "field_id": "c580jyan91qwrbx",
                    "order": "asc"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Sort created successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sort"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}/sorts/{sortId}": {
      "delete": {
        "summary": "Delete sort",
        "description": "Delete an existing sort.",
        "operationId": "view-sort-delete",
        "tags": [
          "View Sorts"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "sortId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the sort."
          }
        ],
        "responses": {
          "204": {
            "description": "Sort deleted successfully."
          },
          "404": {
            "description": "Sort not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "patch": {
        "summary": "Update sort",
        "description": "Update the details of an existing sort.",
        "operationId": "view-sort-update",
        "tags": [
          "View Sorts"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          },
          {
            "name": "sortId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the sort."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SortUpdate"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "id": "so3o7c6po0tktghc",
                    "order": "desc"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Sort updated successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sort"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body."
          },
          "404": {
            "description": "Sort not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{baseId}?include[]=members": {
      "get": {
        "summary": "List base members",
        "description": "Retrieve all details of a specific base, including its members.\n\nNotes: Base collaboration APIs are available only with self-hosted Enterprise plans and cloud-hosted Enterprise plans.",
        "operationId": "base-members-list",
        "tags": [
          "Base Members"
        ],
        "parameters": [
          {
            "name": "baseId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier of the base."
          }
        ],
        "responses": {
          "200": {
            "description": "Base meta with members & their access information was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseWithMembers"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "p7nwavd2gcdkzvd",
                      "title": "Getting Started",
                      "meta": {
                        "icon_color": "#36BFFF"
                      },
                      "created_at": "2024-12-28 09:52:29+00:00",
                      "updated_at": "2024-12-28 09:52:30+00:00",
                      "workspace_id": "w6dw3fo0",
                      "individual_members": {
                        "base_members": [
                          {
                            "email": "user@nocodb.com",
                            "user_id": "usobpjptvj3m5nu3",
                            "created_at": "2025-08-12 11:17:47+00:00",
                            "updated_at": "2025-08-12 11:17:47+00:00",
                            "base_role": "owner",
                            "workspace_role": "workspace-level-owner"
                          }
                        ],
                        "workspace_members": [
                          {
                            "user_id": "ussbqtx9b2qjejht",
                            "created_at": "2025-08-12 11:18:27+00:00",
                            "updated_at": "2025-08-12 11:18:27+00:00",
                            "email": "editor@nocodb.com",
                            "display_name": "",
                            "workspace_role": "workspace-level-editor"
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{base_id}/members": {
      "post": {
        "summary": "Invite base members",
        "description": "Invite new members to a specific base using their User ID or Email address.\n\nNotes: Base collaboration APIs are available only with self-hosted Enterprise plans and cloud-hosted Enterprise plans.",
        "operationId": "base-members-invite",
        "parameters": [
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "tags": [
          "Base Members"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BaseMemberCreate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Users invited successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BaseMember"
                  },
                  "description": "List of successfully invited users."
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body or parameters."
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "patch": {
        "summary": "Update base members",
        "description": "Update roles for existing members in a base.\n\nNotes: Base collaboration APIs are available only with self-hosted Enterprise plans and cloud-hosted Enterprise plans.",
        "operationId": "base-members-update",
        "parameters": [
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "tags": [
          "Base Members"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BaseMemberUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Users updated successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BaseMember"
                  },
                  "description": "List of successfully updated users."
                }
              }
            }
          },
          "400": {
            "description": "Invalid request body or parameters."
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "delete": {
        "summary": "Delete base members",
        "description": "Remove members from a specific base using their IDs.\n\nNotes: Base collaboration APIs are available only with self-hosted Enterprise plans and cloud-hosted Enterprise plans.",
        "operationId": "base-members-delete",
        "parameters": [
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "tags": [
          "Base Members"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BaseMemberDelete"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Users deleted successfully."
          },
          "400": {
            "description": "Invalid request body or parameters."
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      }
    },
    "/api/v3/meta/bases/{base_id}/scripts": {
      "get": {
        "summary": "List Scripts",
        "description": "Retrieve a list of scripts associated with a specific base.\n\n**Note**: Script APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "scripts-list",
        "tags": [
          "Scripts"
        ],
        "parameters": [
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "responses": {
          "200": {
            "description": "List of scripts retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScriptList"
                },
                "examples": {
                  "scriptList": {
                    "value": {
                      "list": [
                        {
                          "id": "scrn8jzaljnw05eu1",
                          "title": "Validate Emails",
                          "description": "Validates email addresses in the 'Email' field of the 'Contacts' table.",
                          "base_id": "pgfqcp0ocloo1j3",
                          "workspace_id": "w6dw3fo0"
                        },
                        {
                          "id": "scrna4t7xkmq92bf8",
                          "title": "Normalize Phone Numbers",
                          "description": "Cleans and standardizes phone numbers in the 'Phone' field of the 'Leads' table by removing non-numeric characters and applying a consistent format.",
                          "base_id": "pgfqcp0ocloo1j3",
                          "workspace_id": "w6dw3fo0"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Base not found."
          },
          "500": {
            "description": "Server error."
          }
        }
      },
      "post": {
        "summary": "Create script",
        "description": "Create a new script within the specified base by providing the required script details in the request body.\n\n**Note**: Script APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "script-create",
        "parameters": [
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "tags": [
          "Scripts"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScriptCreateReq"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "title": "Sample Script",
                    "description": "Sample Description",
                    "script": "Sample Script",
                    "config": {},
                    "meta": {}
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Script created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScriptGetResponse"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "screjw3n23233lk3",
                      "title": "This is Script Title",
                      "description": "Hello Script",
                      "script": "const config = input.config({\n  title: \"My Script\",\n  description: \"This script processes data based on your configuration.\",\n  items: [\n    input.config.number('limit', {\n      label: 'Processing Limit',\n      description: 'Maximum number of records to process'\n    })\n  ]\n});\n\n// Use the configured values\n\n\nconst limit = config.limit;\n\noutput.text(`Processing limit: ${limit}`);",
                      "config": {
                        "limit": "23"
                      },
                      "meta": {},
                      "base_id": "bas3jh4h43k4j3d",
                      "workspace_id": "ws3n3e3nf",
                      "created_at": "2025-01-16 06:04:18+00:00",
                      "updated_at": "2025-01-16 06:04:18+00:00"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v3/meta/bases/{base_id}/scripts/{script_id}": {
      "get": {
        "summary": "Get Script Info",
        "description": "Retrieve the details of a specific script.\n\n**Note**: Script APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "script-read",
        "tags": [
          "Scripts"
        ],
        "parameters": [
          {
            "name": "script_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the script."
          },
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "responses": {
          "200": {
            "description": "Script retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScriptGetResponse"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": "screjw3n23233lk3",
                      "title": "This is Script Title",
                      "description": "Hello Script",
                      "script": "output.inspect(base)",
                      "config": {},
                      "meta": {},
                      "base_id": "bas3jh4h43k4j3d",
                      "workspace_id": "ws3n3e3nf",
                      "created_at": "2025-01-16 06:04:18+00:00",
                      "updated_at": "2025-01-16 06:04:18+00:00"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "patch": {
        "summary": "Update script",
        "description": "Update the script.\n\n**Note**: Script APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "script-update",
        "tags": [
          "Scripts"
        ],
        "parameters": [
          {
            "name": "script_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the script."
          },
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScriptUpdateReq"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Script updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScriptGetResponse"
                }
              }
            }
          }
        }
      },
      "delete": {
        "summary": "Delete script",
        "description": "Delete the script.\n\n**Note**: Script APIs are available only on self-hosted and cloud-hosted **Enterprise** plans.",
        "operationId": "script-delete",
        "tags": [
          "Scripts"
        ],
        "parameters": [
          {
            "name": "script_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the script."
          },
          {
            "name": "base_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier for the base."
          }
        ],
        "responses": {
          "200": {
            "description": "Script deleted."
          }
        }
      }
    },
    "/api/v3/data/{baseId}/{tableId}/records": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "baseId",
          "in": "path",
          "required": true,
          "description": "**Base Identifier**."
        },
        {
          "schema": {
            "type": "string"
          },
          "name": "tableId",
          "in": "path",
          "required": true,
          "description": "**Table Identifier**."
        }
      ],
      "get": {
        "summary": "List Table Records",
        "operationId": "db-data-table-row-list",
        "description": "This API endpoint allows you to retrieve records from a specified table. You can customize the response by applying various query parameters for filtering, sorting, and formatting.\n\n**Pagination**: The response is paginated by default, with the first page being returned initially. The response includes the following additional information in the `pageInfo` JSON block:\n\n- **next**: Contains the URL to retrieve the next page of records. For example, `\"https://app.nocodb.com/api/v3/tables/medhonywr18cysz/records?page=2\"` points to the next page of records.\n- If there are no more records available (you are on the last page), this attribute will be _null_.\n\nThe `pageInfo` attribute is particularly valuable when working with large datasets divided into multiple pages. It provides the necessary URL to seamlessly fetch subsequent pages, enabling efficient navigation through the dataset.",
        "tags": [
          "Table Records"
        ],
        "parameters": [
          {
            "schema": {
              "oneOf": [
                {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                {
                  "type": "string"
                }
              ]
            },
            "in": "query",
            "name": "fields",
            "description": "Allows you to specify the fields that you wish to include from the linked records in your API response. By default, only Primary Key and associated display value field is included.\n\nExample: `fields=[\"field1\",\"field2\"]` or `fields=field1,field2` will include only 'field1' and 'field2' in the API response."
          },
          {
            "schema": {
              "oneOf": [
                {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "direction": {
                        "type": "string",
                        "enum": [
                          "asc",
                          "desc"
                        ]
                      },
                      "field": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "field",
                      "direction"
                    ]
                  }
                },
                {
                  "type": "object",
                  "properties": {
                    "direction": {
                      "type": "string",
                      "enum": [
                        "asc",
                        "desc"
                      ]
                    },
                    "field": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "field",
                    "direction"
                  ]
                }
              ]
            },
            "in": "query",
            "name": "sort",
            "description": "Allows you to specify the fields by which you want to sort the records in your API response. Accepts either an array of sort objects or a single sort object.\n\nEach sort object must have a 'field' property specifying the field name and a 'direction' property with value 'asc' or 'desc'.\n\nExample: `sort=[{\"direction\":\"asc\",\"field\":\"field_name\"},{\"direction\":\"desc\",\"field\":\"another_field\"}]` or `sort={\"direction\":\"asc\",\"field\":\"field_name\"}`\n\nIf `viewId` query parameter is also included, the sort included here will take precedence over any sorting configuration defined in the view."
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "query",
            "name": "where",
            "description": "Enables you to define specific conditions for filtering records in your API response. Multiple conditions can be combined using logical operators such as 'and' and 'or'. Each condition consists of three parts: a field name, a comparison operator, and a value.\n\nExample: `where=(field1,eq,value1)~and(field2,eq,value2)` will filter records where 'field1' is equal to 'value1' AND 'field2' is equal to 'value2'. \n\nYou can also use other comparison operators like 'neq' (not equal), 'gt' (greater than), 'lt' (less than), and more, to create complex filtering rules.\n\nIf `viewId` query parameter is also included, then the filters included here will be applied over the filtering configuration defined in the view. \n\nPlease remember to maintain the specified format, for further information on this please see [the documentation](https://nocodb.com/docs/product-docs/developer-resources/rest-apis#v3-where-query-parameter)"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1
            },
            "in": "query",
            "name": "page",
            "description": "Enables you to control the pagination of your API response by specifying the page number you want to retrieve. By default, the first page is returned. If you want to retrieve the next page, you can increment the page number by one.\n\nExample: `page=2` will return the second page of records in the dataset."
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1
            },
            "in": "query",
            "name": "nestedPage",
            "description": "Enables you to control the pagination of your nested data (linked records) in API response by specifying the page number you want to retrieve. By default, the first page is returned. If you want to retrieve the next page, you can increment the page number by one.\n\nExample: `page=2` will return the second page of nested data records in the dataset."
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1
            },
            "in": "query",
            "name": "pageSize",
            "description": "Enables you to set a limit on the number of records you want to retrieve in your API response. By default, your response includes all the available records, but by using this parameter, you can control the quantity you receive.\n\nExample: `pageSize=100` will constrain your response to the first 100 records in the dataset."
          },
          {
            "schema": {
              "type": "string"
            },
            "name": "viewId",
            "in": "query",
            "description": "***View Identifier***. Allows you to fetch records that are currently visible within a specific view. API retrieves records in the order they are displayed if the SORT option is enabled within that view.\n\nAdditionally, if you specify a `sort` query parameter, it will take precedence over any sorting configuration defined in the view. If you specify a `where` query parameter, it will be applied over the filtering configuration defined in the view. \n\nBy default, all fields, including those that are disabled within the view, are included in the response. To explicitly specify which fields to include or exclude, you can use the `fields` query parameter to customize the output according to your requirements."
          },
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataListResponseV3"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "records": [
                        {
                          "id": 1,
                          "fields": {
                            "SingleLineText": "record #1",
                            "MultiLineText": "sample long text",
                            "Email": "user@nocodb.com",
                            "PhoneNumber": "1234567890",
                            "URL": "www.google.com",
                            "Number": 1234,
                            "Decimal": 100.88,
                            "Currency": 100,
                            "Percent": 10,
                            "Duration": 1010,
                            "Rating": 3,
                            "Year": 2020,
                            "Time": "20:20:00",
                            "Checkbox": true,
                            "Date": "2020-01-01",
                            "SingleSelect": "Jan",
                            "MultiSelect": [
                              "Jan",
                              "Feb",
                              "Mar"
                            ],
                            "DateTime": "2022-02-02 00:00:00+00:00",
                            "LTAR": [
                              {
                                "id": 1,
                                "fields": {
                                  "SingleLineText": "record #1"
                                }
                              },
                              {
                                "id": 2,
                                "fields": {
                                  "SingleLineText": "record #2"
                                }
                              }
                            ]
                          }
                        }
                      ],
                      "next": "https://app.nocodb.com/api/v3/data/baseId/tableId/records?page=2"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        }
      },
      "post": {
        "summary": "Create Table Records",
        "operationId": "db-data-table-row-create",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataInsertResponseV3"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "records": [
                        {
                          "id": 10,
                          "fields": {
                            "Number": 1,
                            "SingleLineText": "record #1"
                          }
                        },
                        {
                          "id": 11,
                          "fields": {
                            "Number": 2,
                            "SingleLineText": "record #2"
                          }
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        },
        "tags": [
          "Table Records"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/DataInsertRequestV3"
                  },
                  {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/DataInsertRequestV3"
                    }
                  }
                ]
              },
              "examples": {
                "Example 1": {
                  "value": [
                    {
                      "fields": {
                        "Number": 1,
                        "Decimal": 100.88,
                        "Currency": 100,
                        "Percent": 100,
                        "Duration": 1010,
                        "Rating": 3,
                        "Year": 2020,
                        "Time": "20:20:00",
                        "SingleLineText": "record #1",
                        "MultiLineText": "sample text",
                        "Email": "user@nocodb.com",
                        "PhoneNumber": "1234567890",
                        "URL": "www.google.com",
                        "SingleSelect": "jan",
                        "Checkbox": true,
                        "Date": "2020-01-01",
                        "JSON": {
                          "x": 1,
                          "y": 2
                        },
                        "User": [
                          {
                            "email": "raju@nocodb.com"
                          }
                        ],
                        "MultiSelect": [
                          "jan",
                          "feb",
                          "mar"
                        ],
                        "DateTime": "2022-02-02 05:30:00+00:00",
                        "LTAR": [
                          {
                            "id": 1,
                            "fields": {}
                          },
                          {
                            "id": 2,
                            "fields": {}
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "description": "This API endpoint allows the creation of new records within a specified table. Records to be inserted are input as an array of key-value pair objects, where each key corresponds to a field name. Ensure that all the required fields are included in the payload, with exceptions for fields designated as auto-increment or those having default values. \n\nCertain read-only field types will be disregarded if included in the request. These field types include Look Up, Roll Up, Formula, Created By, Updated By, Created At, Updated At, Button, Barcode and QR Code.\n\nFor **Attachment** field types, this API cannot be used. Instead, utilize the storage APIs for managing attachments. Support for attachment fields in the record update API will be added soon.",
        "parameters": [
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ]
      },
      "patch": {
        "summary": "Update Table Records",
        "operationId": "db-data-table-row-update",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataUpdateResponseV3"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "records": [
                        {
                          "id": 6
                        },
                        {
                          "id": 7
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        },
        "tags": [
          "Table Records"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/DataUpdateRequestV3"
                  },
                  {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/DataUpdateRequestV3"
                    }
                  }
                ]
              },
              "examples": {
                "Example 1": {
                  "value": [
                    {
                      "id": 6,
                      "fields": {
                        "Number": 101,
                        "SingleLineText": "Updated record #1",
                        "Email": "updated@nocodb.com"
                      }
                    },
                    {
                      "id": 7,
                      "fields": {
                        "Number": 102,
                        "SingleLineText": "Updated record #2"
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "description": "This API endpoint allows you to update records within a specified table by their Record ID. The request payload should contain the Record ID and the fields that need to be updated.\n\nCertain read-only field types will be disregarded if included in the request. These field types include Look Up, Roll Up, Formula, Created By, Updated By, Created At, Updated At, Button, Barcode and QR Code.\n\nFor **Attachment** field types, this API cannot be used. Instead, utilize the storage APIs for managing attachments. Support for attachment fields in the record update API will be added soon.",
        "parameters": [
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ]
      },
      "delete": {
        "summary": "Delete Table Records",
        "operationId": "db-data-table-row-delete",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataDeleteResponseV3"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "records": [
                        {
                          "id": 1,
                          "deleted": true
                        },
                        {
                          "id": 2,
                          "deleted": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        },
        "tags": [
          "Table Records"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/DataDeleteRequestV3"
                  },
                  {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/DataDeleteRequestV3"
                    }
                  }
                ]
              },
              "examples": {
                "Example 1": {
                  "value": [
                    {
                      "id": 1
                    },
                    {
                      "id": 2
                    }
                  ]
                }
              }
            }
          }
        },
        "description": "This API endpoint allows the deletion of records within a specified table by Record ID. The request should include the Record ID of the record(s) to be deleted.",
        "parameters": [
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ]
      }
    },
    "/api/v3/data/{baseId}/{tableId}/records/{recordId}": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "baseId",
          "in": "path",
          "required": true,
          "description": "**Base Identifier**."
        },
        {
          "schema": {
            "type": "string"
          },
          "name": "tableId",
          "in": "path",
          "required": true,
          "description": "**Table Identifier**"
        },
        {
          "schema": {
            "type": "string"
          },
          "name": "recordId",
          "in": "path",
          "required": true,
          "description": "Record ID"
        }
      ],
      "get": {
        "summary": "Read Table Record",
        "operationId": "db-data-table-row-read",
        "description": "This API endpoint allows you to retrieve a single record identified by Record-ID, serving as unique identifier for the record from a specified table.",
        "tags": [
          "Table Records"
        ],
        "parameters": [
          {
            "schema": {
              "oneOf": [
                {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                {
                  "type": "string"
                }
              ]
            },
            "in": "query",
            "name": "fields",
            "description": "Allows you to specify the fields that you wish to include from the linked records in your API response. By default, only Primary Key and associated display value field is included.\n\nExample: `fields=[\"field1\",\"field2\"]` or `fields=field1,field2` will include only 'field1' and 'field2' in the API response."
          },
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataReadResponseV3"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": 1,
                      "fields": {
                        "SingleLineText": "record #1",
                        "MultiLineText": "sample long text",
                        "Email": "user@nocodb.com",
                        "PhoneNumber": "1234567890",
                        "URL": "www.google.com",
                        "Number": 1234,
                        "Decimal": 100.88,
                        "Currency": 100,
                        "Percent": 10,
                        "Duration": 1010,
                        "Rating": 3,
                        "Year": 2020,
                        "Time": "20:20:00",
                        "Checkbox": true,
                        "Date": "2020-01-01",
                        "SingleSelect": "Jan",
                        "MultiSelect": [
                          "Jan",
                          "Feb",
                          "Mar"
                        ],
                        "DateTime": "2022-02-02 00:00:00+00:00",
                        "LTAR": [
                          {
                            "id": 1,
                            "fields": {
                              "SingleLineText": "record #1"
                            }
                          },
                          {
                            "id": 2,
                            "fields": {
                              "SingleLineText": "record #2"
                            }
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        }
      }
    },
    "/api/v3/data/{baseId}/{modelId}/records/{recordId}/fields/{fieldId}/upload": {
      "post": {
        "summary": "Upload Attachment to Cell",
        "operationId": "db-data-table-row-attachment-upload",
        "description": "This API endpoint allows you to upload an attachment (base64 encoded) to a specific cell in a table. The attachment data includes content type, base64 encoded file, and filename.",
        "tags": [
          "Table Records"
        ],
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "name": "baseId",
            "in": "path",
            "required": true,
            "description": "**Base Identifier**."
          },
          {
            "schema": {
              "type": "string"
            },
            "name": "modelId",
            "in": "path",
            "required": true,
            "description": "**Model Identifier**."
          },
          {
            "schema": {
              "type": "string"
            },
            "name": "recordId",
            "in": "path",
            "required": true,
            "description": "**Record Identifier**."
          },
          {
            "schema": {
              "type": "string"
            },
            "name": "fieldId",
            "in": "path",
            "required": true,
            "description": "**Field Identifier**."
          },
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "contentType": {
                    "type": "string",
                    "description": "Content type of the file (e.g., image/png, application/pdf)."
                  },
                  "file": {
                    "type": "string",
                    "description": "Base64 encoded file content."
                  },
                  "filename": {
                    "type": "string",
                    "description": "Original filename of the attachment."
                  }
                },
                "required": [
                  "contentType",
                  "file",
                  "filename"
                ]
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "contentType": "image/png",
                    "file": "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==",
                    "filename": "image.png"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataReadResponseV3"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "id": 1,
                      "fields": {
                        "SingleLineText": "record #1",
                        "MultiLineText": "sample long text",
                        "Email": "user@nocodb.com",
                        "PhoneNumber": "1234567890",
                        "URL": "www.google.com",
                        "Number": 1234,
                        "Decimal": 100.88,
                        "Currency": 100,
                        "Percent": 10,
                        "Duration": 1010,
                        "Rating": 3,
                        "Year": 2020,
                        "Time": "20:20:00",
                        "Checkbox": true,
                        "Date": "2020-01-01",
                        "SingleSelect": "Jan",
                        "MultiSelect": [
                          "Jan",
                          "Feb",
                          "Mar"
                        ],
                        "DateTime": "2022-02-02 00:00:00+00:00",
                        "LTAR": [
                          {
                            "id": 1,
                            "fields": {
                              "SingleLineText": "record #1"
                            }
                          },
                          {
                            "id": 2,
                            "fields": {
                              "SingleLineText": "record #2"
                            }
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        }
      }
    },
    "/api/v3/data/{baseId}/{tableId}/count": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "baseId",
          "in": "path",
          "required": true,
          "description": "**Base Identifier**."
        },
        {
          "schema": {
            "type": "string"
          },
          "name": "tableId",
          "in": "path",
          "required": true,
          "description": "**Table Identifier**"
        },
        {
          "schema": {
            "type": "string"
          },
          "name": "viewId",
          "in": "query",
          "description": "**View Identifier**. Allows you to fetch record count that are currently visible within a specific view."
        }
      ],
      "get": {
        "summary": "Count Table Records",
        "operationId": "db-data-table-row-count",
        "description": "This API endpoint allows you to retrieve the total number of records from a specified table or a view. You can narrow down search results by applying `where` query parameter",
        "tags": [
          "Table Records"
        ],
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "in": "query",
            "name": "where",
            "description": "Enables you to define specific conditions for filtering record count in your API response. Multiple conditions can be combined using logical operators such as 'and' and 'or'. Each condition consists of three parts: a field name, a comparison operator, and a value.\n\nExample: `where=(field1,eq,value1)~and(field2,eq,value2)` will filter records where 'field1' is equal to 'value1' AND 'field2' is equal to 'value2'. \n\nYou can also use other comparison operators like 'neq' (not equal), 'gt' (greater than), 'lt' (less than), and more, to create complex filtering rules.\n\nIf `viewId` query parameter is also included, then the filters included here will be applied over the filtering configuration defined in the view. \n\nPlease remember to maintain the specified format, for further information on this please see [the documentation](https://nocodb.com/docs/product-docs/developer-resources/rest-apis#v3-where-query-parameter)"
          },
          {
            "$ref": "#/components/parameters/xc-token"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "count": {
                      "type": "number"
                    }
                  }
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "count": 3
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        }
      }
    },
    "/api/v3/data/{baseId}/{tableId}/links/{linkFieldId}/{recordId}": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "tableId",
          "in": "path",
          "required": true,
          "description": "**Table Identifier**"
        },
        {
          "schema": {
            "type": "string"
          },
          "name": "linkFieldId",
          "in": "path",
          "required": true,
          "description": "**Links Field Identifier** corresponding to the relation field `Link to another record` established between tables."
        }
      ],
      "get": {
        "summary": "List Linked Records",
        "operationId": "db-data-table-row-nested-list",
        "description": "This API endpoint allows you to retrieve list of linked records for a specific `Link to another record field` and `Record ID`. The response is an array of objects containing Primary Key and its corresponding display value.",
        "tags": [
          "Linked Records"
        ],
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "name": "recordId",
            "in": "path",
            "required": true,
            "description": "**Record Identifier** corresponding to the record in this table for which linked records are being fetched."
          },
          {
            "schema": {
              "oneOf": [
                {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                {
                  "type": "string"
                }
              ]
            },
            "in": "query",
            "name": "fields",
            "description": "Allows you to specify the fields that you wish to include from the linked records in your API response. By default, only Primary Key and associated display value field is included.\n\nExample: `fields=[\"field1\",\"field2\"]` or `fields=field1,field2` will include only 'field1' and 'field2' in the API response."
          },
          {
            "schema": {
              "oneOf": [
                {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "direction": {
                        "type": "string",
                        "enum": [
                          "asc",
                          "desc"
                        ]
                      },
                      "field": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "field",
                      "direction"
                    ]
                  }
                },
                {
                  "type": "object",
                  "properties": {
                    "direction": {
                      "type": "string",
                      "enum": [
                        "asc",
                        "desc"
                      ]
                    },
                    "field": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "field",
                    "direction"
                  ]
                }
              ]
            },
            "in": "query",
            "name": "sort",
            "description": "Allows you to specify the fields by which you want to sort the records in your API response. Accepts either an array of sort objects or a single sort object.\n\nEach sort object must have a 'field' property specifying the field name and a 'direction' property with value 'asc' or 'desc'.\n\nExample: `sort=[{\"direction\":\"asc\",\"field\":\"field_name\"},{\"direction\":\"desc\",\"field\":\"another_field\"}]` or `sort={\"direction\":\"asc\",\"field\":\"field_name\"}`\n\nIf `viewId` query parameter is also included, the sort included here will take precedence over any sorting configuration defined in the view."
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "query",
            "name": "where",
            "description": "Enables you to define specific conditions for filtering linked records in your API response. Multiple conditions can be combined using logical operators such as 'and' and 'or'. Each condition consists of three parts: a field name, a comparison operator, and a value.\n\nExample: `where=(field1,eq,value1)~and(field2,eq,value2)` will filter linked records where 'field1' is equal to 'value1' AND 'field2' is equal to 'value2'. \n\nYou can also use other comparison operators like 'neq' (not equal), 'gt' (greater than), 'lt' (less than), and more, to create complex filtering rules.\n\nPlease remember to maintain the specified format, for further information on this please see [the documentation](https://nocodb.com/docs/product-docs/developer-resources/rest-apis#v3-where-query-parameter)"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "in": "query",
            "name": "page",
            "description": "Enables you to control the pagination of your API response by specifying the page number you want to retrieve. By default, the first page is returned. If you want to retrieve the next page, you can increment the page number by one.\n\nExample: `page=2` will return the second page of linked records in the dataset."
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1
            },
            "in": "query",
            "name": "pageSize",
            "description": "Enables you to set a limit on the number of linked records you want to retrieve in your API response. By default, your response includes all the available linked records, but by using this parameter, you can control the quantity you receive.\n\nExample: `pageSize=100` will constrain your response to the first 100 linked records in the dataset."
          },
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataListResponseV3"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "records": [
                        {
                          "id": 1,
                          "fields": {
                            "SingleLineText": "record #1",
                            "MultiLineText": "sample long text",
                            "Email": "user@nocodb.com",
                            "PhoneNumber": "1234567890",
                            "URL": "www.google.com",
                            "Number": 1234,
                            "Decimal": 100.88,
                            "Currency": 100,
                            "Percent": 10,
                            "Duration": 1010,
                            "Rating": 3,
                            "Year": 2020,
                            "Time": "20:20:00",
                            "Checkbox": true,
                            "Date": "2020-01-01",
                            "SingleSelect": "Jan",
                            "MultiSelect": [
                              "Jan",
                              "Feb",
                              "Mar"
                            ],
                            "DateTime": "2022-02-02 00:00:00+00:00",
                            "LTAR": [
                              {
                                "id": 1,
                                "fields": {
                                  "SingleLineText": "record #1"
                                }
                              },
                              {
                                "id": 2,
                                "fields": {
                                  "SingleLineText": "record #2"
                                }
                              }
                            ]
                          }
                        }
                      ],
                      "next": "https://app.nocodb.com/api/v3/data/baseId/tableId/records?page=2"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        }
      },
      "post": {
        "summary": "Link Records",
        "operationId": "db-data-table-row-nested-link",
        "responses": {
          "200": {
            "description": "Records successfully linked",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Indicates whether the linking operation was successful",
                      "example": true
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "additionalProperties": false
                },
                "examples": {
                  "Success Response": {
                    "summary": "Successful linking operation",
                    "value": {
                      "success": true
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        },
        "tags": [
          "Linked Records"
        ],
        "requestBody": {
          "required": true,
          "description": "Array of record objects to be linked, each containing an id field",
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "description": "Unique identifier for the record",
                        "example": "33"
                      }
                    },
                    "required": [
                      "id"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Unique identifier for the record",
                          "example": "22"
                        }
                      },
                      "required": [
                        "id"
                      ],
                      "additionalProperties": false
                    },
                    "minItems": 1,
                    "maxItems": 1000
                  }
                ]
              },
              "examples": {
                "Single Record": {
                  "summary": "Link a single record",
                  "value": {
                    "id": "22"
                  }
                },
                "Multiple Records": {
                  "summary": "Link multiple records",
                  "value": [
                    {
                      "id": "43"
                    },
                    {
                      "id": "01"
                    }
                  ]
                }
              }
            }
          }
        },
        "description": "This API endpoint allows you to link records to a specific `Link field` and `Record ID`. The request payload is an array of record-ids from the adjacent table for linking purposes. Note that any existing links, if present, will be unaffected during this operation.",
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "name": "recordId",
            "in": "path",
            "required": true,
            "description": "**Record Identifier** corresponding to the record in this table for which links are being created."
          },
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ]
      },
      "delete": {
        "summary": "Unlink Records",
        "operationId": "db-data-table-row-nested-unlink",
        "responses": {
          "200": {
            "description": "Records successfully unlinked",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Indicates whether the unlink operation was successful",
                      "example": true
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "additionalProperties": false
                },
                "examples": {
                  "Success Response": {
                    "summary": "Successful unlinking operation",
                    "value": {
                      "success": true
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          }
        },
        "tags": [
          "Linked Records"
        ],
        "requestBody": {
          "required": true,
          "description": "Array of record objects to be unlinked, each containing an id field",
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "description": "Unique identifier for the record",
                        "example": "33"
                      }
                    },
                    "required": [
                      "id"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Unique identifier for the record",
                          "example": "33"
                        }
                      },
                      "required": [
                        "id"
                      ],
                      "additionalProperties": false
                    },
                    "minItems": 1,
                    "maxItems": 1000
                  }
                ]
              },
              "examples": {
                "Single Record": {
                  "summary": "UnLink a single record",
                  "value": {
                    "id": "32"
                  }
                },
                "Multiple Records": {
                  "summary": "UnLink multiple records",
                  "value": [
                    {
                      "id": "1"
                    },
                    {
                      "id": "22"
                    }
                  ]
                }
              }
            }
          }
        },
        "description": "This API endpoint allows you to unlink records from a specific `Link field` and `Record ID`. The request payload is an array of record-ids from the adjacent table for unlinking purposes. Note that, \n- duplicated record-ids will be ignored.\n- non-existent record-ids will be ignored.",
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "name": "recordId",
            "in": "path",
            "required": true,
            "description": "**Record Identifier** corresponding to the record in this table for which links are being removed."
          },
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ]
      }
    },
    "/api/v3/data/{baseId}/{tableId}/actions/{columnId}": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "baseId",
          "in": "path",
          "required": true,
          "description": "**Base Identifier**."
        },
        {
          "schema": {
            "type": "string"
          },
          "name": "tableId",
          "in": "path",
          "required": true,
          "description": "**Table Identifier**."
        },
        {
          "schema": {
            "type": "string"
          },
          "name": "columnId",
          "in": "path",
          "required": true,
          "description": "**Button Field Identifier** to trigger the action."
        }
      ],
      "post": {
        "summary": "Trigger Button Action",
        "operationId": "trigger-action",
        "description": "Triggers a button action (such as AI generation) for specified rows. This is useful for bulk processing button actions programmatically. Maximum of 25 rows can be processed at a time.",
        "tags": [
          "Table Records"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "rowIds"
                ],
                "properties": {
                  "rowIds": {
                    "type": "array",
                    "description": "Array of record IDs to process",
                    "items": {
                      "type": "string"
                    },
                    "minItems": 1,
                    "maxItems": 25,
                    "example": [
                      "1",
                      "2",
                      "3"
                    ]
                  },
                  "preview": {
                    "type": "boolean",
                    "description": "Preview mode (optional)",
                    "default": false
                  }
                }
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "rowIds": [
                      "1",
                      "2"
                    ],
                    "preview": false
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Action triggered successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DataRecordV3"
                  }
                },
                "examples": {
                  "Example 1": {
                    "value": [
                      {
                        "id": "1",
                        "fields": {
                          "Title": "Updated by AI",
                          "Description": "Generated content..."
                        }
                      },
                      {
                        "id": "2",
                        "fields": {
                          "Title": "Another update",
                          "Description": "More generated content..."
                        }
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/Unauthorized"
          }
        },
        "parameters": [
          {
            "required": true,
            "$ref": "#/components/parameters/xc-token"
          }
        ]
      }
    },
    "/api/v3/meta/workspaces/{workspaceId}/teams": {
      "get": {
        "summary": "List Teams",
        "operationId": "teams-list-v3",
        "description": "Retrieve a list of teams associated with a Workspace or ORG",
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Workspace ID"
          }
        ],
        "responses": {
          "200": {
            "description": "List of teams",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "list": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/TeamV3"
                      }
                    }
                  },
                  "required": [
                    "list"
                  ]
                }
              }
            }
          }
        }
      },
      "post": {
        "summary": "Create Team",
        "operationId": "teams-create-v3",
        "description": "Create a new team",
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Workspace ID"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TeamCreateV3Req"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Created team",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TeamV3"
                }
              }
            }
          }
        }
      }
    },
    "/api/v3/meta/workspaces/{workspaceId}/teams/{teamId}": {
      "get": {
        "summary": "Get Team",
        "operationId": "teams-get-v3",
        "description": "Fetch details of a specific team",
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Workspace ID"
          },
          {
            "name": "teamId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Team ID"
          },
          {
            "name": "include_workspace",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Include workspace teams"
          }
        ],
        "responses": {
          "200": {
            "description": "Team details",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TeamDetailV3"
                }
              }
            }
          }
        }
      },
      "patch": {
        "summary": "Update Team",
        "operationId": "teams-update-v3",
        "description": "Update name, icon, or badge color",
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Workspace ID"
          },
          {
            "name": "teamId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Team ID"
          },
          {
            "name": "include_workspace",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Include workspace teams"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TeamUpdateV3Req"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Updated team",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TeamV3"
                }
              }
            }
          }
        }
      },
      "delete": {
        "summary": "Delete Team",
        "operationId": "teams-delete-v3",
        "description": "Delete a team",
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Workspace ID"
          },
          {
            "name": "teamId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Team ID"
          },
          {
            "name": "include_workspace",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Include workspace teams"
          }
        ],
        "responses": {
          "200": {
            "description": "Team deleted successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "msg": {
                      "type": "string",
                      "example": "Team has been deleted successfully"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v3/meta/workspaces/{workspaceId}/teams/{teamId}/members": {
      "post": {
        "summary": "Add Members to Team",
        "operationId": "teams-members-add-v3",
        "description": "Add members to a team",
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Workspace ID"
          },
          {
            "name": "teamId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Team ID"
          },
          {
            "name": "include_workspace",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Include workspace teams"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/TeamMembersAddV3Req"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Members added successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TeamUser"
                  }
                }
              }
            }
          }
        }
      },
      "delete": {
        "summary": "Remove Member from Team",
        "operationId": "teams-members-remove-v3",
        "description": "Remove members from a team",
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Workspace ID"
          },
          {
            "name": "teamId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Team ID"
          },
          {
            "name": "include_workspace",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Include workspace teams"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/TeamMembersRemoveV3Req"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Members removed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "msg": {
                      "type": "string",
                      "example": "Members have been removed successfully"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "patch": {
        "summary": "Update Member Role",
        "operationId": "teams-members-update-v3",
        "description": "Update member roles in a team",
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Workspace ID"
          },
          {
            "name": "teamId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Team ID"
          },
          {
            "name": "include_workspace",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Include workspace teams"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/TeamMembersUpdateV3Req"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Member roles updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TeamUser"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v3/meta/tokens": {
      "get": {
        "summary": "List API tokens",
        "description": "Retrieve a list of all API tokens for the organization.\n\n**Note**: \nAPI Token APIs are available only with self-hosted **Enterprise** plans and cloud-hosted **Enterprise** plans.\n> **Beta**: These APIs are currently in beta and subject to change in future releases.",
        "tags": [
          "API Tokens"
        ],
        "security": [
          {
            "xc-token": []
          }
        ],
        "responses": {
          "200": {
            "description": "List of API tokens",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "list": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/ApiTokenV3"
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/UnauthorizedV3"
          },
          "403": {
            "$ref": "#/components/responses/ForbiddenV3"
          },
          "500": {
            "$ref": "#/components/responses/InternalServerErrorV3"
          }
        }
      },
      "post": {
        "summary": "Create API token",
        "description": "Create a new API token for the organization.\n\n**Note**: API Token APIs are available only with self-hosted **Enterprise** plans and cloud-hosted **Enterprise** plans.\n> **Beta**: These APIs are currently in beta and subject to change in future releases.",
        "tags": [
          "API Tokens"
        ],
        "security": [
          {
            "xc-token": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "title"
                ],
                "properties": {
                  "title": {
                    "type": "string",
                    "description": "Title / description for the API token",
                    "example": "Github Integration"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Created API token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiTokenWithTokenV3"
                },
                "examples": {
                  "created": {
                    "value": {
                      "id": 5,
                      "title": "Github Integration",
                      "token": "wxAFzFO2wwOf9ozVRjragBJ7KPWMaW2OGpklGqHh",
                      "created_at": "2025-12-30 15:17:24+00:00",
                      "updated_at": "2025-12-30 15:17:24+00:00"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequestV3"
          },
          "401": {
            "$ref": "#/components/responses/UnauthorizedV3"
          },
          "403": {
            "$ref": "#/components/responses/ForbiddenV3"
          },
          "500": {
            "$ref": "#/components/responses/InternalServerErrorV3"
          }
        }
      }
    },
    "/api/v3/meta/tokens/{tokenId}": {
      "delete": {
        "summary": "Delete API token",
        "description": "Delete an API token by its ID.\n\n**Note**: API Token APIs are available only with self-hosted **Enterprise** plans and cloud-hosted **Enterprise** plans.\n> **Beta**: These APIs are currently in beta and subject to change in future releases.",
        "tags": [
          "API Tokens"
        ],
        "security": [
          {
            "xc-token": []
          }
        ],
        "parameters": [
          {
            "name": "tokenId",
            "in": "path",
            "required": true,
            "description": "ID of the API token to delete",
            "schema": {
              "type": "string",
              "example": "5"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Deleted API token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiTokenV3"
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/UnauthorizedV3"
          },
          "403": {
            "$ref": "#/components/responses/ForbiddenV3"
          },
          "404": {
            "$ref": "#/components/responses/NotFoundV3"
          },
          "500": {
            "$ref": "#/components/responses/InternalServerErrorV3"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Base": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the base."
          },
          "title": {
            "type": "string",
            "description": "Title of the base."
          },
          "meta": {
            "$ref": "#/components/schemas/BaseMetaRes"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp of when the base was created."
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp of when the base was last updated."
          },
          "workspace_id": {
            "type": "string",
            "description": "Unique identifier for the workspace to which this base belongs to."
          },
          "sources": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the data source."
                },
                "title": {
                  "type": "string",
                  "description": "Title of the data source."
                },
                "type": {
                  "type": "string",
                  "description": "Type of the data source (e.g., pg, mysql)."
                },
                "is_schema_readonly": {
                  "type": "boolean",
                  "description": "Indicates if the schema in this data source is read-only."
                },
                "is_data_readonly": {
                  "type": "boolean",
                  "description": "Indicates if the data (records) in this data source is read-only."
                },
                "integration_id": {
                  "type": "string",
                  "description": "Integration ID for the data source."
                }
              },
              "required": [
                "id",
                "title",
                "type",
                "is_schema_readonly",
                "is_data_readonly",
                "integration_id"
              ]
            },
            "description": "List of data sources associated with this base. This information will be included only if one or more external data sources are associated with the base."
          }
        },
        "required": [
          "id",
          "title",
          "meta",
          "created_at",
          "updated_at",
          "workspace_id"
        ]
      },
      "BaseWithMembers": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the base."
          },
          "title": {
            "type": "string",
            "description": "Title of the base."
          },
          "meta": {
            "$ref": "#/components/schemas/BaseMetaRes"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp of when the base was created."
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp of when the base was last updated."
          },
          "workspace_id": {
            "type": "string",
            "description": "Unique identifier for the workspace to which this base belongs to."
          },
          "sources": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the data source."
                },
                "title": {
                  "type": "string",
                  "description": "Title of the data source."
                },
                "type": {
                  "type": "string",
                  "description": "Type of the data source (e.g., pg, mysql)."
                },
                "is_schema_readonly": {
                  "type": "boolean",
                  "description": "Indicates if the schema in this data source is read-only."
                },
                "is_data_readonly": {
                  "type": "boolean",
                  "description": "Indicates if the data (records) in this data source is read-only."
                },
                "integration_id": {
                  "type": "string",
                  "description": "Integration ID for the data source."
                }
              },
              "required": [
                "id",
                "title",
                "type",
                "is_schema_readonly",
                "is_data_readonly",
                "integration_id"
              ]
            },
            "description": "List of data sources associated with this base. This information will be included only if one or more external data sources are associated with the base."
          },
          "individual_members": {
            "type": "object",
            "properties": {
              "base_members": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/BaseMemberWithWorkspaceRole"
                }
              },
              "workspace_members": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/WorkspaceMember"
                }
              }
            }
          }
        },
        "required": [
          "id",
          "title",
          "meta",
          "created_at",
          "updated_at",
          "workspace_id"
        ]
      },
      "BaseMetaRes": {
        "type": "object",
        "properties": {
          "icon_color": {
            "type": "string",
            "description": "Specifies the color of the base icon using a hexadecimal color code (e.g., `#36BFFF`)",
            "pattern": "^#[0-9A-Fa-f]{6}$"
          }
        }
      },
      "BaseMetaReq": {
        "type": "object",
        "properties": {
          "icon_color": {
            "type": "string",
            "description": "Specifies the color of the base icon using a hexadecimal color code (e.g., `#36BFFF`).\n\n**Constraints**:\n- Must be a valid 6-character hexadecimal color code preceded by a `#`.\n- Optional field; defaults to a standard color if not provided.",
            "pattern": "^#[0-9A-Fa-f]{6}$"
          }
        }
      },
      "BaseCreate": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the base."
          },
          "meta": {
            "$ref": "#/components/schemas/BaseMetaReq"
          }
        },
        "required": [
          "title"
        ]
      },
      "BaseUpdate": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the base."
          },
          "meta": {
            "$ref": "#/components/schemas/BaseMetaReq"
          }
        }
      },
      "TableList": {
        "type": "object",
        "properties": {
          "list": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the table."
                },
                "title": {
                  "type": "string",
                  "description": "Title of the table."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Description of the table."
                },
                "meta": {
                  "$ref": "#/components/schemas/TableMeta"
                },
                "base_id": {
                  "type": "string",
                  "description": "Unique identifier for the base to which this table belongs to."
                },
                "source_id": {
                  "type": "string",
                  "description": "Unique identifier for the data source. This information will be included only if the table is associated with an external data source."
                },
                "workspace_id": {
                  "type": "string",
                  "description": "Unique identifier for the workspace to which this base belongs to."
                }
              },
              "required": [
                "id",
                "title",
                "base_id",
                "workspace_id"
              ]
            }
          }
        },
        "required": [
          "list"
        ]
      },
      "TableMeta": {
        "type": "object",
        "properties": {
          "icon": {
            "type": "string",
            "description": "Icon prefix to the table name that needs to be displayed in-lieu of the default table icon."
          }
        }
      },
      "TableCreate": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the table."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Description of the table."
          },
          "meta": {
            "$ref": "#/components/schemas/TableMeta"
          },
          "source_id": {
            "type": "string",
            "description": "Unique identifier for the data source. Include this information only if the table being created is part of a data source."
          },
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TableCreateField"
            }
          }
        },
        "required": [
          "title"
        ]
      },
      "FieldOptions": {
        "SingleLineText": {
          "title": "SingleLineText",
          "properties": {
            "type": {
              "enum": [
                "SingleLineText"
              ]
            }
          }
        },
        "LongText": {
          "title": "LongText",
          "properties": {
            "type": {
              "enum": [
                "LongText"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_LongText"
            }
          }
        },
        "PhoneNumber": {
          "title": "PhoneNumber",
          "properties": {
            "type": {
              "enum": [
                "PhoneNumber"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_PhoneNumber"
            }
          }
        },
        "URL": {
          "title": "URL",
          "properties": {
            "type": {
              "enum": [
                "URL"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_URL"
            }
          }
        },
        "Email": {
          "title": "Email",
          "properties": {
            "type": {
              "enum": [
                "Email"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Email"
            }
          }
        },
        "Number": {
          "title": "Number",
          "properties": {
            "type": {
              "enum": [
                "Number"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Number"
            }
          }
        },
        "Decimal": {
          "title": "Decimal",
          "properties": {
            "type": {
              "enum": [
                "Decimal"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Decimal"
            }
          }
        },
        "Currency": {
          "title": "Currency",
          "properties": {
            "type": {
              "enum": [
                "Currency"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Currency"
            }
          }
        },
        "Percent": {
          "title": "Percent",
          "properties": {
            "type": {
              "enum": [
                "Percent"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Percent"
            }
          }
        },
        "Duration": {
          "title": "Duration",
          "properties": {
            "type": {
              "enum": [
                "Duration"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Duration"
            }
          }
        },
        "Date": {
          "title": "Date",
          "properties": {
            "type": {
              "enum": [
                "Date"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Date"
            }
          }
        },
        "DateTime": {
          "title": "DateTime",
          "properties": {
            "type": {
              "enum": [
                "DateTime"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_DateTime"
            }
          }
        },
        "Time": {
          "title": "Time",
          "properties": {
            "type": {
              "enum": [
                "Time"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Time"
            }
          }
        },
        "SingleSelect": {
          "title": "SingleSelect",
          "properties": {
            "type": {
              "enum": [
                "SingleSelect"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Select"
            }
          }
        },
        "MultiSelect": {
          "title": "MultiSelect",
          "properties": {
            "type": {
              "enum": [
                "MultiSelect"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Select"
            }
          }
        },
        "Rating": {
          "title": "Rating",
          "properties": {
            "type": {
              "enum": [
                "Rating"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Rating"
            }
          }
        },
        "Checkbox": {
          "title": "Checkbox",
          "properties": {
            "type": {
              "enum": [
                "Checkbox"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Checkbox"
            }
          }
        },
        "Attachment": {
          "title": "Attachment",
          "properties": {
            "type": {
              "enum": [
                "Attachment"
              ]
            }
          }
        },
        "Geometry": {
          "title": "Geometry",
          "properties": {
            "type": {
              "enum": [
                "Geometry"
              ]
            }
          }
        },
        "Links": {
          "title": "Links",
          "properties": {
            "type": {
              "enum": [
                "Links"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Links"
            }
          }
        },
        "Lookup": {
          "title": "Lookup",
          "properties": {
            "type": {
              "enum": [
                "Lookup"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Lookup"
            }
          }
        },
        "Rollup": {
          "title": "Rollup",
          "properties": {
            "type": {
              "enum": [
                "Rollup"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Rollup"
            }
          }
        },
        "Button": {
          "title": "Button",
          "properties": {
            "type": {
              "enum": [
                "Button"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Button"
            }
          }
        },
        "Formula": {
          "title": "Formula",
          "properties": {
            "type": {
              "enum": [
                "Formula"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Formula"
            }
          }
        },
        "Barcode": {
          "title": "Barcode",
          "properties": {
            "type": {
              "enum": [
                "Barcode"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_Barcode"
            }
          }
        },
        "Year": {
          "title": "Year",
          "properties": {
            "type": {
              "enum": [
                "Year"
              ]
            }
          }
        },
        "QrCode": {
          "title": "QrCode",
          "properties": {
            "type": {
              "enum": [
                "QrCode"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_QrCode"
            }
          }
        },
        "CreatedTime": {
          "title": "CreatedTime",
          "properties": {
            "type": {
              "enum": [
                "CreatedTime"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_DateTime"
            }
          }
        },
        "LastModifiedTime": {
          "title": "LastModifiedTime",
          "properties": {
            "type": {
              "enum": [
                "LastModifiedTime"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_DateTime"
            }
          }
        },
        "CreatedBy": {
          "title": "CreatedBy",
          "properties": {
            "type": {
              "enum": [
                "CreatedBy"
              ]
            }
          }
        },
        "LastModifiedBy": {
          "title": "LastModifiedBy",
          "properties": {
            "type": {
              "enum": [
                "LastModifiedBy"
              ]
            }
          }
        },
        "LinkToAnotherRecord": {
          "title": "LinkToAnotherRecord",
          "properties": {
            "type": {
              "enum": [
                "LinkToAnotherRecord"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_LinkToAnotherRecord"
            }
          }
        },
        "User": {
          "title": "User",
          "properties": {
            "type": {
              "enum": [
                "User"
              ]
            },
            "options": {
              "$ref": "#/components/schemas/FieldOptions_User"
            }
          }
        },
        "JSON": {
          "title": "JSON",
          "properties": {
            "type": {
              "enum": [
                "JSON"
              ]
            }
          }
        }
      },
      "CreateField": {
        "allOf": [
          {
            "oneOf": [
              {
                "$ref": "#/components/schemas/FieldOptions/SingleLineText"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/LongText"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/PhoneNumber"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/URL"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Email"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Number"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Decimal"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Currency"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Percent"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Duration"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Date"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/DateTime"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Time"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Year"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/SingleSelect"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/MultiSelect"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Rating"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Checkbox"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Attachment"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/JSON"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Geometry"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Links"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Lookup"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Rollup"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Button"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Formula"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Barcode"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/QrCode"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/CreatedTime"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/LastModifiedTime"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/CreatedBy"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/LastModifiedBy"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/LinkToAnotherRecord"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/User"
              }
            ]
          },
          {
            "$ref": "#/components/schemas/FieldBaseCreate"
          }
        ]
      },
      "TableCreateField": {
        "allOf": [
          {
            "oneOf": [
              {
                "$ref": "#/components/schemas/FieldOptions/SingleLineText"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/LongText"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/PhoneNumber"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/URL"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Email"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Number"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Decimal"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Currency"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Percent"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Duration"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Date"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/DateTime"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Time"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Year"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/SingleSelect"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/MultiSelect"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Rating"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Checkbox"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Attachment"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/JSON"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Geometry"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Links"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Button"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/Formula"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/CreatedTime"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/LastModifiedTime"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/CreatedBy"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/LastModifiedBy"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/LinkToAnotherRecord"
              },
              {
                "$ref": "#/components/schemas/FieldOptions/User"
              }
            ]
          },
          {
            "$ref": "#/components/schemas/TableFieldBaseCreate"
          }
        ]
      },
      "Table": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the table."
          },
          "source_id": {
            "type": "string",
            "description": "Unique identifier for the data source. This information will be included only if the table is associated with an external data source."
          },
          "base_id": {
            "type": "string",
            "description": "Unique identifier for the base to which this table belongs to."
          },
          "title": {
            "type": "string",
            "description": "Title of the table."
          },
          "description": {
            "type": "string",
            "description": "Description of the table."
          },
          "display_field_id": {
            "type": "string",
            "description": "Unique identifier for the display field of the table. First non system field is set as display field by default."
          },
          "workspace_id": {
            "type": "string",
            "description": "Unique identifier for the workspace to which this base belongs to."
          },
          "fields": {
            "type": "array",
            "description": "List of fields associated with this table.",
            "items": {
              "$ref": "#/components/schemas/CreateField"
            }
          },
          "views": {
            "type": "array",
            "description": "List of views associated with this table.",
            "items": {
              "$ref": "#/components/schemas/ViewSummary"
            }
          }
        },
        "required": [
          "id",
          "title",
          "base_id",
          "workspace_id",
          "display_field_id",
          "fields",
          "views"
        ]
      },
      "BaseMember": {
        "type": "object",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "Unique identifier for the user."
          },
          "email": {
            "type": "string",
            "format": "email",
            "description": "Email address of the user."
          },
          "user_name": {
            "type": "string",
            "description": "Display name of the user."
          },
          "base_role": {
            "$ref": "#/components/schemas/BaseRoles"
          }
        },
        "required": [
          "user_id",
          "email",
          "created_at",
          "updated_at",
          "base_role"
        ]
      },
      "BaseMemberWithWorkspaceRole": {
        "type": "object",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "Unique identifier for the user."
          },
          "email": {
            "type": "string",
            "format": "email",
            "description": "Email address of the user."
          },
          "user_name": {
            "type": "string",
            "description": "Display name of the user."
          },
          "base_role": {
            "$ref": "#/components/schemas/BaseRoles"
          },
          "workspace_role": {
            "$ref": "#/components/schemas/WorkspaceRoles",
            "description": "Role assigned to the user in the workspace"
          }
        },
        "required": [
          "user_id",
          "email",
          "created_at",
          "updated_at",
          "base_role"
        ]
      },
      "BaseUserDeleteRequest": {},
      "BaseMemberList": {
        "type": "object",
        "properties": {
          "list": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BaseMember"
            }
          }
        },
        "required": [
          "users"
        ]
      },
      "BaseMemberCreate": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "base_role": {
              "$ref": "#/components/schemas/BaseRoles"
            }
          },
          "required": [
            "base_role"
          ],
          "oneOf": [
            {
              "title": "Invite User with ID",
              "required": [
                "base_role",
                "user_id"
              ],
              "properties": {
                "user_id": {
                  "type": "string",
                  "description": "Unique identifier for the user (skip if email is provided)"
                },
                "user_name": {
                  "type": "string",
                  "description": "Full name of the user."
                }
              }
            },
            {
              "title": "Invite User with Email",
              "required": [
                "base_role",
                "email"
              ],
              "properties": {
                "email": {
                  "type": "string",
                  "format": "email",
                  "description": "Email address of the user (skip if user_id is provided)"
                },
                "user_name": {
                  "type": "string",
                  "description": "Full name of the user."
                }
              }
            }
          ],
          "description": "An object representing a new member to be created."
        },
        "description": "Array of members to be created."
      },
      "BaseMemberUpdate": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "user_id": {
              "type": "string",
              "description": "Unique user identifier for the member."
            },
            "base_role": {
              "$ref": "#/components/schemas/BaseRoles"
            }
          },
          "required": [
            "user_id",
            "base_role"
          ],
          "description": "An object representing updates for an existing member."
        },
        "description": "Array of member updates."
      },
      "BaseMemberDelete": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "user_id": {
              "type": "string",
              "description": "User unique identifier for the member."
            }
          },
          "required": [
            "user_id"
          ]
        }
      },
      "TableMetaReq": {
        "type": "object",
        "properties": {
          "icon": {
            "type": "string",
            "description": "Icon prefix to the table name that needs to be displayed in-lieu of the default table icon."
          }
        }
      },
      "TableUpdate": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "New title of the table."
          },
          "description": {
            "type": "string",
            "description": "Description of the table."
          },
          "display_field_id": {
            "type": "string",
            "description": "Unique identifier for the display field of the table. The type of the field should be one of the allowed types for display field."
          },
          "meta": {
            "$ref": "#/components/schemas/TableMetaReq",
            "description": "Icon prefix to the table name that needs to be displayed in-lieu of the default table icon."
          }
        },
        "oneOf": [
          {
            "title": "Rename Table",
            "required": [
              "title"
            ]
          },
          {
            "title": "Update Table Description",
            "required": [
              "description"
            ]
          },
          {
            "title": "Update Display Field",
            "required": [
              "display_field_id"
            ]
          },
          {
            "title": "Update Table Icon",
            "required": [
              "meta"
            ]
          }
        ]
      },
      "Sort": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the sort.",
            "readOnly": true
          },
          "field_id": {
            "type": "string",
            "format": "uuid",
            "description": "Identifier for the field being sorted."
          },
          "direction": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ],
            "description": "Sorting direction, either 'asc' (ascending) or 'desc' (descending)."
          }
        },
        "required": [
          "id",
          "field_id",
          "direction"
        ]
      },
      "SortCreate": {
        "type": "object",
        "properties": {
          "field_id": {
            "type": "string",
            "description": "Identifier for the field being sorted."
          },
          "direction": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ],
            "description": "Sorting direction, either 'asc' (ascending) or 'desc' (descending)."
          }
        },
        "required": [
          "field_id"
        ]
      },
      "SortUpdate": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the sort."
          },
          "field_id": {
            "type": "string",
            "format": "uuid",
            "description": "Identifier for the field being sorted."
          },
          "direction": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ],
            "description": "Sorting direction, either 'asc' (ascending) or 'desc' (descending)."
          }
        },
        "required": [
          "id"
        ]
      },
      "ViewSummary": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "description": "Unique identifier for the view."
          },
          "title": {
            "type": "string",
            "description": "Name of the view."
          },
          "view_type": {
            "type": "string",
            "enum": [
              "grid",
              "gallery",
              "kanban",
              "calendar",
              "form"
            ],
            "description": "Type of the view."
          }
        }
      },
      "ViewAggregationEnum": {
        "type": "string",
        "enum": [
          "sum",
          "min",
          "max",
          "avg",
          "median",
          "std_dev",
          "range",
          "count",
          "count_empty",
          "count_filled",
          "count_unique",
          "percent_empty",
          "percent_filled",
          "percent_unique",
          "none",
          "attachment_size",
          "checked",
          "unchecked",
          "percent_checked",
          "percent_unchecked",
          "earliest_date",
          "latest_date",
          "date_range",
          "month_range"
        ]
      },
      "ViewList": {
        "type": "object",
        "properties": {
          "list": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the view."
                },
                "table_id": {
                  "type": "string",
                  "description": "Id of table associated with the view."
                },
                "title": {
                  "type": "string",
                  "description": "Title of the view."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Description of the view."
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "grid",
                    "gallery",
                    "kanban",
                    "calendar",
                    "form"
                  ],
                  "description": "Type of the view."
                },
                "lock_type": {
                  "type": "string",
                  "enum": [
                    "collaborative",
                    "locked",
                    "personal"
                  ],
                  "description": "View configuration edit state."
                },
                "created_by": {
                  "type": "string",
                  "description": "User ID of the creator."
                },
                "owned_by": {
                  "type": "string",
                  "description": "User ID of the owner. Applicable only for personal views."
                },
                "created_at": {
                  "type": "string",
                  "format": "date-time",
                  "description": "Timestamp of creation."
                },
                "updated_at": {
                  "type": "string",
                  "format": "date-time",
                  "description": "Timestamp of last update."
                }
              },
              "required": [
                "id",
                "title",
                "type",
                "lock_type",
                "created_at",
                "updated_at",
                "created_by"
              ]
            }
          }
        },
        "required": [
          "list"
        ]
      },
      "ViewBase": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the view."
          },
          "type": {
            "type": "string",
            "enum": [
              "grid",
              "gallery",
              "kanban",
              "calendar"
            ],
            "description": "Type of the view. \n\nNote: Form view via API is not supported currently"
          },
          "lock_type": {
            "type": "string",
            "enum": [
              "collaborative",
              "locked",
              "personal"
            ],
            "description": "Lock type of the view.\n\n Note: Assigning view as personal using API is not supported currently",
            "default": "collaborative"
          },
          "description": {
            "type": "string",
            "description": "Description of the view."
          }
        },
        "required": [
          "title",
          "type"
        ]
      },
      "ViewBaseInUpdate": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the view."
          },
          "lock_type": {
            "type": "string",
            "enum": [
              "collaborative",
              "locked",
              "personal"
            ],
            "description": "Lock type of the view.\n\n Note: Assigning view as personal using API is not supported currently",
            "default": "collaborative"
          },
          "description": {
            "type": "string",
            "description": "Description of the view."
          }
        }
      },
      "ViewFields": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "field_id": {
              "type": "string",
              "description": "Unique identifier for the field."
            },
            "show": {
              "type": "boolean",
              "description": "Indicates whether the field should be displayed in the view."
            },
            "width": {
              "type": "integer",
              "description": "Width of the field in pixels.\n\n **Applicable only for grid view.**"
            },
            "aggregation": {
              "$ref": "#/components/schemas/ViewAggregationEnum",
              "description": "Aggregation function to be applied to the field.\n\n **Applicable only for grid view.**"
            }
          },
          "required": [
            "field_id",
            "show"
          ]
        },
        "description": "List of fields to be displayed in the view. \n\n- If not specified, all fields are displayed by default.\n- If an empty array is provided, only the display value field will be shown.\n- In case of partial list, fields not included in the list will be excluded from the view."
      },
      "ViewRowColour": {
        "type": "object",
        "oneOf": [
          {
            "type": "object",
            "title": "conditions",
            "properties": {
              "mode": {
                "type": "string",
                "enum": [
                  "filter"
                ],
                "description": "Mode of row coloring. In this mode, the color is selected based on conditions applied to the fields."
              },
              "conditions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "apply_as_row_background": {
                      "type": "boolean"
                    },
                    "color": {
                      "type": "string"
                    },
                    "filters": {
                      "$ref": "#/components/schemas/FilterCreateUpdate"
                    }
                  }
                }
              }
            },
            "required": [
              "mode",
              "conditions"
            ]
          },
          {
            "type": "object",
            "title": "select",
            "properties": {
              "mode": {
                "type": "string",
                "enum": [
                  "select"
                ],
                "description": "Mode of row coloring. In this mode, the color is selected based on a single select field."
              },
              "field_id": {
                "type": "string",
                "description": "Single select field ID to be used for colouring rows in the view."
              },
              "apply_as_row_background": {
                "type": "boolean",
                "description": "Whether to additionally apply the color as row background."
              }
            },
            "required": [
              "mode",
              "field_id"
            ]
          }
        ],
        "discriminator": {
          "propertyName": "mode"
        }
      },
      "ViewOptionsGrid": {
        "type": "object",
        "properties": {
          "groups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "field_id": {
                  "type": "string",
                  "description": "Identifier for the field being sorted."
                },
                "direction": {
                  "type": "string",
                  "enum": [
                    "asc",
                    "desc"
                  ],
                  "description": "Direction of the group, either 'asc' (ascending) or 'desc' (descending).",
                  "default": "asc"
                }
              },
              "required": [
                "field_id"
              ]
            },
            "description": "List of groups to be applied on the grid view."
          },
          "row_height": {
            "type": "string",
            "enum": [
              "short",
              "medium",
              "tall",
              "extra"
            ],
            "description": "Height of the rows in the grid view.",
            "default": "short"
          }
        }
      },
      "ViewOptionsKanban": {
        "type": "object",
        "properties": {
          "stack_by": {
            "type": "object",
            "properties": {
              "field_id": {
                "type": "string",
                "description": "Single select field ID to be used for stacking cards in kanban view."
              },
              "stack_order": {
                "type": "array",
                "description": "Order of the stacks in kanban view. If not provided, the order will be determined by options listed in associated field.\n\nExample: ```stack_order: ['option1', 'option2', 'option3']```",
                "items": {
                  "type": "string"
                }
              }
            },
            "required": [
              "field_id"
            ]
          },
          "cover_field_id": {
            "type": "string",
            "description": "Attachment field ID to be used as cover image in kanban view. If not provided, cover field configuration is skipped."
          }
        },
        "required": [
          "stack_by"
        ]
      },
      "ViewOptionsCalendar": {
        "type": "object",
        "properties": {
          "date_ranges": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "start_date_field_id": {
                  "type": "string",
                  "description": "Date field ID to be used as start date in calendar view."
                },
                "end_date_field_id": {
                  "type": "string",
                  "description": "Date field ID to be used as end date in calendar view."
                }
              },
              "required": [
                "start_date_field_id"
              ]
            }
          }
        },
        "required": [
          "date_ranges"
        ]
      },
      "ViewOptionsGallery": {
        "type": "object",
        "properties": {
          "cover_field_id": {
            "type": "string",
            "description": "Attachment field ID to be used as cover image in gallery view. Is optional, if not provided, the first attachment field will be used."
          }
        }
      },
      "ViewOptionsForm": {
        "type": "object",
        "properties": {
          "form_title": {
            "type": "string",
            "description": "Heading for the form."
          },
          "form_description": {
            "type": "string",
            "description": "Subheading for the form."
          },
          "thank_you_message": {
            "type": "string",
            "description": "Success message shown after form submission."
          },
          "form_redirect_after_secs": {
            "type": "integer",
            "description": "Seconds to wait before redirecting."
          },
          "show_submit_another_button": {
            "type": "boolean",
            "description": "Whether to show another form after submission."
          },
          "reset_form_after_submit": {
            "type": "boolean",
            "description": "Whether to show a blank form after submission."
          },
          "form_hide_banner": {
            "type": "boolean",
            "description": "Whether to hide the banner on the form."
          },
          "form_hide_branding": {
            "type": "boolean",
            "description": "Whether to hide branding on the form."
          },
          "banner": {
            "type": "string",
            "format": "uri",
            "description": "URL of the banner image for the form."
          },
          "logo": {
            "type": "string",
            "format": "uri",
            "description": "URL of the logo for the form."
          },
          "form_background_color": {
            "type": "string",
            "description": "Background color for the form.",
            "pattern": "^#[0-9A-Fa-f]{6}$"
          },
          "redirect_url": {
            "type": "string",
            "format": "uri",
            "description": "URL to redirect to after form submission."
          }
        }
      },
      "ViewCreate": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ViewBase"
          },
          {
            "oneOf": [
              {
                "type": "object",
                "title": "grid",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "grid"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsGrid"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                }
              },
              {
                "type": "object",
                "title": "gallery",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "gallery"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsGallery"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                }
              },
              {
                "type": "object",
                "title": "kanban",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "kanban"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsKanban"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                },
                "required": [
                  "options"
                ]
              },
              {
                "type": "object",
                "title": "calendar",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "calendar"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsCalendar"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                },
                "required": [
                  "options"
                ]
              }
            ],
            "discriminator": {
              "propertyName": "type"
            }
          }
        ]
      },
      "ViewUpdate": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ViewBaseInUpdate"
          },
          {
            "oneOf": [
              {
                "type": "object",
                "title": "grid",
                "properties": {
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsGrid"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                }
              },
              {
                "type": "object",
                "title": "gallery",
                "properties": {
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsGallery"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                }
              },
              {
                "type": "object",
                "title": "kanban",
                "properties": {
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsKanban"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                }
              },
              {
                "type": "object",
                "title": "calendar",
                "properties": {
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsCalendar"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                }
              }
            ],
            "discriminator": {
              "propertyName": "type"
            }
          }
        ]
      },
      "View": {
        "type": "object",
        "allOf": [
          {
            "properties": {
              "id": {
                "type": "string",
                "description": "Unique identifier for the view."
              },
              "table_id": {
                "type": "string",
                "description": "Id of table associated with the view."
              }
            },
            "required": [
              "id"
            ]
          },
          {
            "$ref": "#/components/schemas/ViewBase"
          },
          {
            "properties": {
              "created_by": {
                "type": "string",
                "description": "User ID of the creator."
              },
              "owned_by": {
                "type": "string",
                "description": "User ID of the owner."
              },
              "created_at": {
                "type": "string",
                "format": "date-time",
                "description": "Timestamp of creation."
              },
              "updated_at": {
                "type": "string",
                "format": "date-time",
                "description": "Timestamp of last update."
              }
            }
          },
          {
            "oneOf": [
              {
                "type": "object",
                "title": "grid",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "grid"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsGrid"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                }
              },
              {
                "type": "object",
                "title": "gallery",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "gallery"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsGallery"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                }
              },
              {
                "type": "object",
                "title": "kanban",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "kanban"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsKanban"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                },
                "required": [
                  "options"
                ]
              },
              {
                "type": "object",
                "title": "calendar",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "calendar"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/ViewOptionsCalendar"
                  },
                  "sorts": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/SortCreate"
                    },
                    "description": "List of sorts to be applied to the view."
                  },
                  "filters": {
                    "$ref": "#/components/schemas/FilterCreateUpdate"
                  },
                  "fields": {
                    "$ref": "#/components/schemas/ViewFields"
                  },
                  "row_coloring": {
                    "$ref": "#/components/schemas/ViewRowColour",
                    "description": "Row colour configuration for the the view."
                  }
                },
                "required": [
                  "options"
                ]
              }
            ],
            "discriminator": {
              "propertyName": "type"
            }
          }
        ]
      },
      "FieldBase": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the field.",
            "readOnly": true,
            "writeOnly": false
          },
          "title": {
            "type": "string",
            "description": "Title of the field."
          },
          "type": {
            "type": "string",
            "enum": [
              "SingleLineText",
              "LongText",
              "PhoneNumber",
              "URL",
              "Email",
              "Number",
              "Decimal",
              "Currency",
              "Percent",
              "Duration",
              "Date",
              "DateTime",
              "Time",
              "SingleSelect",
              "MultiSelect",
              "Rating",
              "Checkbox",
              "Attachment",
              "Geometry",
              "Links",
              "Lookup",
              "Rollup",
              "Button",
              "Formula",
              "Barcode",
              "Year",
              "QrCode",
              "CreatedTime",
              "LastModifiedTime",
              "CreatedBy",
              "LastModifiedBy",
              "LinkToAnotherRecord",
              "User",
              "JSON"
            ],
            "description": "Field data type."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Description of the field."
          },
          "default_value": {
            "type": [
              "string",
              "boolean",
              "number"
            ],
            "description": "Default value for the field. Applicable for SingleLineText, LongText, PhoneNumber, URL, Email, Number, Decimal, Currency, Percent, Duration, Date, DateTime, Time, SingleSelect, MultiSelect, Rating, Checkbox, User and JSON fields."
          },
          "unique": {
            "type": "boolean",
            "description": "Enable unique constraint for the field. When enabled, the field will only accept unique values (no duplicates allowed). Note: Unique constraint is only supported for NC-DB (not external databases) and is mutually exclusive with default values. Supported field types: SingleLineText, PhoneNumber, URL, Email, Number, Decimal, Currency, Percent, Date, DateTime and Time"
          }
        },
        "required": [
          "title"
        ]
      },
      "FieldBaseCreate": {
        "allOf": [
          {
            "$ref": "#/components/schemas/FieldBase"
          },
          {
            "required": [
              "title",
              "type"
            ]
          }
        ]
      },
      "TableFieldBaseCreate": {
        "allOf": [
          {
            "$ref": "#/components/schemas/FieldBase"
          },{
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "SingleLineText",
                  "LongText",
                  "PhoneNumber",
                  "URL",
                  "Email",
                  "Number",
                  "Decimal",
                  "Currency",
                  "Percent",
                  "Duration",
                  "Date",
                  "DateTime",
                  "Time",
                  "SingleSelect",
                  "MultiSelect",
                  "Rating",
                  "Checkbox",
                  "Attachment",
                  "Geometry",
                  "Links",
                  "LinkToAnotherRecord",
                  "Button",
                  "Formula",
                  "Year",
                  "CreatedTime",
                  "LastModifiedTime",
                  "CreatedBy",
                  "LastModifiedBy",
                  "User",
                  "JSON"
                ],
                "description": "Field data type."
              }
            }
          },
          {
            "required": [
              "title",
              "type"
            ]
          }
        ]
      },
      "FieldOptions_LongText": {
        "type": "object",
        "title": "LongText",
        "properties": {
          "rich_text": {
            "type": "boolean",
            "description": "Enable rich text formatting."
          },
          "generate_text_using_ai": {
            "type": "boolean",
            "description": "Enable text generation for this field using NocoAI."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_PhoneNumber": {
        "type": "object",
        "title": "PhoneNumber",
        "properties": {
          "validation": {
            "type": "boolean",
            "description": "Enable validation for phone numbers."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_URL": {
        "type": "object",
        "title": "URL",
        "properties": {
          "validation": {
            "type": "boolean",
            "description": "Enable validation for URL."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Email": {
        "type": "object",
        "title": "Email",
        "properties": {
          "validation": {
            "type": "boolean",
            "description": "Enable validation for Email."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Number": {
        "type": "object",
        "title": "Number",
        "properties": {
          "locale_string": {
            "type": "boolean",
            "description": "Show thousand separator on the UI."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Decimal": {
        "type": "object",
        "title": "Decimal",
        "properties": {
          "precision": {
            "type": "number",
            "description": "Decimal field precision. Defaults to 0",
            "minimum": 0,
            "maximum": 5
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Currency": {
        "type": "object",
        "title": "Currency",
        "description": "Currency settings for this column. Locale defaults to `en-US` and currency code defaults to `USD`",
        "properties": {
          "locale": {
            "type": "string",
            "description": "Locale for currency formatting. Refer https://simplelocalize.io/data/locales/"
          },
          "code": {
            "type": "string",
            "description": "Currency code. Refer https://simplelocalize.io/data/locales/",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUP",
              "CVE",
              "CYP",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EEK",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHC",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MTL",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "ROL",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDD",
              "SEK",
              "SGD",
              "SHP",
              "SIT",
              "SKK",
              "SLL",
              "SOS",
              "SRD",
              "STD",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMM",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYU",
              "UZS",
              "VEB",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFO",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMK",
              "ZWD"
            ]
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Percent": {
        "type": "object",
        "title": "Percent",
        "properties": {
          "show_as_progress": {
            "type": "boolean",
            "description": "Display as a progress bar."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Duration": {
        "type": "object",
        "title": "Duration",
        "properties": {
          "duration_format": {
            "type": "string",
            "description": "Duration format. Supported options are listed below\n- `h:mm`\n- `h:mm:ss`\n- `h:mm:ss.S`\n- `h:mm:ss.SS`\n- `h:mm:ss.SSS`"
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_DateTime": {
        "type": "object",
        "title": "DateTime",
        "properties": {
          "date_format": {
            "type": "string",
            "description": "Date format. Supported options are listed below\n- `YYYY/MM/DD`\n- `YYYY-MM-DD`\n- `YYYY MM DD`\n- `DD/MM/YYYY`\n- `DD-MM-YYYY`\n- `DD MM YYYY`\n- `MM/DD/YYYY`\n- `MM-DD-YYYY`\n- `MM DD YYYY`\n- `YYYY-MM`\n- `YYYY MM`"
          },
          "time_format": {
            "type": "string",
            "description": "Time format. Supported options are listed below\n- `HH:mm`\n- `HH:mm:ss`\n- `HH:mm:ss.SSS`"
          },
          "12hr_format": {
            "type": "boolean",
            "description": "Use 12-hour time format."
          },
          "display_timezone": {
            "type": "boolean",
            "description": "Display timezone."
          },
          "timezone": {
            "type": "string",
            "description": "Timezone. Refer to https://en.wikipedia.org/wiki/List_of_tz_database_time_zones"
          },
          "use_same_timezone_for_all": {
            "type": "boolean",
            "description": "Use same timezone for all records."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Date": {
        "type": "object",
        "title": "Date",
        "properties": {
          "date_format": {
            "type": "string",
            "description": "Date format. Supported options are listed below\n- `YYYY/MM/DD`\n- `YYYY-MM-DD`\n- `YYYY MM DD`\n- `DD/MM/YYYY`\n- `DD-MM-YYYY`\n- `DD MM YYYY`\n- `MM/DD/YYYY`\n- `MM-DD-YYYY`\n- `MM DD YYYY`\n- `YYYY-MM`\n- `YYYY MM`"
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Time": {
        "type": "object",
        "title": "Time",
        "properties": {
          "12hr_format": {
            "type": "boolean",
            "description": "Use 12-hour time format."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Select": {
        "type": "object",
        "title": "Single & MultiSelect",
        "properties": {
          "choices": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "title": {
                  "type": "string",
                  "description": "Choice title."
                },
                "color": {
                  "type": "string",
                  "description": "Specifies the tile color for the choice using a hexadecimal color code (e.g., `#36BFFF`).",
                  "pattern": "^#[0-9A-Fa-f]{6}$"
                }
              },
              "required": [
                "title"
              ]
            },
            "uniqueItems": true
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Rating": {
        "type": "object",
        "title": "Rating",
        "properties": {
          "icon": {
            "type": "string",
            "enum": [
              "star",
              "heart",
              "circle-filled",
              "thumbs-up",
              "flag"
            ],
            "description": "Icon to display rating on the UI. Supported options are listed below\n- `star`\n- `heart`\n- `circle-filled`\n- `thumbs-up`\n- `flag`"
          },
          "max_value": {
            "type": "integer",
            "description": "Maximum value for the rating. Allowed range: 1-10.",
            "minimum": 1,
            "maximum": 10
          },
          "color": {
            "type": "string",
            "description": "Specifies icon color using a hexadecimal color code (e.g., `#36BFFF`).",
            "pattern": "^#[0-9A-Fa-f]{6}$"
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Checkbox": {
        "type": "object",
        "title": "Checkbox",
        "properties": {
          "icon": {
            "type": "string",
            "enum": [
              "square",
              "circle-check",
              "circle-filled",
              "star",
              "heart",
              "thumbs-up",
              "flag"
            ],
            "description": "Icon to display checkbox on the UI. Supported options are listed below\n- `square`\n- `circle-check`\n- `circle-filled`\n- `star`\n- `heart`\n- `thumbs-up`\n- `flag`"
          },
          "color": {
            "type": "string",
            "description": "Specifies icon color using a hexadecimal color code (e.g., `#36BFFF`).",
            "pattern": "^#[0-9A-Fa-f]{6}$"
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Barcode": {
        "type": "object",
        "title": "Barcode",
        "properties": {
          "format": {
            "type": "string",
            "description": "Barcode format (e.g., CODE128)."
          },
          "barcode_value_field_id": {
            "type": "string",
            "description": "Field ID that contains the value."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_QrCode": {
        "type": "object",
        "title": "QrCode",
        "properties": {
          "qrcode_value_field_id": {
            "type": "string",
            "description": "Field ID that contains the value."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Formula": {
        "type": "object",
        "title": "Formula",
        "properties": {
          "formula": {
            "type": "string",
            "description": "Formula expression."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_User": {
        "type": "object",
        "title": "User",
        "properties": {
          "allow_multiple_users": {
            "type": "boolean",
            "description": "Allow selecting multiple users."
          }
        },
        "additionalProperties": false
      },
      "FieldOptions_Lookup": {
        "type": "object",
        "title": "Lookup",
        "properties": {
          "related_field_id": {
            "type": "string",
            "description": "Linked field ID. Can be of type Links or LinkToAnotherRecord"
          },
          "related_table_lookup_field_id": {
            "type": "string",
            "description": "Lookup field ID in the linked table."
          }
        },
        "required": [
          "related_field_id",
          "related_table_lookup_field_id"
        ],
        "additionalProperties": false
      },
      "FieldOptions_Rollup": {
        "type": "object",
        "title": "Rollup",
        "properties": {
          "related_field_id": {
            "type": "string",
            "description": "Linked field ID."
          },
          "related_table_rollup_field_id": {
            "type": "string",
            "description": "Rollup field ID in the linked table."
          },
          "rollup_function": {
            "type": "string",
            "description": "Rollup function.",
            "enum": [
              "count",
              "min",
              "max",
              "avg",
              "sum",
              "countDistinct",
              "sumDistinct",
              "avgDistinct"
            ]
          }
        },
        "required": [
          "related_field_id",
          "related_table_rollup_field_id",
          "rollup_function"
        ],
        "additionalProperties": false
      },
      "FieldOptions_Button": {
        "type": "object",
        "title": "Button",
        "oneOf": [
          {
            "title": "Formula Button",
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "formula"
                ],
                "description": "Button type: formula"
              },
              "formula": {
                "type": "string",
                "description": "Formula to execute"
              },
              "label": {
                "type": "string",
                "description": "Label of the button"
              },
              "icon": {
                "type": "string",
                "description": "Icon of the button"
              },
              "color": {
                "type": "string",
                "enum": [
                  "brand",
                  "red",
                  "green",
                  "maroon",
                  "blue",
                  "orange",
                  "pink",
                  "purple",
                  "yellow",
                  "gray"
                ],
                "description": "Color of the button"
              },
              "theme": {
                "type": "string",
                "enum": [
                  "solid",
                  "light",
                  "text"
                ],
                "description": "Theme of the button"
              }
            },
            "required": [
              "type",
              "formula"
            ],
            "additionalProperties": false
          },
          {
            "title": "Webhook Button",
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "webhook"
                ],
                "description": "Button type: webhook"
              },
              "button_hook_id": {
                "type": "string",
                "description": "ID of the webhook to trigger"
              },
              "label": {
                "type": "string",
                "description": "Label of the button"
              },
              "icon": {
                "type": "string",
                "description": "Icon of the button"
              },
              "color": {
                "type": "string",
                "enum": [
                  "brand",
                  "red",
                  "green",
                  "maroon",
                  "blue",
                  "orange",
                  "pink",
                  "purple",
                  "yellow",
                  "gray"
                ],
                "description": "Color of the button"
              },
              "theme": {
                "type": "string",
                "enum": [
                  "solid",
                  "light",
                  "text"
                ],
                "description": "Theme of the button"
              }
            },
            "required": [
              "type",
              "button_hook_id"
            ],
            "additionalProperties": false
          },
          {
            "title": "AI Button",
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "ai"
                ],
                "description": "Button type: AI"
              },
              "prompt": {
                "type": "string",
                "description": "AI prompt to execute"
              },
              "integration_id": {
                "type": "string",
                "description": "Integration ID for AI service"
              },
              "theme": {
                "type": "string",
                "enum": [
                  "solid",
                  "light",
                  "text"
                ],
                "description": "Theme of the button"
              },
              "output_column_ids": {
                "type": "string",
                "description": "IDs of columns where AI output should be stored"
              },
              "label": {
                "type": "string",
                "description": "Label of the button"
              },
              "icon": {
                "type": "string",
                "description": "Icon of the button"
              },
              "color": {
                "type": "string",
                "enum": [
                  "brand",
                  "red",
                  "green",
                  "maroon",
                  "blue",
                  "orange",
                  "pink",
                  "purple",
                  "yellow",
                  "gray"
                ],
                "description": "Color of the button"
              }
            },
            "required": [
              "type",
              "prompt",
              "integration_id"
            ],
            "additionalProperties": false
          },
          {
            "title": "Script Button",
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "script"
                ],
                "description": "Button type: script"
              },
              "script_id": {
                "type": "string",
                "description": "ID of the script to trigger"
              },
              "label": {
                "type": "string",
                "description": "Label of the button"
              },
              "icon": {
                "type": "string",
                "description": "Icon of the button"
              },
              "color": {
                "type": "string",
                "enum": [
                  "brand",
                  "red",
                  "green",
                  "maroon",
                  "blue",
                  "orange",
                  "pink",
                  "purple",
                  "yellow",
                  "gray"
                ],
                "description": "Color of the button"
              },
              "theme": {
                "type": "string",
                "enum": [
                  "solid",
                  "light",
                  "text"
                ],
                "description": "Theme of the button"
              }
            },
            "required": [
              "type",
              "script_id"
            ],
            "additionalProperties": false
          }
        ],
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "formula": "#/components/schemas/FieldOptions_Button/oneOf/0",
            "webhook": "#/components/schemas/FieldOptions_Button/oneOf/1",
            "ai": "#/components/schemas/FieldOptions_Button/oneOf/2",
            "script": "#/components/schemas/FieldOptions_Button/oneOf/3"
          }
        }
      },
      "FieldOptions_Links": {
        "type": "object",
        "title": "Links",
        "properties": {
          "relation_type": {
            "type": "string",
            "description": "Type of relationship.\n\nSupported options are listed below\n- `mm` many-to-many\n- `hm` has-many\n- `oo` one-to-one"
          },
          "related_table_id": {
            "type": "string",
            "description": "Identifier of the linked table."
          }
        },
        "required": [
          "relation_type",
          "related_table_id"
        ],
        "additionalProperties": false
      },
      "FieldOptions_LinkToAnotherRecord": {
        "type": "object",
        "title": "LinkToAnotherRecord",
        "properties": {
          "relation_type": {
            "type": "string",
            "description": "Type of relationship.\n\nSupported options are listed below\n- `mm` many-to-many\n- `hm` has-many\n- `oo` one-to-one"
          },
          "related_table_id": {
            "type": "string",
            "description": "Identifier of the linked table."
          }
        },
        "required": [
          "relation_type",
          "related_table_id"
        ],
        "additionalProperties": false
      },
      "Field": {
        "allOf": [
          {
            "$ref": "#/components/schemas/FieldBase"
          },
          {
            "oneOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "SingleLineText"
                    ]
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "LongText"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_LongText"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "PhoneNumber",
                      "URL",
                      "Email"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_PhoneNumber"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Number",
                      "Decimal"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Number"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "JSON"
                    ]
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Currency"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Currency"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Percent"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Percent"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Duration"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Duration"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Date",
                      "DateTime",
                      "Time"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_DateTime"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "SingleSelect",
                      "MultiSelect"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Select"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Rating",
                      "Checkbox"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Rating"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Barcode"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Barcode"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Formula"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Formula"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "User"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_User"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Lookup"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Lookup"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "Links"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Links"
                  }
                }
              },
              {
                "properties": {
                  "type": {
                    "enum": [
                      "LinkToAnotherRecord"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_LinkToAnotherRecord"
                  }
                }
              }
            ]
          }
        ]
      },
      "FilterCreateUpdate": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/Filter"
          },
          {
            "$ref": "#/components/schemas/FilterGroup"
          }
        ]
      },
      "FieldUpdate": {
        "allOf": [
          {
            "$ref": "#/components/schemas/FieldBase"
          },
          {
            "oneOf": [
              {
                "$ref": "#/components/schemas/FieldOptions/SingleLineText"
              },
              {
                "title": "LongText",
                "properties": {
                  "type": {
                    "enum": [
                      "LongText"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_LongText"
                  }
                }
              },
              {
                "title": "PhoneNumber",
                "properties": {
                  "type": {
                    "enum": [
                      "PhoneNumber",
                      "URL",
                      "Email"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_PhoneNumber"
                  }
                }
              },
              {
                "title": "Number / Decimal",
                "properties": {
                  "type": {
                    "enum": [
                      "Number",
                      "Decimal"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Number"
                  }
                }
              },
              {
                "title": "JSON",
                "properties": {
                  "type": {
                    "enum": [
                      "JSON"
                    ]
                  }
                }
              },
              {
                "title": "Currency",
                "properties": {
                  "type": {
                    "enum": [
                      "Currency"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Currency"
                  }
                }
              },
              {
                "title": "Percent",
                "properties": {
                  "type": {
                    "enum": [
                      "Percent"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Percent"
                  }
                }
              },
              {
                "title": "Duration",
                "properties": {
                  "type": {
                    "enum": [
                      "Duration"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Duration"
                  }
                }
              },
              {
                "title": "Date / DateTime",
                "properties": {
                  "type": {
                    "enum": [
                      "Date",
                      "DateTime",
                      "Time"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_DateTime"
                  }
                }
              },
              {
                "title": "Single / MultiSelect",
                "properties": {
                  "type": {
                    "enum": [
                      "SingleSelect",
                      "MultiSelect"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Select"
                  }
                }
              },
              {
                "title": "Checkbox",
                "properties": {
                  "type": {
                    "enum": [
                      "Checkbox"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Checkbox"
                  }
                }
              },
              {
                "title": "Rating",
                "properties": {
                  "type": {
                    "enum": [
                      "Rating"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Rating"
                  }
                }
              },
              {
                "title": "Barcode",
                "properties": {
                  "type": {
                    "enum": [
                      "Barcode"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Barcode"
                  }
                }
              },
              {
                "title": "Formula",
                "properties": {
                  "type": {
                    "enum": [
                      "Formula"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Formula"
                  }
                }
              },
              {
                "title": "User",
                "properties": {
                  "type": {
                    "enum": [
                      "User"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_User"
                  }
                }
              },
              {
                "title": "Lookup",
                "properties": {
                  "type": {
                    "enum": [
                      "Lookup"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Lookup"
                  }
                }
              },
              {
                "title": "Links",
                "properties": {
                  "type": {
                    "enum": [
                      "Links"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_Links"
                  }
                }
              },
              {
                "title": "LinkToAnotherRecord",
                "properties": {
                  "type": {
                    "enum": [
                      "LinkToAnotherRecord"
                    ]
                  },
                  "options": {
                    "$ref": "#/components/schemas/FieldOptions_LinkToAnotherRecord"
                  }
                }
              }
            ]
          }
        ]
      },
      "Filter": {
        "type": "object",
        "title": "Filter",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the filter.",
            "readOnly": true
          },
          "parent_id": {
            "type": "string",
            "description": "Parent ID of the filter, specifying this filters group association. Defaults to **root**."
          },
          "field_id": {
            "type": "string",
            "description": "Field ID to which this filter applies."
          },
          "operator": {
            "type": "string",
            "description": "Primary comparison operator (e.g., eq, gt, lt)."
          },
          "sub_operator": {
            "type": [
              "string",
              "null"
            ],
            "description": "Secondary comparison operator (if applicable)."
          },
          "value": {
            "type": [
              "string",
              "number",
              "boolean",
              "null"
            ],
            "description": "Value for comparison."
          }
        },
        "required": [
          "field_id",
          "operator"
        ]
      },
      "FilterListResponse": {
        "type": "object",
        "properties": {
          "list": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FilterGroup"
            },
            "description": "List of filter groups. Initial set of filters are mapped to a default group with group-id set to **root**."
          }
        },
        "required": [
          "list"
        ]
      },
      "FilterGroupLevel3": {
        "type": "object",
        "properties": {
          "group_operator": {
            "type": "string",
            "enum": [
              "AND",
              "OR"
            ],
            "description": "Logical operator for the group."
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Filter"
            },
            "description": "List of filters in this group."
          }
        },
        "required": [
          "group_operator",
          "filters"
        ]
      },
      "FilterGroupLevel2": {
        "type": "object",
        "properties": {
          "group_operator": {
            "type": "string",
            "enum": [
              "AND",
              "OR"
            ],
            "description": "Logical operator for the group."
          },
          "filters": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/Filter"
                },
                {
                  "$ref": "#/components/schemas/FilterGroupLevel3"
                }
              ]
            },
            "description": "List of filters or nested filter groups at level 3."
          }
        },
        "required": [
          "group_operator",
          "filters"
        ]
      },
      "FilterGroupLevel1": {
        "type": "object",
        "properties": {
          "group_operator": {
            "type": "string",
            "enum": [
              "AND",
              "OR"
            ],
            "description": "Logical operator for the group."
          },
          "filters": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/Filter"
                },
                {
                  "$ref": "#/components/schemas/FilterGroupLevel2"
                }
              ]
            },
            "description": "List of filters or nested filter groups at level 2."
          }
        },
        "required": [
          "group_operator",
          "filters"
        ]
      },
      "FilterGroup": {
        "type": "object",
        "title": "FilterGroup",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the group.",
            "readOnly": true
          },
          "parent_id": {
            "type": "string",
            "description": "Parent ID of this filter-group."
          },
          "group_operator": {
            "type": "string",
            "enum": [
              "AND",
              "OR"
            ],
            "description": "Logical operator for combining filters in the group."
          },
          "filters": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Filter"
                },
                {
                  "$ref": "#/components/schemas/FilterGroup"
                }
              ]
            },
            "description": "Nested filters or filter groups."
          }
        },
        "required": [
          "id",
          "group_operator",
          "filters"
        ]
      },
      "FilterCreate": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/Filter"
          },
          {
            "$ref": "#/components/schemas/FilterGroupLevel1"
          }
        ]
      },
      "FilterUpdate": {
        "allOf": [
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Unique identifier for the filter."
              }
            },
            "required": [
              "id"
            ]
          },
          {
            "oneOf": [
              {
                "$ref": "#/components/schemas/Filter"
              },
              {
                "$ref": "#/components/schemas/FilterGroup"
              }
            ]
          }
        ]
      },
      "SortListResponse": {
        "type": "object",
        "properties": {
          "list": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Sort"
            }
          }
        },
        "required": [
          "list"
        ]
      },
      "DataRecordV3": {
        "type": "object",
        "description": "V3 Data Record format with id and fields separation",
        "properties": {
          "id": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              }
            ],
            "description": "Record identifier (primary key value)"
          },
          "fields": {
            "type": "object",
            "description": "Record fields data (excluding primary key). Undefined when empty.",
            "additionalProperties": true
          }
        },
        "required": [
          "id"
        ]
      },
      "DataRecordWithDeletedV3": {
        "allOf": [
          {
            "$ref": "#/components/schemas/DataRecordV3"
          },
          {
            "type": "object",
            "properties": {
              "deleted": {
                "type": "boolean",
                "description": "Indicates if the record was deleted"
              }
            },
            "required": [
              "deleted"
            ]
          }
        ]
      },
      "DataListResponseV3": {
        "type": "object",
        "description": "V3 Data List Response format",
        "properties": {
          "records": {
            "type": "array",
            "description": "Array of records for has-many and many-to-many relationships",
            "items": {
              "$ref": "#/components/schemas/DataRecordV3"
            }
          },
          "next": {
            "type": [
              "string",
              "null"
            ],
            "description": "Pagination token for next page"
          },
          "prev": {
            "type": [
              "string",
              "null"
            ],
            "description": "Pagination token for previous page"
          },
          "nestedNext": {
            "type": [
              "string",
              "null"
            ],
            "description": "Nested pagination token for next page"
          },
          "nestedPrev": {
            "type": [
              "string",
              "null"
            ],
            "description": "Nested pagination token for previous page"
          }
        }
      },
      "DataInsertRequestV3": {
        "type": "object",
        "description": "V3 Data Insert Request format",
        "properties": {
          "fields": {
            "type": "object",
            "description": "Record fields data",
            "additionalProperties": true
          }
        },
        "required": [
          "fields"
        ]
      },
      "DataUpdateRequestV3": {
        "type": "object",
        "description": "V3 Data Update Request format",
        "properties": {
          "id": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              }
            ],
            "description": "Record identifier"
          },
          "fields": {
            "type": "object",
            "description": "Record fields data to update",
            "additionalProperties": true
          }
        },
        "required": [
          "id",
          "fields"
        ]
      },
      "DataDeleteRequestV3": {
        "type": "object",
        "description": "Single record delete request",
        "properties": {
          "id": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              }
            ],
            "description": "Record identifier"
          }
        },
        "required": [
          "id"
        ]
      },
      "DataInsertResponseV3": {
        "type": "object",
        "description": "V3 Data Insert Response format",
        "properties": {
          "records": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataRecordV3"
            },
            "description": "Array of created records"
          }
        },
        "required": [
          "records"
        ]
      },
      "DataUpdateResponseV3": {
        "type": "object",
        "description": "V3 Data Update Response format",
        "properties": {
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "number"
                    }
                  ],
                  "description": "Updated record identifier"
                },
                "fields": {
                  "type": "object",
                  "description": "Record fields data (excluding primary key). Undefined when empty.",
                  "additionalProperties": true
                }
              },
              "required": [
                "id"
              ]
            },
            "description": "Array of updated record identifiers"
          }
        },
        "required": [
          "records"
        ]
      },
      "DataDeleteResponseV3": {
        "type": "object",
        "description": "V3 Data Delete Response format",
        "properties": {
          "records": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataRecordWithDeletedV3"
            },
            "description": "Array of deleted records"
          }
        },
        "required": [
          "records"
        ]
      },
      "DataReadResponseV3": {
        "$ref": "#/components/schemas/DataRecordV3",
        "description": "V3 Data Read Response format"
      },
      "DataNestedListResponseV3": {
        "type": "object",
        "description": "V3 Nested Data List Response format - supports both single record and array responses",
        "properties": {
          "records": {
            "type": "array",
            "description": "Array of records for has-many and many-to-many relationships",
            "items": {
              "$ref": "#/components/schemas/DataRecordV3"
            }
          },
          "record": {
            "description": "Single record for belongs-to and one-to-one relationships",
            "oneOf": [
              {
                "$ref": "#/components/schemas/DataRecordV3"
              },
              {
                "type": "null"
              }
            ]
          },
          "next": {
            "type": [
              "string",
              "null"
            ],
            "description": "Pagination token for next page"
          },
          "prev": {
            "type": [
              "string",
              "null"
            ],
            "description": "Pagination token for previous page"
          }
        }
      },
      "Paginated": {
        "description": "Model for Paginated",
        "examples": [
          {
            "next": "http://api.nocodd.com/api/v3/tables/id?page=3",
            "prev": "http://api.nocodd.com/api/v3/tables/id?page=1"
          }
        ],
        "properties": {
          "next": {
            "description": "URL to access next page",
            "type": "string"
          },
          "prev": {
            "description": "URL to access previous page",
            "type": "string"
          },
          "nestedNext": {
            "description": "URL to access current page data with next set of nested fields data",
            "type": "string"
          },
          "nestedPrev": {
            "description": "URL to access current page data with previous set of nested fields data",
            "type": "string"
          }
        },
        "title": "Paginated Model",
        "type": "object"
      },
      "BaseRoles": {
        "type": "string",
        "description": "Base roles for the user.",
        "enum": [
          "owner",
          "creator",
          "editor",
          "viewer",
          "commenter",
          "no-access"
        ]
      },
      "Workspace": {
        "type": "object",
        "description": "Basic workspace information",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the workspace"
          },
          "title": {
            "type": "string",
            "description": "Title of the workspace"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the workspace was created"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the workspace was last updated"
          }
        },
        "required": [
          "id",
          "title",
          "created_at",
          "updated_at"
        ]
      },
      "WorkspaceV3": {
        "type": "object",
        "description": "Workspace V3 information with meta data",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the workspace"
          },
          "title": {
            "type": "string",
            "description": "Title of the workspace"
          },
          "org_id": {
            "type": "string",
            "description": "Organization identifier (required for cloud, absent for on-prem EE)"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the workspace was created"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the workspace was last updated"
          }
        },
        "required": [
          "id",
          "title",
          "created_at",
          "updated_at"
        ]
      },
      "WorkspaceV3Create": {
        "type": "object",
        "description": "Workspace creation request",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the workspace"
          },
          "org_id": {
            "type": "string",
            "description": "Organization identifier (required for cloud, absent for on-prem EE)"
          }
        },
        "required": [
          "title"
        ]
      },
      "WorkspaceV3Update": {
        "type": "object",
        "description": "Workspace update request",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the workspace"
          }
        },
        "required": [
          "title"
        ]
      },
      "WorkspaceV3ListResponse": {
        "type": "object",
        "description": "Workspace list response",
        "properties": {
          "list": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WorkspaceV3"
            },
            "description": "List of workspaces"
          }
        },
        "required": [
          "list"
        ]
      },
      "WorkspaceWithMembers": {
        "type": "object",
        "description": "Workspace information including member details",
        "allOf": [
          {
            "$ref": "#/components/schemas/Workspace"
          },
          {
            "type": "object",
            "properties": {
              "individual_members": {
                "type": "object",
                "properties": {
                  "workspace_members": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/WorkspaceMember"
                    },
                    "description": "List of workspace members"
                  }
                },
                "required": [
                  "workspace_members"
                ]
              }
            },
            "required": [
              "individual_members"
            ]
          }
        ]
      },
      "WorkspaceMember": {
        "type": "object",
        "description": "Individual workspace member information",
        "properties": {
          "email": {
            "type": "string",
            "format": "email",
            "description": "Email address of the member"
          },
          "user_id": {
            "type": "string",
            "description": "Unique identifier for the user"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the user was added to the workspace"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the user was last updated in the workspace"
          },
          "workspace_role": {
            "$ref": "#/components/schemas/WorkspaceRoles",
            "description": "Role assigned to the user in the workspace"
          }
        },
        "required": [
          "email",
          "user_id",
          "created_at",
          "updated_at",
          "workspace_role"
        ]
      },
      "WorkspaceUser": {
        "type": "object",
        "description": "Workspace user information",
        "properties": {
          "email": {
            "type": "string",
            "format": "email",
            "description": "Email address of the user"
          },
          "user_id": {
            "type": "string",
            "description": "Unique identifier for the user"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the user was added to the workspace"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the user was last updated in the workspace"
          },
          "workspace_role": {
            "$ref": "#/components/schemas/WorkspaceRoles",
            "description": "Role assigned to the user in the workspace"
          }
        },
        "required": [
          "email",
          "user_id",
          "created_at",
          "updated_at",
          "workspace_role"
        ]
      },
      "WorkspaceUserCreate": {
        "type": "array",
        "items": {
          "type": "object",
          "oneOf": [
            {
              "title": "Invite User with ID",
              "required": [
                "user_id",
                "workspace_role"
              ],
              "properties": {
                "user_id": {
                  "type": "string",
                  "description": "Unique identifier for the user (skip if email is provided)"
                },
                "workspace_role": {
                  "$ref": "#/components/schemas/WorkspaceRoles",
                  "description": "Workspace role to assign to the user"
                }
              }
            },
            {
              "title": "Invite User with Email",
              "required": [
                "email",
                "workspace_role"
              ],
              "properties": {
                "email": {
                  "type": "string",
                  "format": "email",
                  "description": "Email address of the user (skip if user_id is provided)"
                },
                "workspace_role": {
                  "$ref": "#/components/schemas/WorkspaceRoles",
                  "description": "Workspace role to assign to the user"
                }
              }
            }
          ],
          "description": "An object representing a new workspace user to be created."
        },
        "description": "Array of workspace users to be created."
      },
      "WorkspaceUserUpdate": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "user_id": {
              "type": "string",
              "description": "Unique identifier for the user"
            },
            "workspace_role": {
              "$ref": "#/components/schemas/WorkspaceRoles",
              "description": "New workspace role to assign to the user"
            }
          },
          "required": [
            "user_id",
            "workspace_role"
          ],
          "description": "An object representing updates for an existing workspace user."
        },
        "description": "Array of workspace user updates."
      },
      "WorkspaceUserDelete": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "user_id": {
              "type": "string",
              "description": "Unique identifier for the user"
            }
          },
          "required": [
            "user_id"
          ],
          "description": "An object representing a workspace user to be deleted."
        },
        "description": "Array of workspace users to be deleted."
      },
      "TeamV3": {
        "type": "object",
        "description": "Team information for v3 API",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique team identifier",
            "example": "t12345"
          },
          "title": {
            "type": "string",
            "description": "Team name",
            "example": "Design Team",
            "maxLength": 50
          },
          "icon": {
            "type": [
              "string",
              "null"
            ],
            "description": "Team icon (emoji or icon identifier)",
            "example": "🎨"
          },
          "icon_type": {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "EMOJI",
                  "ICON"
                ]
              },
              {
                "type": "null"
              }
            ],
            "description": "Team icon type",
            "example": "EMOJI"
          },
          "badge_color": {
            "type": "string",
            "description": "Team badge color (hex code)",
            "example": "#FF5733",
            "pattern": "^#[0-9A-Fa-f]{6}$"
          },
          "members_count": {
            "type": "integer",
            "description": "Number of team members",
            "example": 10
          },
          "managers_count": {
            "type": "integer",
            "description": "Number of team managers",
            "example": 2
          },
          "fk_org_id": {
            "type": "string",
            "description": "Organization ID (for Cloud Enterprise)"
          },
          "fk_workspace_id": {
            "type": "string",
            "description": "Workspace ID (for other plans)"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Team creation timestamp"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Team last update timestamp"
          }
        },
        "required": [
          "id",
          "title",
          "members_count"
        ]
      },
      "TeamCreateV3Req": {
        "type": "object",
        "description": "Team creation request for v3 API",
        "properties": {
          "title": {
            "type": "string",
            "description": "Team name",
            "example": "Design Team",
            "maxLength": 50,
            "minLength": 1
          },
          "icon": {
            "type": [
              "string",
              "null"
            ],
            "description": "Team icon (emoji or icon identifier)",
            "example": "🎨"
          },
          "icon_type": {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "EMOJI",
                  "ICON"
                ]
              },
              {
                "type": "null"
              }
            ],
            "description": "Team icon type",
            "example": "EMOJI"
          },
          "badge_color": {
            "type": "string",
            "description": "Team badge color (hex code)",
            "example": "#FF5733",
            "pattern": "^#[0-9A-Fa-f]{6}$"
          },
          "members": {
            "type": "array",
            "description": "Initial team members",
            "items": {
              "$ref": "#/components/schemas/TeamMemberV3"
            }
          }
        },
        "required": [
          "title"
        ]
      },
      "TeamUpdateV3Req": {
        "type": "object",
        "description": "Team update request for v3 API",
        "properties": {
          "title": {
            "type": "string",
            "description": "Updated team name",
            "example": "Updated Team Name",
            "maxLength": 50,
            "minLength": 1
          },
          "icon": {
            "type": [
              "string",
              "null"
            ],
            "description": "Updated team icon (emoji or icon identifier)",
            "example": "🛠️"
          },
          "icon_type": {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "EMOJI",
                  "ICON"
                ]
              },
              {
                "type": "null"
              }
            ],
            "description": "Team icon type",
            "example": "EMOJI"
          },
          "badge_color": {
            "type": "string",
            "description": "Updated team badge color (hex code)",
            "example": "#00AEEF",
            "pattern": "^#[0-9A-Fa-f]{6}$"
          }
        }
      },
      "TeamDetailV3": {
        "type": "object",
        "description": "Detailed team information for v3 API",
        "properties": {
          "title": {
            "type": "string",
            "description": "Team name",
            "example": "Design Team"
          },
          "icon": {
            "type": [
              "string",
              "null"
            ],
            "description": "Team icon (emoji or icon identifier)",
            "example": "🎨"
          },
          "icon_type": {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "EMOJI",
                  "ICON"
                ]
              },
              {
                "type": "null"
              }
            ],
            "description": "Team icon type",
            "example": "EMOJI"
          },
          "badge_color": {
            "type": "string",
            "description": "Team badge color (hex code)",
            "example": "#FF5733"
          },
          "members": {
            "type": "array",
            "description": "Team members",
            "items": {
              "$ref": "#/components/schemas/TeamMemberV3Response"
            }
          }
        },
        "required": [
          "title",
          "members"
        ]
      },
      "TeamMemberV3": {
        "type": "object",
        "description": "Team member information for v3 API",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "User ID",
            "example": "xxxx"
          },
          "team_role": {
            "type": "string",
            "description": "Team role",
            "enum": [
              "member",
              "owner"
            ],
            "example": "member"
          }
        },
        "required": [
          "user_id",
          "team_role"
        ]
      },
      "TeamMemberV3Response": {
        "type": "object",
        "description": "Team member response for v3 API",
        "properties": {
          "user_email": {
            "type": "string",
            "format": "email",
            "description": "User email address",
            "example": "user@nocodb.com"
          },
          "user_id": {
            "type": "string",
            "description": "User ID",
            "example": "id"
          },
          "team_role": {
            "type": "string",
            "description": "Team role",
            "enum": [
              "member",
              "owner"
            ],
            "example": "member"
          }
        },
        "required": [
          "user_email",
          "user_id",
          "team_role"
        ]
      },
      "TeamMembersAddV3Req": {
        "type": "object",
        "description": "Add team members request for v3 API",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "User ID to add",
            "example": "xxxx"
          },
          "team_role": {
            "type": "string",
            "description": "Team role to assign",
            "enum": [
              "member",
              "owner"
            ],
            "example": "member"
          }
        },
        "required": [
          "user_id",
          "team_role"
        ]
      },
      "TeamMembersRemoveV3Req": {
        "type": "object",
        "description": "Remove team members request for v3 API",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "User ID to remove",
            "example": "user123"
          }
        },
        "required": [
          "user_id"
        ]
      },
      "TeamMembersUpdateV3Req": {
        "type": "object",
        "description": "Update team members request for v3 API",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "User ID to update",
            "example": "user123"
          },
          "team_role": {
            "type": "string",
            "description": "New team role",
            "enum": [
              "member",
              "owner"
            ],
            "example": "member"
          }
        },
        "required": [
          "user_id",
          "team_role"
        ]
      },
      "TeamUser": {
        "type": "object",
        "description": "Team user relationship",
        "properties": {
          "fk_team_id": {
            "type": "string",
            "description": "Team ID"
          },
          "fk_user_id": {
            "type": "string",
            "description": "User ID"
          },
          "is_owner": {
            "type": "boolean",
            "description": "Whether user is team owner"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Creation timestamp"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Last update timestamp"
          }
        },
        "required": [
          "fk_team_id",
          "fk_user_id",
          "is_owner"
        ]
      },
      "WorkspaceRoles": {
        "type": "string",
        "description": "Workspace roles for the user.",
        "enum": [
          "workspace-level-owner",
          "workspace-level-creator",
          "workspace-level-editor",
          "workspace-level-viewer",
          "workspace-level-commenter",
          "workspace-level-no-access"
        ]
      },
      "WorkspaceTeamCreate": {
        "type": "object",
        "description": "Create workspace team request for v3 API",
        "properties": {
          "team_id": {
            "type": "string",
            "description": "Team ID to add to workspace",
            "example": "team123"
          },
          "workspace_role": {
            "type": "string",
            "description": "Workspace role to assign to the team (creator or lower only)",
            "enum": [
              "workspace-level-creator",
              "workspace-level-editor",
              "workspace-level-viewer",
              "workspace-level-commenter",
              "workspace-level-no-access"
            ],
            "example": "workspace-level-editor"
          }
        },
        "required": [
          "team_id",
          "workspace_role"
        ]
      },
      "WorkspaceTeamCreateBulk": {
        "type": "object",
        "description": "Bulk create workspace team requests for v3 API",
        "properties": {
          "teams": {
            "type": "array",
            "description": "Array of teams to add to workspace",
            "items": {
              "$ref": "#/components/schemas/WorkspaceTeamCreate"
            },
            "minItems": 1,
            "example": [
              {
                "team_id": "team123",
                "workspace_role": "workspace-level-editor"
              },
              {
                "team_id": "team456",
                "workspace_role": "workspace-level-viewer"
              }
            ]
          }
        },
        "required": [
          "teams"
        ]
      },
      "WorkspaceTeamUpdate": {
        "type": "object",
        "description": "Update workspace team request for v3 API",
        "properties": {
          "team_id": {
            "type": "string",
            "description": "Team ID to update in workspace",
            "example": "team123"
          },
          "workspace_role": {
            "type": "string",
            "description": "New workspace role for the team (creator or lower only)",
            "enum": [
              "workspace-level-creator",
              "workspace-level-editor",
              "workspace-level-viewer",
              "workspace-level-commenter",
              "workspace-level-no-access"
            ],
            "example": "workspace-level-viewer"
          }
        },
        "required": [
          "team_id",
          "workspace_role"
        ]
      },
      "WorkspaceTeamDelete": {
        "type": "object",
        "description": "Delete workspace team request for v3 API",
        "properties": {
          "team_id": {
            "type": "string",
            "description": "Team ID to remove from workspace",
            "example": "team123"
          }
        },
        "required": [
          "team_id"
        ]
      },
      "WorkspaceTeamDeleteBulk": {
        "type": "object",
        "description": "Bulk delete workspace team requests for v3 API",
        "properties": {
          "teams": {
            "type": "array",
            "description": "Array of teams to remove from workspace",
            "items": {
              "$ref": "#/components/schemas/WorkspaceTeamDelete"
            },
            "minItems": 1,
            "example": [
              {
                "team_id": "team123"
              },
              {
                "team_id": "team456"
              }
            ]
          }
        },
        "required": [
          "teams"
        ]
      },
      "BaseTeamCreate": {
        "type": "object",
        "description": "Create base team request for v3 API",
        "properties": {
          "team_id": {
            "type": "string",
            "description": "Team ID to add to base",
            "example": "team123"
          },
          "base_role": {
            "type": "string",
            "description": "Base role to assign to the team (creator or lower only)",
            "enum": [
              "creator",
              "editor",
              "viewer",
              "commenter",
              "no-access"
            ],
            "example": "editor"
          }
        },
        "required": [
          "team_id",
          "base_role"
        ]
      },
      "BaseTeamCreateBulk": {
        "type": "object",
        "description": "Bulk create base team requests for v3 API",
        "properties": {
          "teams": {
            "type": "array",
            "description": "Array of teams to add to base",
            "items": {
              "$ref": "#/components/schemas/BaseTeamCreate"
            },
            "minItems": 1,
            "example": [
              {
                "team_id": "team123",
                "base_role": "editor"
              },
              {
                "team_id": "team456",
                "base_role": "viewer"
              }
            ]
          }
        },
        "required": [
          "teams"
        ]
      },
      "BaseTeamUpdate": {
        "type": "object",
        "description": "Update base team request for v3 API",
        "properties": {
          "team_id": {
            "type": "string",
            "description": "Team ID to update in base",
            "example": "team123"
          },
          "base_role": {
            "type": "string",
            "description": "New base role for the team (creator or lower only)",
            "enum": [
              "creator",
              "editor",
              "viewer",
              "commenter",
              "no-access"
            ],
            "example": "viewer"
          }
        },
        "required": [
          "team_id",
          "base_role"
        ]
      },
      "BaseTeamDelete": {
        "type": "object",
        "description": "Delete base team request for v3 API",
        "properties": {
          "team_id": {
            "type": "string",
            "description": "Team ID to remove from base",
            "example": "team123"
          }
        },
        "required": [
          "team_id"
        ]
      },
      "BaseTeamDeleteBulk": {
        "type": "object",
        "description": "Bulk delete base team requests for v3 API",
        "properties": {
          "teams": {
            "type": "array",
            "description": "Array of teams to remove from base",
            "items": {
              "$ref": "#/components/schemas/BaseTeamDelete"
            },
            "minItems": 1,
            "example": [
              {
                "team_id": "team123"
              },
              {
                "team_id": "team456"
              }
            ]
          }
        },
        "required": [
          "teams"
        ]
      },
      "ScriptList": {
        "type": "object",
        "properties": {
          "list": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the script."
                },
                "title": {
                  "type": "string",
                  "description": "Title of the script."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Description of the script."
                },
                "base_id": {
                  "type": "string",
                  "description": "Unique identifier for the base to which this script belongs to."
                },
                "workspace_id": {
                  "type": "string",
                  "description": "Unique identifier for the workspace to which this base belongs to."
                }
              },
              "required": [
                "id",
                "title",
                "base_id",
                "workspace_id"
              ]
            }
          }
        },
        "required": [
          "list"
        ]
      },
      "ScriptCreateReq": {
        "description": "Script create request body",
        "type": "object",
        "required": [
          "title"
        ],
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the script."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Description of the script."
          },
          "script": {
            "type": "string",
            "description": "Script content."
          },
          "config": {
            "type": "object",
            "description": "Configuration for the script."
          },
          "meta": {
            "type": "object",
            "description": "Metadata for the script."
          }
        }
      },
      "ScriptUpdateReq": {
        "description": "Script update request body",
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the script."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Description of the script."
          },
          "script": {
            "type": "string",
            "description": "Script content."
          },
          "config": {
            "type": "object",
            "description": "Configuration for the script."
          },
          "meta": {
            "type": "object",
            "description": "Metadata for the script."
          }
        }
      },
      "ScriptGetResponse": {
        "description": "Script with additional info",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the script"
          },
          "title": {
            "type": "string",
            "description": "Title of the script."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Description of the script."
          },
          "script": {
            "type": "string",
            "description": "Script content."
          },
          "config": {
            "type": "object",
            "description": "Configuration for the script."
          },
          "meta": {
            "type": "object",
            "description": "Metadata of the script."
          },
          "base_id": {
            "type": "string",
            "description": "Unique identifier for the base"
          },
          "workspace_id": {
            "type": "string",
            "description": "Unique identifier for the workspace"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the script was created"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the script was last updated"
          }
        },
        "required": [
          "id",
          "title",
          "script",
          "base_id",
          "workspace_id",
          "created_at",
          "updated_at"
        ]
      },
      "ApiTokenV3": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Token ID",
            "example": 5
          },
          "title": {
            "type": "string",
            "description": "Token title / description",
            "example": "Github Integration"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Token creation timestamp",
            "example": "2025-12-30 15:17:24+00:00"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Token last update timestamp",
            "example": "2025-12-30 15:17:24+00:00"
          }
        },
        "required": [
          "id",
          "title",
          "created_at",
          "updated_at"
        ]
      },
      "ApiTokenWithTokenV3": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ApiTokenV3"
          },
          {
            "type": "object",
            "properties": {
              "token": {
                "type": "string",
                "description": "The actual API token value (only returned on creation)",
                "example": "wxAFzFO2wwOf9ozVRjragBJ7KPWMaW2OGpklGqHh"
              }
            },
            "required": [
              "token"
            ]
          }
        ]
      }
    },
    "responses": {
      "BadRequest": {
        "description": "BadRequest",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "msg": {
                  "type": "string",
                  "x-stoplight": {
                    "id": "p9mk4oi0hbihm"
                  },
                  "example": "BadRequest [Error]: <ERROR MESSAGE>"
                }
              },
              "required": [
                "msg"
              ]
            },
            "examples": {
              "Example 1": {
                "value": {
                  "msg": "BadRequest [Error]: <ERROR MESSAGE>"
                }
              }
            }
          }
        },
        "headers": {}
      }
    },
    "BadRequestV3": {
      "type": "object",
      "properties": {
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      }
    },
    "UnauthorizedV3": {
      "type": "object",
      "properties": {
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      }
    },
    "ForbiddenV3": {
      "type": "object",
      "properties": {
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string",
          "example": "Accessing api token api require enterprise plan"
        }
      }
    },
    "NotFoundV3": {
      "type": "object",
      "properties": {
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      }
    },
    "InternalServerErrorV3": {
      "type": "object",
      "properties": {
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      }
    },
    "securitySchemes": {
      "xc-token": {
        "name": "Auth Token ",
        "type": "apiKey",
        "in": "header",
        "description": "Auth Token is a JWT Token generated based on the logged-in user. By default, the token is only valid for 10 hours. However, you can change the value by defining it using environment variable `NC_JWT_EXPIRES_IN`."
      },
      "bearerAuth": {
        "name": "Authorization",
        "type": "http",
        "scheme": "bearer",
        "description": "Bearer token authentication. Use 'Authorization: Bearer <token>' header format. This is an alternative to the xc-token header."
      },
      "xc-shared-base-id": {
        "name": "Shared Base ID",
        "type": "apiKey",
        "in": "header",
        "description": "Shared base uuid"
      },
      "xc-shared-erd-id": {
        "name": "Shared ERD ID",
        "type": "apiKey",
        "in": "header",
        "description": "Shared ERD uuid"
      }
    },
    "parameters": {
      "xc-token": {
        "name": "xc-token",
        "in": "header",
        "required": true,
        "schema": {
          "type": "string"
        },
        "description": "API Token. Refer [here](https://docs.nocodb.com/account-settings/api-tokens/) to know more"
      }
    }
  }
}