diff --git a/app/config/specs/open-api3-latest-client.json b/app/config/specs/open-api3-latest-client.json index 44caa47679..592dc5b052 100644 --- a/app/config/specs/open-api3-latest-client.json +++ b/app/config/specs/open-api3-latest-client.json @@ -5888,7 +5888,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 338, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/list-transactions.md", @@ -5955,7 +5955,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 334, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-transaction.md", @@ -6026,7 +6026,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 335, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/get-transaction.md", @@ -6090,7 +6090,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 336, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/update-transaction.md", @@ -6168,7 +6168,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 337, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/delete-transaction.md", @@ -6234,7 +6234,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 339, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/create-operations.md", @@ -7335,7 +7335,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 431, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -7422,7 +7422,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 429, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -7540,7 +7540,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 430, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -8315,7 +8315,7 @@ "x-appwrite": { "method": "listFiles", "group": "files", - "weight": 527, + "weight": 543, "cookies": false, "type": "", "demo": "storage\/list-files.md", @@ -8414,7 +8414,7 @@ "x-appwrite": { "method": "createFile", "group": "files", - "weight": 525, + "weight": 541, "cookies": false, "type": "upload", "demo": "storage\/create-file.md", @@ -8516,7 +8516,7 @@ "x-appwrite": { "method": "getFile", "group": "files", - "weight": 526, + "weight": 542, "cookies": false, "type": "", "demo": "storage\/get-file.md", @@ -8590,7 +8590,7 @@ "x-appwrite": { "method": "updateFile", "group": "files", - "weight": 528, + "weight": 544, "cookies": false, "type": "", "demo": "storage\/update-file.md", @@ -8682,7 +8682,7 @@ "x-appwrite": { "method": "deleteFile", "group": "files", - "weight": 529, + "weight": 545, "cookies": false, "type": "", "demo": "storage\/delete-file.md", @@ -8751,7 +8751,7 @@ "x-appwrite": { "method": "getFileDownload", "group": "files", - "weight": 531, + "weight": 547, "cookies": false, "type": "location", "demo": "storage\/get-file-download.md", @@ -8831,7 +8831,7 @@ "x-appwrite": { "method": "getFilePreview", "group": "files", - "weight": 530, + "weight": 546, "cookies": false, "type": "location", "demo": "storage\/get-file-preview.md", @@ -9061,7 +9061,7 @@ "x-appwrite": { "method": "getFileView", "group": "files", - "weight": 532, + "weight": 548, "cookies": false, "type": "location", "demo": "storage\/get-file-view.md", @@ -9148,7 +9148,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 403, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/list-transactions.md", @@ -9218,7 +9218,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 399, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-transaction.md", @@ -9292,7 +9292,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 400, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-transaction.md", @@ -9359,7 +9359,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 401, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/update-transaction.md", @@ -9440,7 +9440,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 402, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/delete-transaction.md", @@ -9509,7 +9509,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 404, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/create-operations.md", @@ -9597,7 +9597,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 395, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -9708,7 +9708,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 387, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -9864,7 +9864,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 388, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -9974,7 +9974,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 391, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -10124,7 +10124,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 389, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -10235,7 +10235,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 393, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -10341,7 +10341,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 398, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -10469,7 +10469,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 397, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", diff --git a/app/config/specs/open-api3-latest-console.json b/app/config/specs/open-api3-latest-console.json index d83d7c20ba..501cfd949e 100644 --- a/app/config/specs/open-api3-latest-console.json +++ b/app/config/specs/open-api3-latest-console.json @@ -5874,7 +5874,7 @@ "x-appwrite": { "method": "chat", "group": "console", - "weight": 497, + "weight": 513, "cookies": false, "type": "", "demo": "assistant\/chat.md", @@ -5935,7 +5935,7 @@ "x-appwrite": { "method": "getResource", "group": null, - "weight": 498, + "weight": 514, "cookies": false, "type": "", "demo": "console\/get-resource.md", @@ -6010,7 +6010,7 @@ "x-appwrite": { "method": "variables", "group": "console", - "weight": 496, + "weight": 512, "cookies": false, "type": "", "demo": "console\/variables.md", @@ -6295,7 +6295,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 338, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/list-transactions.md", @@ -6362,7 +6362,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 334, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-transaction.md", @@ -6433,7 +6433,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 335, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/get-transaction.md", @@ -6497,7 +6497,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 336, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/update-transaction.md", @@ -6575,7 +6575,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 337, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/delete-transaction.md", @@ -6641,7 +6641,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 339, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/create-operations.md", @@ -9624,6 +9624,452 @@ } } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/longtext": { + "post": { + "summary": "Create longtext attribute", + "operationId": "databasesCreateLongtextAttribute", + "tags": [ + "databases" + ], + "description": "Create a longtext attribute.\n", + "responses": { + "202": { + "description": "AttributeLongtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeLongtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createLongtextAttribute", + "group": "attributes", + "weight": 336, + "cookies": false, + "type": "", + "demo": "databases\/create-longtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-longtext-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/longtext\/{key}": { + "patch": { + "summary": "Update longtext attribute", + "operationId": "databasesUpdateLongtextAttribute", + "tags": [ + "databases" + ], + "description": "Update a longtext attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeLongtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeLongtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateLongtextAttribute", + "group": "attributes", + "weight": 337, + "cookies": false, + "type": "", + "demo": "databases\/update-longtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-longtext-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/mediumtext": { + "post": { + "summary": "Create mediumtext attribute", + "operationId": "databasesCreateMediumtextAttribute", + "tags": [ + "databases" + ], + "description": "Create a mediumtext attribute.\n", + "responses": { + "202": { + "description": "AttributeMediumtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeMediumtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createMediumtextAttribute", + "group": "attributes", + "weight": 334, + "cookies": false, + "type": "", + "demo": "databases\/create-mediumtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-mediumtext-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/mediumtext\/{key}": { + "patch": { + "summary": "Update mediumtext attribute", + "operationId": "databasesUpdateMediumtextAttribute", + "tags": [ + "databases" + ], + "description": "Update a mediumtext attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeMediumtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeMediumtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateMediumtextAttribute", + "group": "attributes", + "weight": 335, + "cookies": false, + "type": "", + "demo": "databases\/update-mediumtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-mediumtext-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/point": { "post": { "summary": "Create point attribute", @@ -10491,6 +10937,229 @@ } } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/text": { + "post": { + "summary": "Create text attribute", + "operationId": "databasesCreateTextAttribute", + "tags": [ + "databases" + ], + "description": "Create a text attribute.\n", + "responses": { + "202": { + "description": "AttributeText", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeText" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createTextAttribute", + "group": "attributes", + "weight": 332, + "cookies": false, + "type": "", + "demo": "databases\/create-text-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-text-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/text\/{key}": { + "patch": { + "summary": "Update text attribute", + "operationId": "databasesUpdateTextAttribute", + "tags": [ + "databases" + ], + "description": "Update a text attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeText", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeText" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateTextAttribute", + "group": "attributes", + "weight": 333, + "cookies": false, + "type": "", + "demo": "databases\/update-text-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-text-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/url": { "post": { "summary": "Create URL attribute", @@ -10724,6 +11393,243 @@ } } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar": { + "post": { + "summary": "Create varchar attribute", + "operationId": "databasesCreateVarcharAttribute", + "tags": [ + "databases" + ], + "description": "Create a varchar attribute.\n", + "responses": { + "202": { + "description": "AttributeVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeVarchar" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createVarcharAttribute", + "group": "attributes", + "weight": 330, + "cookies": false, + "type": "", + "demo": "databases\/create-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-varchar-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": null + }, + "size": { + "type": "integer", + "description": "Attribute size for varchar attributes, in number of characters. Maximum size is 16381.", + "x-example": 1, + "format": "int32" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar\/{key}": { + "patch": { + "summary": "Update varchar attribute", + "operationId": "databasesUpdateVarcharAttribute", + "tags": [ + "databases" + ], + "description": "Update a varchar attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeVarchar" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateVarcharAttribute", + "group": "attributes", + "weight": 331, + "cookies": false, + "type": "", + "demo": "databases\/update-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-varchar-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "size": { + "type": "integer", + "description": "Maximum size of the varchar attribute.", + "x-example": 1, + "format": "int32", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/{key}": { "get": { "summary": "Get attribute", @@ -12546,7 +13452,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 333, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -12645,7 +13551,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 330, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -12786,7 +13692,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 331, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -12863,7 +13769,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 332, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -13359,7 +14265,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 415, + "weight": 431, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -13444,7 +14350,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 412, + "weight": 428, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -13740,7 +14646,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 417, + "weight": 433, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -13790,7 +14696,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 418, + "weight": 434, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -13840,7 +14746,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 441, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/list-templates.md", @@ -13956,12 +14862,13 @@ "items": { "type": "string", "enum": [ - "dev-tools", "starter", "databases", "ai", "messaging", - "utilities" + "utilities", + "dev-tools", + "auth" ], "x-enum-name": null, "x-enum-keys": [] @@ -14032,7 +14939,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 440, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/get-template.md", @@ -14092,7 +14999,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 434, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/list-usage.md", @@ -14164,7 +15071,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 413, + "weight": 429, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -14224,7 +15131,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 414, + "weight": 430, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -14517,7 +15424,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 416, + "weight": 432, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -14579,7 +15486,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 421, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -14660,7 +15567,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 422, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -14755,7 +15662,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 419, + "weight": 435, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -14855,7 +15762,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 427, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -14941,7 +15848,7 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 424, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", @@ -15058,7 +15965,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 425, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -15156,7 +16063,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 420, + "weight": 436, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -15219,7 +16126,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 423, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -15284,7 +16191,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 426, + "weight": 442, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -15375,7 +16282,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 428, + "weight": 444, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -15447,7 +16354,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 431, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -15534,7 +16441,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 429, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -15652,7 +16559,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 430, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -15718,7 +16625,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 432, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -15790,7 +16697,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 433, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/get-usage.md", @@ -15872,7 +16779,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 437, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -15932,7 +16839,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 435, + "weight": 451, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -16024,7 +16931,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 436, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -16094,7 +17001,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 438, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -16188,7 +17095,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 439, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -16368,7 +17275,7 @@ "x-appwrite": { "method": "get", "group": "health", - "weight": 442, + "weight": 458, "cookies": false, "type": "", "demo": "health\/get.md", @@ -16419,7 +17326,7 @@ "x-appwrite": { "method": "getAntivirus", "group": "health", - "weight": 451, + "weight": 467, "cookies": false, "type": "", "demo": "health\/get-antivirus.md", @@ -16470,7 +17377,7 @@ "x-appwrite": { "method": "getCache", "group": "health", - "weight": 445, + "weight": 461, "cookies": false, "type": "", "demo": "health\/get-cache.md", @@ -16521,7 +17428,7 @@ "x-appwrite": { "method": "getCertificate", "group": "health", - "weight": 448, + "weight": 464, "cookies": false, "type": "", "demo": "health\/get-certificate.md", @@ -16583,7 +17490,7 @@ "x-appwrite": { "method": "getDB", "group": "health", - "weight": 444, + "weight": 460, "cookies": false, "type": "", "demo": "health\/get-db.md", @@ -16634,7 +17541,7 @@ "x-appwrite": { "method": "getPubSub", "group": "health", - "weight": 446, + "weight": 462, "cookies": false, "type": "", "demo": "health\/get-pub-sub.md", @@ -16685,7 +17592,7 @@ "x-appwrite": { "method": "getQueueAudits", "group": "queue", - "weight": 452, + "weight": 468, "cookies": false, "type": "", "demo": "health\/get-queue-audits.md", @@ -16749,7 +17656,7 @@ "x-appwrite": { "method": "getQueueBuilds", "group": "queue", - "weight": 456, + "weight": 472, "cookies": false, "type": "", "demo": "health\/get-queue-builds.md", @@ -16813,7 +17720,7 @@ "x-appwrite": { "method": "getQueueCertificates", "group": "queue", - "weight": 455, + "weight": 471, "cookies": false, "type": "", "demo": "health\/get-queue-certificates.md", @@ -16877,7 +17784,7 @@ "x-appwrite": { "method": "getQueueDatabases", "group": "queue", - "weight": 457, + "weight": 473, "cookies": false, "type": "", "demo": "health\/get-queue-databases.md", @@ -16952,7 +17859,7 @@ "x-appwrite": { "method": "getQueueDeletes", "group": "queue", - "weight": 458, + "weight": 474, "cookies": false, "type": "", "demo": "health\/get-queue-deletes.md", @@ -17016,7 +17923,7 @@ "x-appwrite": { "method": "getFailedJobs", "group": "queue", - "weight": 465, + "weight": 481, "cookies": false, "type": "", "demo": "health\/get-failed-jobs.md", @@ -17107,7 +18014,7 @@ "x-appwrite": { "method": "getQueueFunctions", "group": "queue", - "weight": 462, + "weight": 478, "cookies": false, "type": "", "demo": "health\/get-queue-functions.md", @@ -17171,7 +18078,7 @@ "x-appwrite": { "method": "getQueueLogs", "group": "queue", - "weight": 454, + "weight": 470, "cookies": false, "type": "", "demo": "health\/get-queue-logs.md", @@ -17235,7 +18142,7 @@ "x-appwrite": { "method": "getQueueMails", "group": "queue", - "weight": 459, + "weight": 475, "cookies": false, "type": "", "demo": "health\/get-queue-mails.md", @@ -17299,7 +18206,7 @@ "x-appwrite": { "method": "getQueueMessaging", "group": "queue", - "weight": 460, + "weight": 476, "cookies": false, "type": "", "demo": "health\/get-queue-messaging.md", @@ -17363,7 +18270,7 @@ "x-appwrite": { "method": "getQueueMigrations", "group": "queue", - "weight": 461, + "weight": 477, "cookies": false, "type": "", "demo": "health\/get-queue-migrations.md", @@ -17427,7 +18334,7 @@ "x-appwrite": { "method": "getQueueStatsResources", "group": "queue", - "weight": 463, + "weight": 479, "cookies": false, "type": "", "demo": "health\/get-queue-stats-resources.md", @@ -17491,7 +18398,7 @@ "x-appwrite": { "method": "getQueueUsage", "group": "queue", - "weight": 464, + "weight": 480, "cookies": false, "type": "", "demo": "health\/get-queue-usage.md", @@ -17555,7 +18462,7 @@ "x-appwrite": { "method": "getQueueWebhooks", "group": "queue", - "weight": 453, + "weight": 469, "cookies": false, "type": "", "demo": "health\/get-queue-webhooks.md", @@ -17619,7 +18526,7 @@ "x-appwrite": { "method": "getStorage", "group": "storage", - "weight": 450, + "weight": 466, "cookies": false, "type": "", "demo": "health\/get-storage.md", @@ -17670,7 +18577,7 @@ "x-appwrite": { "method": "getStorageLocal", "group": "storage", - "weight": 449, + "weight": 465, "cookies": false, "type": "", "demo": "health\/get-storage-local.md", @@ -17721,7 +18628,7 @@ "x-appwrite": { "method": "getTime", "group": "health", - "weight": 447, + "weight": 463, "cookies": false, "type": "", "demo": "health\/get-time.md", @@ -25419,7 +26326,7 @@ "x-appwrite": { "method": "list", "group": "projects", - "weight": 410, + "weight": 426, "cookies": false, "type": "", "demo": "projects\/list.md", @@ -27092,7 +27999,7 @@ "x-appwrite": { "method": "listDevKeys", "group": "devKeys", - "weight": 408, + "weight": 424, "cookies": false, "type": "", "demo": "projects\/list-dev-keys.md", @@ -27163,7 +28070,7 @@ "x-appwrite": { "method": "createDevKey", "group": "devKeys", - "weight": 405, + "weight": 421, "cookies": false, "type": "", "demo": "projects\/create-dev-key.md", @@ -27248,7 +28155,7 @@ "x-appwrite": { "method": "getDevKey", "group": "devKeys", - "weight": 407, + "weight": 423, "cookies": false, "type": "", "demo": "projects\/get-dev-key.md", @@ -27316,7 +28223,7 @@ "x-appwrite": { "method": "updateDevKey", "group": "devKeys", - "weight": 406, + "weight": 422, "cookies": false, "type": "", "demo": "projects\/update-dev-key.md", @@ -27402,7 +28309,7 @@ "x-appwrite": { "method": "deleteDevKey", "group": "devKeys", - "weight": 409, + "weight": 425, "cookies": false, "type": "", "demo": "projects\/delete-dev-key.md", @@ -28141,7 +29048,7 @@ "x-appwrite": { "method": "updateLabels", "group": "projects", - "weight": 411, + "weight": 427, "cookies": false, "type": "", "demo": "projects\/update-labels.md", @@ -31582,7 +32489,7 @@ "x-appwrite": { "method": "listRules", "group": null, - "weight": 512, + "weight": 528, "cookies": false, "type": "", "demo": "proxy\/list-rules.md", @@ -31667,7 +32574,7 @@ "x-appwrite": { "method": "createAPIRule", "group": null, - "weight": 507, + "weight": 523, "cookies": false, "type": "", "demo": "proxy\/create-api-rule.md", @@ -31734,7 +32641,7 @@ "x-appwrite": { "method": "createFunctionRule", "group": null, - "weight": 509, + "weight": 525, "cookies": false, "type": "", "demo": "proxy\/create-function-rule.md", @@ -31812,7 +32719,7 @@ "x-appwrite": { "method": "createRedirectRule", "group": null, - "weight": 510, + "weight": 526, "cookies": false, "type": "", "demo": "proxy\/create-redirect-rule.md", @@ -31926,7 +32833,7 @@ "x-appwrite": { "method": "createSiteRule", "group": null, - "weight": 508, + "weight": 524, "cookies": false, "type": "", "demo": "proxy\/create-site-rule.md", @@ -32004,7 +32911,7 @@ "x-appwrite": { "method": "getRule", "group": null, - "weight": 511, + "weight": 527, "cookies": false, "type": "", "demo": "proxy\/get-rule.md", @@ -32055,7 +32962,7 @@ "x-appwrite": { "method": "deleteRule", "group": null, - "weight": 513, + "weight": 529, "cookies": false, "type": "", "demo": "proxy\/delete-rule.md", @@ -32115,7 +33022,7 @@ "x-appwrite": { "method": "updateRuleVerification", "group": null, - "weight": 514, + "weight": 530, "cookies": false, "type": "", "demo": "proxy\/update-rule-verification.md", @@ -32175,7 +33082,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 469, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -32260,7 +33167,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 467, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -32514,7 +33421,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 472, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -32564,7 +33471,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 495, + "weight": 511, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -32614,7 +33521,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 491, + "weight": 507, "cookies": false, "type": "", "demo": "sites\/list-templates.md", @@ -32678,12 +33585,15 @@ "items": { "type": "string", "enum": [ - "dev-tools", + "portfolio", "starter", - "databases", + "events", + "ecommerce", + "documentation", + "blog", "ai", - "messaging", - "utilities" + "forms", + "dashboard" ], "x-enum-name": null, "x-enum-keys": [] @@ -32743,7 +33653,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 492, + "weight": 508, "cookies": false, "type": "", "demo": "sites\/get-template.md", @@ -32803,7 +33713,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 493, + "weight": 509, "cookies": false, "type": "", "demo": "sites\/list-usage.md", @@ -32875,7 +33785,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 468, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -32935,7 +33845,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 470, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -33185,7 +34095,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 471, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -33247,7 +34157,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 478, + "weight": 494, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -33328,7 +34238,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 477, + "weight": 493, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -33423,7 +34333,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 473, + "weight": 489, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -33529,7 +34439,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 481, + "weight": 497, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -33610,7 +34520,7 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 474, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", @@ -33727,7 +34637,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 475, + "weight": 491, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -33826,7 +34736,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 476, + "weight": 492, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -33889,7 +34799,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 479, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -33954,7 +34864,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 480, + "weight": 496, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -34045,7 +34955,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 482, + "weight": 498, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -34117,7 +35027,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 484, + "weight": 500, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -34203,7 +35113,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 483, + "weight": 499, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -34266,7 +35176,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 485, + "weight": 501, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -34338,7 +35248,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 494, + "weight": 510, "cookies": false, "type": "", "demo": "sites\/get-usage.md", @@ -34420,7 +35330,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 488, + "weight": 504, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -34480,7 +35390,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 486, + "weight": 502, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -34572,7 +35482,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 487, + "weight": 503, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -34642,7 +35552,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 489, + "weight": 505, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -34736,7 +35646,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 490, + "weight": 506, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -34808,7 +35718,7 @@ "x-appwrite": { "method": "listBuckets", "group": "buckets", - "weight": 522, + "weight": 538, "cookies": false, "type": "", "demo": "storage\/list-buckets.md", @@ -34894,7 +35804,7 @@ "x-appwrite": { "method": "createBucket", "group": "buckets", - "weight": 520, + "weight": 536, "cookies": false, "type": "", "demo": "storage\/create-bucket.md", @@ -35030,7 +35940,7 @@ "x-appwrite": { "method": "getBucket", "group": "buckets", - "weight": 521, + "weight": 537, "cookies": false, "type": "", "demo": "storage\/get-bucket.md", @@ -35091,7 +36001,7 @@ "x-appwrite": { "method": "updateBucket", "group": "buckets", - "weight": 523, + "weight": 539, "cookies": false, "type": "", "demo": "storage\/update-bucket.md", @@ -35224,7 +36134,7 @@ "x-appwrite": { "method": "deleteBucket", "group": "buckets", - "weight": 524, + "weight": 540, "cookies": false, "type": "", "demo": "storage\/delete-bucket.md", @@ -35287,7 +36197,7 @@ "x-appwrite": { "method": "listFiles", "group": "files", - "weight": 527, + "weight": 543, "cookies": false, "type": "", "demo": "storage\/list-files.md", @@ -35386,7 +36296,7 @@ "x-appwrite": { "method": "createFile", "group": "files", - "weight": 525, + "weight": 541, "cookies": false, "type": "upload", "demo": "storage\/create-file.md", @@ -35488,7 +36398,7 @@ "x-appwrite": { "method": "getFile", "group": "files", - "weight": 526, + "weight": 542, "cookies": false, "type": "", "demo": "storage\/get-file.md", @@ -35562,7 +36472,7 @@ "x-appwrite": { "method": "updateFile", "group": "files", - "weight": 528, + "weight": 544, "cookies": false, "type": "", "demo": "storage\/update-file.md", @@ -35654,7 +36564,7 @@ "x-appwrite": { "method": "deleteFile", "group": "files", - "weight": 529, + "weight": 545, "cookies": false, "type": "", "demo": "storage\/delete-file.md", @@ -35723,7 +36633,7 @@ "x-appwrite": { "method": "getFileDownload", "group": "files", - "weight": 531, + "weight": 547, "cookies": false, "type": "location", "demo": "storage\/get-file-download.md", @@ -35803,7 +36713,7 @@ "x-appwrite": { "method": "getFilePreview", "group": "files", - "weight": 530, + "weight": 546, "cookies": false, "type": "location", "demo": "storage\/get-file-preview.md", @@ -36033,7 +36943,7 @@ "x-appwrite": { "method": "getFileView", "group": "files", - "weight": 532, + "weight": 548, "cookies": false, "type": "location", "demo": "storage\/get-file-view.md", @@ -36120,7 +37030,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 534, + "weight": 550, "cookies": false, "type": "", "demo": "storage\/get-usage.md", @@ -36193,7 +37103,7 @@ "x-appwrite": { "method": "getBucketUsage", "group": null, - "weight": 535, + "weight": 551, "cookies": false, "type": "", "demo": "storage\/get-bucket-usage.md", @@ -36276,7 +37186,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 344, + "weight": 352, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -36362,7 +37272,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 340, + "weight": 348, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -36443,7 +37353,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 403, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/list-transactions.md", @@ -36513,7 +37423,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 399, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-transaction.md", @@ -36587,7 +37497,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 400, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-transaction.md", @@ -36654,7 +37564,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 401, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/update-transaction.md", @@ -36735,7 +37645,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 402, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/delete-transaction.md", @@ -36804,7 +37714,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 404, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/create-operations.md", @@ -36892,7 +37802,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 346, + "weight": 354, "cookies": false, "type": "", "demo": "tablesdb\/list-usage.md", @@ -36991,7 +37901,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 341, + "weight": 349, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -37052,7 +37962,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 342, + "weight": 350, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -37127,7 +38037,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 343, + "weight": 351, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -37190,7 +38100,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 351, + "weight": 359, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -37289,7 +38199,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 347, + "weight": 355, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -37415,7 +38325,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 348, + "weight": 356, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -37489,7 +38399,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 349, + "weight": 357, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -37591,7 +38501,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 350, + "weight": 358, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -37667,7 +38577,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 356, + "weight": 364, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -37767,7 +38677,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 357, + "weight": 365, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -37879,7 +38789,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 358, + "weight": 366, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -37996,7 +38906,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 359, + "weight": 367, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -38108,7 +39018,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 360, + "weight": 368, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -38225,7 +39135,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 361, + "weight": 369, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -38338,7 +39248,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 362, + "weight": 370, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -38456,7 +39366,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 363, + "weight": 371, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -38577,7 +39487,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 364, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -38703,7 +39613,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 365, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -38830,7 +39740,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 366, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -38962,7 +39872,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 367, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -39089,7 +39999,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 368, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -39221,7 +40131,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 369, + "weight": 377, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -39333,7 +40243,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 370, + "weight": 378, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -39450,7 +40360,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 371, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -39564,7 +40474,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 372, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -39663,6 +40573,464 @@ } } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/longtext": { + "post": { + "summary": "Create longtext column", + "operationId": "tablesDBCreateLongtextColumn", + "tags": [ + "tablesDB" + ], + "description": "Create a longtext column.\n", + "responses": { + "202": { + "description": "ColumnLongtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnLongtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createLongtextColumn", + "group": "columns", + "weight": 397, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-longtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-longtext-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/longtext\/{key}": { + "patch": { + "summary": "Update longtext column", + "operationId": "tablesDBUpdateLongtextColumn", + "tags": [ + "tablesDB" + ], + "description": "Update a longtext column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnLongtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnLongtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateLongtextColumn", + "group": "columns", + "weight": 398, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-longtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-longtext-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/mediumtext": { + "post": { + "summary": "Create mediumtext column", + "operationId": "tablesDBCreateMediumtextColumn", + "tags": [ + "tablesDB" + ], + "description": "Create a mediumtext column.\n", + "responses": { + "202": { + "description": "ColumnMediumtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnMediumtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createMediumtextColumn", + "group": "columns", + "weight": 395, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-mediumtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-mediumtext-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/mediumtext\/{key}": { + "patch": { + "summary": "Update mediumtext column", + "operationId": "tablesDBUpdateMediumtextColumn", + "tags": [ + "tablesDB" + ], + "description": "Update a mediumtext column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnMediumtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnMediumtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateMediumtextColumn", + "group": "columns", + "weight": 396, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-mediumtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-mediumtext-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/point": { "post": { "summary": "Create point column", @@ -39687,7 +41055,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 373, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -39801,7 +41169,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 374, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -39924,7 +41292,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 375, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -40038,7 +41406,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 376, + "weight": 384, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -40161,7 +41529,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 377, + "weight": 385, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -40295,11 +41663,11 @@ } } }, - "deprecated": false, + "deprecated": true, "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 379, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -40317,6 +41685,10 @@ "packaging": false, "public": true, "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-string-column.md", + "deprecated": { + "since": "1.9.0", + "replaceWith": "tablesDB.createTextColumn" + }, "auth": { "Project": [] } @@ -40419,11 +41791,11 @@ } } }, - "deprecated": false, + "deprecated": true, "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 380, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -40441,6 +41813,10 @@ "packaging": false, "public": true, "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-string-column.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "tablesDB.updateTextColumn" + }, "auth": { "Project": [] } @@ -40523,6 +41899,235 @@ } } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/text": { + "post": { + "summary": "Create text column", + "operationId": "tablesDBCreateTextColumn", + "tags": [ + "tablesDB" + ], + "description": "Create a text column.\n", + "responses": { + "202": { + "description": "ColumnText", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnText" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createTextColumn", + "group": "columns", + "weight": 393, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-text-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-text-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/text\/{key}": { + "patch": { + "summary": "Update text column", + "operationId": "tablesDBUpdateTextColumn", + "tags": [ + "tablesDB" + ], + "description": "Update a text column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnText", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnText" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateTextColumn", + "group": "columns", + "weight": 394, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-text-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-text-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/url": { "post": { "summary": "Create URL column", @@ -40547,7 +42152,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 381, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -40660,7 +42265,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 382, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -40754,6 +42359,249 @@ } } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/varchar": { + "post": { + "summary": "Create varchar column", + "operationId": "tablesDBCreateVarcharColumn", + "tags": [ + "tablesDB" + ], + "description": "Create a varchar column.\n", + "responses": { + "202": { + "description": "ColumnVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnVarchar" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createVarcharColumn", + "group": "columns", + "weight": 391, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-varchar-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-varchar-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": null + }, + "size": { + "type": "integer", + "description": "Column size for varchar columns, in number of characters. Maximum size is 16381.", + "x-example": 1, + "format": "int32" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/varchar\/{key}": { + "patch": { + "summary": "Update varchar column", + "operationId": "tablesDBUpdateVarcharColumn", + "tags": [ + "tablesDB" + ], + "description": "Update a varchar column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnVarchar" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateVarcharColumn", + "group": "columns", + "weight": 392, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-varchar-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-varchar-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "size": { + "type": "integer", + "description": "Maximum size of the varchar column.", + "x-example": 1, + "format": "int32", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/{key}": { "get": { "summary": "Get column", @@ -40809,7 +42657,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 354, + "weight": 362, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -40885,7 +42733,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 355, + "weight": 363, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -40970,7 +42818,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 378, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -41085,7 +42933,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 386, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -41183,7 +43031,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 383, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -41323,7 +43171,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 384, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -41399,7 +43247,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 385, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -41484,7 +43332,7 @@ "x-appwrite": { "method": "listTableLogs", "group": "tables", - "weight": 352, + "weight": 360, "cookies": false, "type": "", "demo": "tablesdb\/list-table-logs.md", @@ -41571,7 +43419,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 395, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -41682,7 +43530,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 387, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -41864,7 +43712,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 392, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -41996,7 +43844,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 390, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -42100,7 +43948,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 394, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -42201,7 +44049,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 388, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -42311,7 +44159,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 391, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -42461,7 +44309,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 389, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -42572,7 +44420,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 393, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -42678,7 +44526,7 @@ "x-appwrite": { "method": "listRowLogs", "group": "logs", - "weight": 396, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/list-row-logs.md", @@ -42775,7 +44623,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 398, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -42903,7 +44751,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 397, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -43031,7 +44879,7 @@ "x-appwrite": { "method": "getTableUsage", "group": null, - "weight": 353, + "weight": 361, "cookies": false, "type": "", "demo": "tablesdb\/get-table-usage.md", @@ -43127,7 +44975,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 345, + "weight": 353, "cookies": false, "type": "", "demo": "tablesdb\/get-usage.md", @@ -44418,7 +46266,7 @@ "x-appwrite": { "method": "list", "group": "files", - "weight": 517, + "weight": 533, "cookies": false, "type": "", "demo": "tokens\/list.md", @@ -44512,7 +46360,7 @@ "x-appwrite": { "method": "createFileToken", "group": "files", - "weight": 515, + "weight": 531, "cookies": false, "type": "", "demo": "tokens\/create-file-token.md", @@ -44601,7 +46449,7 @@ "x-appwrite": { "method": "get", "group": "tokens", - "weight": 516, + "weight": 532, "cookies": false, "type": "", "demo": "tokens\/get.md", @@ -44661,7 +46509,7 @@ "x-appwrite": { "method": "update", "group": "tokens", - "weight": 518, + "weight": 534, "cookies": false, "type": "", "demo": "tokens\/update.md", @@ -44731,7 +46579,7 @@ "x-appwrite": { "method": "delete", "group": "tokens", - "weight": 519, + "weight": 535, "cookies": false, "type": "", "demo": "tokens\/delete.md", @@ -52419,6 +54267,338 @@ ] } }, + "attributeVarchar": { + "description": "AttributeVarchar", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "size": { + "type": "integer", + "description": "Attribute size.", + "x-example": 128, + "format": "int32" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt", + "size" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "size": 128, + "default": "default" + } + }, + "attributeText": { + "description": "AttributeText", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "attributeMediumtext": { + "description": "AttributeMediumtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "attributeLongtext": { + "description": "AttributeLongtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, "table": { "description": "Table", "type": "object", @@ -53868,6 +56048,338 @@ ] } }, + "columnVarchar": { + "description": "ColumnVarchar", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "size": { + "type": "integer", + "description": "Column size.", + "x-example": 128, + "format": "int32" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt", + "size" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "size": 128, + "default": "default" + } + }, + "columnText": { + "description": "ColumnText", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "columnMediumtext": { + "description": "ColumnMediumtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "columnLongtext": { + "description": "ColumnLongtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, "index": { "description": "Index", "type": "object", diff --git a/app/config/specs/open-api3-latest-server.json b/app/config/specs/open-api3-latest-server.json index 6b4e836a43..16d0f92c7d 100644 --- a/app/config/specs/open-api3-latest-server.json +++ b/app/config/specs/open-api3-latest-server.json @@ -5854,7 +5854,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 338, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/list-transactions.md", @@ -5923,7 +5923,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 334, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-transaction.md", @@ -5996,7 +5996,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 335, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/get-transaction.md", @@ -6062,7 +6062,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 336, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/update-transaction.md", @@ -6142,7 +6142,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 337, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/delete-transaction.md", @@ -6210,7 +6210,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 339, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/create-operations.md", @@ -9119,6 +9119,456 @@ } } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/longtext": { + "post": { + "summary": "Create longtext attribute", + "operationId": "databasesCreateLongtextAttribute", + "tags": [ + "databases" + ], + "description": "Create a longtext attribute.\n", + "responses": { + "202": { + "description": "AttributeLongtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeLongtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createLongtextAttribute", + "group": "attributes", + "weight": 336, + "cookies": false, + "type": "", + "demo": "databases\/create-longtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-longtext-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/longtext\/{key}": { + "patch": { + "summary": "Update longtext attribute", + "operationId": "databasesUpdateLongtextAttribute", + "tags": [ + "databases" + ], + "description": "Update a longtext attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeLongtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeLongtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateLongtextAttribute", + "group": "attributes", + "weight": 337, + "cookies": false, + "type": "", + "demo": "databases\/update-longtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-longtext-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/mediumtext": { + "post": { + "summary": "Create mediumtext attribute", + "operationId": "databasesCreateMediumtextAttribute", + "tags": [ + "databases" + ], + "description": "Create a mediumtext attribute.\n", + "responses": { + "202": { + "description": "AttributeMediumtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeMediumtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createMediumtextAttribute", + "group": "attributes", + "weight": 334, + "cookies": false, + "type": "", + "demo": "databases\/create-mediumtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-mediumtext-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/mediumtext\/{key}": { + "patch": { + "summary": "Update mediumtext attribute", + "operationId": "databasesUpdateMediumtextAttribute", + "tags": [ + "databases" + ], + "description": "Update a mediumtext attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeMediumtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeMediumtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateMediumtextAttribute", + "group": "attributes", + "weight": 335, + "cookies": false, + "type": "", + "demo": "databases\/update-mediumtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-mediumtext-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/point": { "post": { "summary": "Create point attribute", @@ -9993,6 +10443,231 @@ } } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/text": { + "post": { + "summary": "Create text attribute", + "operationId": "databasesCreateTextAttribute", + "tags": [ + "databases" + ], + "description": "Create a text attribute.\n", + "responses": { + "202": { + "description": "AttributeText", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeText" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createTextAttribute", + "group": "attributes", + "weight": 332, + "cookies": false, + "type": "", + "demo": "databases\/create-text-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-text-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/text\/{key}": { + "patch": { + "summary": "Update text attribute", + "operationId": "databasesUpdateTextAttribute", + "tags": [ + "databases" + ], + "description": "Update a text attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeText", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeText" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateTextAttribute", + "group": "attributes", + "weight": 333, + "cookies": false, + "type": "", + "demo": "databases\/update-text-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-text-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/url": { "post": { "summary": "Create URL attribute", @@ -10228,6 +10903,245 @@ } } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar": { + "post": { + "summary": "Create varchar attribute", + "operationId": "databasesCreateVarcharAttribute", + "tags": [ + "databases" + ], + "description": "Create a varchar attribute.\n", + "responses": { + "202": { + "description": "AttributeVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeVarchar" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createVarcharAttribute", + "group": "attributes", + "weight": 330, + "cookies": false, + "type": "", + "demo": "databases\/create-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-varchar-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": null + }, + "size": { + "type": "integer", + "description": "Attribute size for varchar attributes, in number of characters. Maximum size is 16381.", + "x-example": 1, + "format": "int32" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar\/{key}": { + "patch": { + "summary": "Update varchar attribute", + "operationId": "databasesUpdateVarcharAttribute", + "tags": [ + "databases" + ], + "description": "Update a varchar attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeVarchar" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateVarcharAttribute", + "group": "attributes", + "weight": 331, + "cookies": false, + "type": "", + "demo": "databases\/update-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-varchar-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "", + "x-nullable": true + }, + "size": { + "type": "integer", + "description": "Maximum size of the varchar attribute.", + "x-example": 1, + "format": "int32", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/{key}": { "get": { "summary": "Get attribute", @@ -11978,7 +12892,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 333, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -12078,7 +12992,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 330, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -12220,7 +13134,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 331, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -12298,7 +13212,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 332, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -12385,7 +13299,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 415, + "weight": 431, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -12471,7 +13385,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 412, + "weight": 428, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -12768,7 +13682,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 417, + "weight": 433, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -12819,7 +13733,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 418, + "weight": 434, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -12870,7 +13784,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 413, + "weight": 429, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -12931,7 +13845,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 414, + "weight": 430, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -13225,7 +14139,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 416, + "weight": 432, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -13288,7 +14202,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 421, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -13370,7 +14284,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 422, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -13466,7 +14380,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 419, + "weight": 435, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -13567,7 +14481,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 427, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -13654,7 +14568,7 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 424, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", @@ -13772,7 +14686,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 425, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -13871,7 +14785,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 420, + "weight": 436, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -13935,7 +14849,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 423, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -14001,7 +14915,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 426, + "weight": 442, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -14093,7 +15007,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 428, + "weight": 444, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -14166,7 +15080,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 431, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -14255,7 +15169,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 429, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -14375,7 +15289,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 430, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -14443,7 +15357,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 432, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -14516,7 +15430,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 437, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -14577,7 +15491,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 435, + "weight": 451, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -14670,7 +15584,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 436, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -14741,7 +15655,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 438, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -14836,7 +15750,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 439, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -15021,7 +15935,7 @@ "x-appwrite": { "method": "get", "group": "health", - "weight": 442, + "weight": 458, "cookies": false, "type": "", "demo": "health\/get.md", @@ -15073,7 +15987,7 @@ "x-appwrite": { "method": "getAntivirus", "group": "health", - "weight": 451, + "weight": 467, "cookies": false, "type": "", "demo": "health\/get-antivirus.md", @@ -15125,7 +16039,7 @@ "x-appwrite": { "method": "getCache", "group": "health", - "weight": 445, + "weight": 461, "cookies": false, "type": "", "demo": "health\/get-cache.md", @@ -15177,7 +16091,7 @@ "x-appwrite": { "method": "getCertificate", "group": "health", - "weight": 448, + "weight": 464, "cookies": false, "type": "", "demo": "health\/get-certificate.md", @@ -15240,7 +16154,7 @@ "x-appwrite": { "method": "getDB", "group": "health", - "weight": 444, + "weight": 460, "cookies": false, "type": "", "demo": "health\/get-db.md", @@ -15292,7 +16206,7 @@ "x-appwrite": { "method": "getPubSub", "group": "health", - "weight": 446, + "weight": 462, "cookies": false, "type": "", "demo": "health\/get-pub-sub.md", @@ -15344,7 +16258,7 @@ "x-appwrite": { "method": "getQueueAudits", "group": "queue", - "weight": 452, + "weight": 468, "cookies": false, "type": "", "demo": "health\/get-queue-audits.md", @@ -15409,7 +16323,7 @@ "x-appwrite": { "method": "getQueueBuilds", "group": "queue", - "weight": 456, + "weight": 472, "cookies": false, "type": "", "demo": "health\/get-queue-builds.md", @@ -15474,7 +16388,7 @@ "x-appwrite": { "method": "getQueueCertificates", "group": "queue", - "weight": 455, + "weight": 471, "cookies": false, "type": "", "demo": "health\/get-queue-certificates.md", @@ -15539,7 +16453,7 @@ "x-appwrite": { "method": "getQueueDatabases", "group": "queue", - "weight": 457, + "weight": 473, "cookies": false, "type": "", "demo": "health\/get-queue-databases.md", @@ -15615,7 +16529,7 @@ "x-appwrite": { "method": "getQueueDeletes", "group": "queue", - "weight": 458, + "weight": 474, "cookies": false, "type": "", "demo": "health\/get-queue-deletes.md", @@ -15680,7 +16594,7 @@ "x-appwrite": { "method": "getFailedJobs", "group": "queue", - "weight": 465, + "weight": 481, "cookies": false, "type": "", "demo": "health\/get-failed-jobs.md", @@ -15772,7 +16686,7 @@ "x-appwrite": { "method": "getQueueFunctions", "group": "queue", - "weight": 462, + "weight": 478, "cookies": false, "type": "", "demo": "health\/get-queue-functions.md", @@ -15837,7 +16751,7 @@ "x-appwrite": { "method": "getQueueLogs", "group": "queue", - "weight": 454, + "weight": 470, "cookies": false, "type": "", "demo": "health\/get-queue-logs.md", @@ -15902,7 +16816,7 @@ "x-appwrite": { "method": "getQueueMails", "group": "queue", - "weight": 459, + "weight": 475, "cookies": false, "type": "", "demo": "health\/get-queue-mails.md", @@ -15967,7 +16881,7 @@ "x-appwrite": { "method": "getQueueMessaging", "group": "queue", - "weight": 460, + "weight": 476, "cookies": false, "type": "", "demo": "health\/get-queue-messaging.md", @@ -16032,7 +16946,7 @@ "x-appwrite": { "method": "getQueueMigrations", "group": "queue", - "weight": 461, + "weight": 477, "cookies": false, "type": "", "demo": "health\/get-queue-migrations.md", @@ -16097,7 +17011,7 @@ "x-appwrite": { "method": "getQueueStatsResources", "group": "queue", - "weight": 463, + "weight": 479, "cookies": false, "type": "", "demo": "health\/get-queue-stats-resources.md", @@ -16162,7 +17076,7 @@ "x-appwrite": { "method": "getQueueUsage", "group": "queue", - "weight": 464, + "weight": 480, "cookies": false, "type": "", "demo": "health\/get-queue-usage.md", @@ -16227,7 +17141,7 @@ "x-appwrite": { "method": "getQueueWebhooks", "group": "queue", - "weight": 453, + "weight": 469, "cookies": false, "type": "", "demo": "health\/get-queue-webhooks.md", @@ -16292,7 +17206,7 @@ "x-appwrite": { "method": "getStorage", "group": "storage", - "weight": 450, + "weight": 466, "cookies": false, "type": "", "demo": "health\/get-storage.md", @@ -16344,7 +17258,7 @@ "x-appwrite": { "method": "getStorageLocal", "group": "storage", - "weight": 449, + "weight": 465, "cookies": false, "type": "", "demo": "health\/get-storage-local.md", @@ -16396,7 +17310,7 @@ "x-appwrite": { "method": "getTime", "group": "health", - "weight": 447, + "weight": 463, "cookies": false, "type": "", "demo": "health\/get-time.md", @@ -22359,7 +23273,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 469, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -22445,7 +23359,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 467, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -22700,7 +23614,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 472, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -22751,7 +23665,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 495, + "weight": 511, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -22802,7 +23716,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 468, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -22863,7 +23777,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 470, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -23114,7 +24028,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 471, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -23177,7 +24091,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 478, + "weight": 494, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -23259,7 +24173,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 477, + "weight": 493, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -23355,7 +24269,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 473, + "weight": 489, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -23462,7 +24376,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 481, + "weight": 497, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -23544,7 +24458,7 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 474, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", @@ -23662,7 +24576,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 475, + "weight": 491, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -23762,7 +24676,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 476, + "weight": 492, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -23826,7 +24740,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 479, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -23892,7 +24806,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 480, + "weight": 496, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -23984,7 +24898,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 482, + "weight": 498, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -24057,7 +24971,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 484, + "weight": 500, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -24144,7 +25058,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 483, + "weight": 499, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -24208,7 +25122,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 485, + "weight": 501, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -24281,7 +25195,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 488, + "weight": 504, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -24342,7 +25256,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 486, + "weight": 502, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -24435,7 +25349,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 487, + "weight": 503, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -24506,7 +25420,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 489, + "weight": 505, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -24601,7 +25515,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 490, + "weight": 506, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -24674,7 +25588,7 @@ "x-appwrite": { "method": "listBuckets", "group": "buckets", - "weight": 522, + "weight": 538, "cookies": false, "type": "", "demo": "storage\/list-buckets.md", @@ -24761,7 +25675,7 @@ "x-appwrite": { "method": "createBucket", "group": "buckets", - "weight": 520, + "weight": 536, "cookies": false, "type": "", "demo": "storage\/create-bucket.md", @@ -24898,7 +25812,7 @@ "x-appwrite": { "method": "getBucket", "group": "buckets", - "weight": 521, + "weight": 537, "cookies": false, "type": "", "demo": "storage\/get-bucket.md", @@ -24960,7 +25874,7 @@ "x-appwrite": { "method": "updateBucket", "group": "buckets", - "weight": 523, + "weight": 539, "cookies": false, "type": "", "demo": "storage\/update-bucket.md", @@ -25094,7 +26008,7 @@ "x-appwrite": { "method": "deleteBucket", "group": "buckets", - "weight": 524, + "weight": 540, "cookies": false, "type": "", "demo": "storage\/delete-bucket.md", @@ -25158,7 +26072,7 @@ "x-appwrite": { "method": "listFiles", "group": "files", - "weight": 527, + "weight": 543, "cookies": false, "type": "", "demo": "storage\/list-files.md", @@ -25259,7 +26173,7 @@ "x-appwrite": { "method": "createFile", "group": "files", - "weight": 525, + "weight": 541, "cookies": false, "type": "upload", "demo": "storage\/create-file.md", @@ -25363,7 +26277,7 @@ "x-appwrite": { "method": "getFile", "group": "files", - "weight": 526, + "weight": 542, "cookies": false, "type": "", "demo": "storage\/get-file.md", @@ -25439,7 +26353,7 @@ "x-appwrite": { "method": "updateFile", "group": "files", - "weight": 528, + "weight": 544, "cookies": false, "type": "", "demo": "storage\/update-file.md", @@ -25533,7 +26447,7 @@ "x-appwrite": { "method": "deleteFile", "group": "files", - "weight": 529, + "weight": 545, "cookies": false, "type": "", "demo": "storage\/delete-file.md", @@ -25604,7 +26518,7 @@ "x-appwrite": { "method": "getFileDownload", "group": "files", - "weight": 531, + "weight": 547, "cookies": false, "type": "location", "demo": "storage\/get-file-download.md", @@ -25686,7 +26600,7 @@ "x-appwrite": { "method": "getFilePreview", "group": "files", - "weight": 530, + "weight": 546, "cookies": false, "type": "location", "demo": "storage\/get-file-preview.md", @@ -25918,7 +26832,7 @@ "x-appwrite": { "method": "getFileView", "group": "files", - "weight": 532, + "weight": 548, "cookies": false, "type": "location", "demo": "storage\/get-file-view.md", @@ -26007,7 +26921,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 344, + "weight": 352, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -26094,7 +27008,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 340, + "weight": 348, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -26176,7 +27090,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 403, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/list-transactions.md", @@ -26248,7 +27162,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 399, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-transaction.md", @@ -26324,7 +27238,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 400, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-transaction.md", @@ -26393,7 +27307,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 401, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/update-transaction.md", @@ -26476,7 +27390,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 402, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/delete-transaction.md", @@ -26547,7 +27461,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 404, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/create-operations.md", @@ -26637,7 +27551,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 341, + "weight": 349, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -26699,7 +27613,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 342, + "weight": 350, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -26775,7 +27689,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 343, + "weight": 351, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -26839,7 +27753,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 351, + "weight": 359, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -26939,7 +27853,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 347, + "weight": 355, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -27066,7 +27980,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 348, + "weight": 356, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -27141,7 +28055,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 349, + "weight": 357, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -27244,7 +28158,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 350, + "weight": 358, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -27321,7 +28235,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 356, + "weight": 364, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -27422,7 +28336,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 357, + "weight": 365, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -27535,7 +28449,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 358, + "weight": 366, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -27653,7 +28567,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 359, + "weight": 367, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -27766,7 +28680,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 360, + "weight": 368, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -27884,7 +28798,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 361, + "weight": 369, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -27998,7 +28912,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 362, + "weight": 370, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -28117,7 +29031,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 363, + "weight": 371, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -28239,7 +29153,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 364, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -28366,7 +29280,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 365, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -28494,7 +29408,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 366, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -28627,7 +29541,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 367, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -28755,7 +29669,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 368, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -28888,7 +29802,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 369, + "weight": 377, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -29001,7 +29915,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 370, + "weight": 378, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -29119,7 +30033,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 371, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -29234,7 +30148,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 372, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -29334,6 +30248,468 @@ } } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/longtext": { + "post": { + "summary": "Create longtext column", + "operationId": "tablesDBCreateLongtextColumn", + "tags": [ + "tablesDB" + ], + "description": "Create a longtext column.\n", + "responses": { + "202": { + "description": "ColumnLongtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnLongtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createLongtextColumn", + "group": "columns", + "weight": 397, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-longtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-longtext-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/longtext\/{key}": { + "patch": { + "summary": "Update longtext column", + "operationId": "tablesDBUpdateLongtextColumn", + "tags": [ + "tablesDB" + ], + "description": "Update a longtext column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnLongtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnLongtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateLongtextColumn", + "group": "columns", + "weight": 398, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-longtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-longtext-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/mediumtext": { + "post": { + "summary": "Create mediumtext column", + "operationId": "tablesDBCreateMediumtextColumn", + "tags": [ + "tablesDB" + ], + "description": "Create a mediumtext column.\n", + "responses": { + "202": { + "description": "ColumnMediumtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnMediumtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createMediumtextColumn", + "group": "columns", + "weight": 395, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-mediumtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-mediumtext-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/mediumtext\/{key}": { + "patch": { + "summary": "Update mediumtext column", + "operationId": "tablesDBUpdateMediumtextColumn", + "tags": [ + "tablesDB" + ], + "description": "Update a mediumtext column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnMediumtext", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnMediumtext" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateMediumtextColumn", + "group": "columns", + "weight": 396, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-mediumtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-mediumtext-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/point": { "post": { "summary": "Create point column", @@ -29358,7 +30734,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 373, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -29473,7 +30849,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 374, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -29597,7 +30973,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 375, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -29712,7 +31088,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 376, + "weight": 384, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -29836,7 +31212,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 377, + "weight": 385, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -29971,11 +31347,11 @@ } } }, - "deprecated": false, + "deprecated": true, "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 379, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -29993,6 +31369,10 @@ "packaging": false, "public": true, "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-string-column.md", + "deprecated": { + "since": "1.9.0", + "replaceWith": "tablesDB.createTextColumn" + }, "auth": { "Project": [], "Key": [] @@ -30096,11 +31476,11 @@ } } }, - "deprecated": false, + "deprecated": true, "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 380, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -30118,6 +31498,10 @@ "packaging": false, "public": true, "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-string-column.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "tablesDB.updateTextColumn" + }, "auth": { "Project": [], "Key": [] @@ -30201,6 +31585,237 @@ } } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/text": { + "post": { + "summary": "Create text column", + "operationId": "tablesDBCreateTextColumn", + "tags": [ + "tablesDB" + ], + "description": "Create a text column.\n", + "responses": { + "202": { + "description": "ColumnText", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnText" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createTextColumn", + "group": "columns", + "weight": 393, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-text-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-text-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/text\/{key}": { + "patch": { + "summary": "Update text column", + "operationId": "tablesDBUpdateTextColumn", + "tags": [ + "tablesDB" + ], + "description": "Update a text column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnText", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnText" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateTextColumn", + "group": "columns", + "weight": 394, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-text-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-text-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/url": { "post": { "summary": "Create URL column", @@ -30225,7 +31840,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 381, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -30339,7 +31954,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 382, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -30434,6 +32049,251 @@ } } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/varchar": { + "post": { + "summary": "Create varchar column", + "operationId": "tablesDBCreateVarcharColumn", + "tags": [ + "tablesDB" + ], + "description": "Create a varchar column.\n", + "responses": { + "202": { + "description": "ColumnVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnVarchar" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createVarcharColumn", + "group": "columns", + "weight": 391, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-varchar-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-varchar-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": null + }, + "size": { + "type": "integer", + "description": "Column size for varchar columns, in number of characters. Maximum size is 16381.", + "x-example": 1, + "format": "int32" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + } + } + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/varchar\/{key}": { + "patch": { + "summary": "Update varchar column", + "operationId": "tablesDBUpdateVarcharColumn", + "tags": [ + "tablesDB" + ], + "description": "Update a varchar column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/columnVarchar" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateVarcharColumn", + "group": "columns", + "weight": 392, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-varchar-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-varchar-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "", + "x-nullable": true + }, + "size": { + "type": "integer", + "description": "Maximum size of the varchar column.", + "x-example": 1, + "format": "int32", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/{key}": { "get": { "summary": "Get column", @@ -30489,7 +32349,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 354, + "weight": 362, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -30566,7 +32426,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 355, + "weight": 363, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -30652,7 +32512,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 378, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -30768,7 +32628,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 386, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -30867,7 +32727,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 383, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -31008,7 +32868,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 384, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -31085,7 +32945,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 385, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -31171,7 +33031,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 395, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -31284,7 +33144,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 387, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -31470,7 +33330,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 392, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -31604,7 +33464,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 390, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -31709,7 +33569,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 394, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -31811,7 +33671,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 388, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -31923,7 +33783,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 391, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -32076,7 +33936,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 389, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -32189,7 +34049,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 393, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -32297,7 +34157,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 398, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -32427,7 +34287,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 397, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -33677,7 +35537,7 @@ "x-appwrite": { "method": "list", "group": "files", - "weight": 517, + "weight": 533, "cookies": false, "type": "", "demo": "tokens\/list.md", @@ -33772,7 +35632,7 @@ "x-appwrite": { "method": "createFileToken", "group": "files", - "weight": 515, + "weight": 531, "cookies": false, "type": "", "demo": "tokens\/create-file-token.md", @@ -33862,7 +35722,7 @@ "x-appwrite": { "method": "get", "group": "tokens", - "weight": 516, + "weight": 532, "cookies": false, "type": "", "demo": "tokens\/get.md", @@ -33923,7 +35783,7 @@ "x-appwrite": { "method": "update", "group": "tokens", - "weight": 518, + "weight": 534, "cookies": false, "type": "", "demo": "tokens\/update.md", @@ -33994,7 +35854,7 @@ "x-appwrite": { "method": "delete", "group": "tokens", - "weight": 519, + "weight": 535, "cookies": false, "type": "", "demo": "tokens\/delete.md", @@ -40473,6 +42333,338 @@ ] } }, + "attributeVarchar": { + "description": "AttributeVarchar", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "size": { + "type": "integer", + "description": "Attribute size.", + "x-example": 128, + "format": "int32" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt", + "size" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "size": 128, + "default": "default" + } + }, + "attributeText": { + "description": "AttributeText", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "attributeMediumtext": { + "description": "AttributeMediumtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "attributeLongtext": { + "description": "AttributeLongtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, "table": { "description": "Table", "type": "object", @@ -41922,6 +44114,338 @@ ] } }, + "columnVarchar": { + "description": "ColumnVarchar", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "size": { + "type": "integer", + "description": "Column size.", + "x-example": 128, + "format": "int32" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt", + "size" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "size": 128, + "default": "default" + } + }, + "columnText": { + "description": "ColumnText", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "columnMediumtext": { + "description": "ColumnMediumtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "columnLongtext": { + "description": "ColumnLongtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, "index": { "description": "Index", "type": "object", diff --git a/app/config/specs/swagger2-latest-client.json b/app/config/specs/swagger2-latest-client.json index 347e172dfd..e265c1fd93 100644 --- a/app/config/specs/swagger2-latest-client.json +++ b/app/config/specs/swagger2-latest-client.json @@ -5994,7 +5994,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 338, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/list-transactions.md", @@ -6061,7 +6061,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 334, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-transaction.md", @@ -6132,7 +6132,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 335, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/get-transaction.md", @@ -6195,7 +6195,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 336, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/update-transaction.md", @@ -6274,7 +6274,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 337, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/delete-transaction.md", @@ -6339,7 +6339,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 339, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/create-operations.md", @@ -7392,7 +7392,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 431, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -7475,7 +7475,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 429, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -7594,7 +7594,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 430, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -8396,7 +8396,7 @@ "x-appwrite": { "method": "listFiles", "group": "files", - "weight": 527, + "weight": 543, "cookies": false, "type": "", "demo": "storage\/list-files.md", @@ -8489,7 +8489,7 @@ "x-appwrite": { "method": "createFile", "group": "files", - "weight": 525, + "weight": 541, "cookies": false, "type": "upload", "demo": "storage\/create-file.md", @@ -8580,7 +8580,7 @@ "x-appwrite": { "method": "getFile", "group": "files", - "weight": 526, + "weight": 542, "cookies": false, "type": "", "demo": "storage\/get-file.md", @@ -8651,7 +8651,7 @@ "x-appwrite": { "method": "updateFile", "group": "files", - "weight": 528, + "weight": 544, "cookies": false, "type": "", "demo": "storage\/update-file.md", @@ -8742,7 +8742,7 @@ "x-appwrite": { "method": "deleteFile", "group": "files", - "weight": 529, + "weight": 545, "cookies": false, "type": "", "demo": "storage\/delete-file.md", @@ -8813,7 +8813,7 @@ "x-appwrite": { "method": "getFileDownload", "group": "files", - "weight": 531, + "weight": 547, "cookies": false, "type": "location", "demo": "storage\/get-file-download.md", @@ -8893,7 +8893,7 @@ "x-appwrite": { "method": "getFilePreview", "group": "files", - "weight": 530, + "weight": 546, "cookies": false, "type": "location", "demo": "storage\/get-file-preview.md", @@ -9101,7 +9101,7 @@ "x-appwrite": { "method": "getFileView", "group": "files", - "weight": 532, + "weight": 548, "cookies": false, "type": "location", "demo": "storage\/get-file-view.md", @@ -9181,7 +9181,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 403, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/list-transactions.md", @@ -9251,7 +9251,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 399, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-transaction.md", @@ -9325,7 +9325,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 400, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-transaction.md", @@ -9391,7 +9391,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 401, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/update-transaction.md", @@ -9473,7 +9473,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 402, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/delete-transaction.md", @@ -9541,7 +9541,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 404, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/create-operations.md", @@ -9625,7 +9625,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 395, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -9728,7 +9728,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 387, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -9882,7 +9882,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 388, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -9984,7 +9984,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 391, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -10130,7 +10130,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 389, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -10239,7 +10239,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 393, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -10339,7 +10339,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 398, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -10461,7 +10461,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 397, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", diff --git a/app/config/specs/swagger2-latest-console.json b/app/config/specs/swagger2-latest-console.json index 0bb1a47f0a..4ff17f347b 100644 --- a/app/config/specs/swagger2-latest-console.json +++ b/app/config/specs/swagger2-latest-console.json @@ -6005,7 +6005,7 @@ "x-appwrite": { "method": "chat", "group": "console", - "weight": 497, + "weight": 513, "cookies": false, "type": "", "demo": "assistant\/chat.md", @@ -6069,7 +6069,7 @@ "x-appwrite": { "method": "getResource", "group": null, - "weight": 498, + "weight": 514, "cookies": false, "type": "", "demo": "console\/get-resource.md", @@ -6140,7 +6140,7 @@ "x-appwrite": { "method": "variables", "group": "console", - "weight": 496, + "weight": 512, "cookies": false, "type": "", "demo": "console\/variables.md", @@ -6425,7 +6425,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 338, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/list-transactions.md", @@ -6492,7 +6492,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 334, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-transaction.md", @@ -6563,7 +6563,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 335, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/get-transaction.md", @@ -6626,7 +6626,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 336, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/update-transaction.md", @@ -6705,7 +6705,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 337, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/delete-transaction.md", @@ -6770,7 +6770,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 339, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/create-operations.md", @@ -9705,6 +9705,446 @@ ] } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/longtext": { + "post": { + "summary": "Create longtext attribute", + "operationId": "databasesCreateLongtextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Create a longtext attribute.\n", + "responses": { + "202": { + "description": "AttributeLongtext", + "schema": { + "$ref": "#\/definitions\/attributeLongtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createLongtextAttribute", + "group": "attributes", + "weight": 336, + "cookies": false, + "type": "", + "demo": "databases\/create-longtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-longtext-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/longtext\/{key}": { + "patch": { + "summary": "Update longtext attribute", + "operationId": "databasesUpdateLongtextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update a longtext attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeLongtext", + "schema": { + "$ref": "#\/definitions\/attributeLongtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateLongtextAttribute", + "group": "attributes", + "weight": 337, + "cookies": false, + "type": "", + "demo": "databases\/update-longtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-longtext-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/mediumtext": { + "post": { + "summary": "Create mediumtext attribute", + "operationId": "databasesCreateMediumtextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Create a mediumtext attribute.\n", + "responses": { + "202": { + "description": "AttributeMediumtext", + "schema": { + "$ref": "#\/definitions\/attributeMediumtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createMediumtextAttribute", + "group": "attributes", + "weight": 334, + "cookies": false, + "type": "", + "demo": "databases\/create-mediumtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-mediumtext-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/mediumtext\/{key}": { + "patch": { + "summary": "Update mediumtext attribute", + "operationId": "databasesUpdateMediumtextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update a mediumtext attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeMediumtext", + "schema": { + "$ref": "#\/definitions\/attributeMediumtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateMediumtextAttribute", + "group": "attributes", + "weight": 335, + "cookies": false, + "type": "", + "demo": "databases\/update-mediumtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-mediumtext-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/point": { "post": { "summary": "Create point attribute", @@ -10538,6 +10978,226 @@ ] } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/text": { + "post": { + "summary": "Create text attribute", + "operationId": "databasesCreateTextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Create a text attribute.\n", + "responses": { + "202": { + "description": "AttributeText", + "schema": { + "$ref": "#\/definitions\/attributeText" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createTextAttribute", + "group": "attributes", + "weight": 332, + "cookies": false, + "type": "", + "demo": "databases\/create-text-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-text-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/text\/{key}": { + "patch": { + "summary": "Update text attribute", + "operationId": "databasesUpdateTextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update a text attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeText", + "schema": { + "$ref": "#\/definitions\/attributeText" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateTextAttribute", + "group": "attributes", + "weight": 333, + "cookies": false, + "type": "", + "demo": "databases\/update-text-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-text-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/url": { "post": { "summary": "Create URL attribute", @@ -10768,6 +11428,242 @@ ] } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar": { + "post": { + "summary": "Create varchar attribute", + "operationId": "databasesCreateVarcharAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Create a varchar attribute.\n", + "responses": { + "202": { + "description": "AttributeVarchar", + "schema": { + "$ref": "#\/definitions\/attributeVarchar" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createVarcharAttribute", + "group": "attributes", + "weight": 330, + "cookies": false, + "type": "", + "demo": "databases\/create-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-varchar-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "default": null, + "x-example": null + }, + "size": { + "type": "integer", + "description": "Attribute size for varchar attributes, in number of characters. Maximum size is 16381.", + "default": null, + "x-example": 1, + "format": "int32" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar\/{key}": { + "patch": { + "summary": "Update varchar attribute", + "operationId": "databasesUpdateVarcharAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update a varchar attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeVarchar", + "schema": { + "$ref": "#\/definitions\/attributeVarchar" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateVarcharAttribute", + "group": "attributes", + "weight": 331, + "cookies": false, + "type": "", + "demo": "databases\/update-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-varchar-attribute.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "size": { + "type": "integer", + "description": "Maximum size of the varchar attribute.", + "default": null, + "x-example": 1, + "format": "int32", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/{key}": { "get": { "summary": "Get attribute", @@ -12522,7 +13418,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 333, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -12616,7 +13512,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 330, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -12756,7 +13652,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 331, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -12831,7 +13727,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 332, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -13303,7 +14199,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 415, + "weight": 431, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -13385,7 +14281,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 412, + "weight": 428, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -13699,7 +14595,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 417, + "weight": 433, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -13749,7 +14645,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 418, + "weight": 434, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -13799,7 +14695,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 441, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/list-templates.md", @@ -13914,12 +14810,13 @@ "items": { "type": "string", "enum": [ - "dev-tools", "starter", "databases", "ai", "messaging", - "utilities" + "utilities", + "dev-tools", + "auth" ], "x-enum-name": null, "x-enum-keys": [] @@ -13983,7 +14880,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 440, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/get-template.md", @@ -14041,7 +14938,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 434, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/list-usage.md", @@ -14111,7 +15008,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 413, + "weight": 429, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -14171,7 +15068,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 414, + "weight": 430, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -14481,7 +15378,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 416, + "weight": 432, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -14543,7 +15440,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 421, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -14621,7 +15518,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 422, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -14711,7 +15608,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 419, + "weight": 435, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -14804,7 +15701,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 427, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -14890,7 +15787,7 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 424, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", @@ -15011,7 +15908,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 425, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -15108,7 +16005,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 420, + "weight": 436, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -15171,7 +16068,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 423, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -15239,7 +16136,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 426, + "weight": 442, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -15325,7 +16222,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 428, + "weight": 444, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -15393,7 +16290,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 431, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -15476,7 +16373,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 429, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -15595,7 +16492,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 430, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -15660,7 +16557,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 432, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -15728,7 +16625,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 433, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/get-usage.md", @@ -15806,7 +16703,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 437, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -15866,7 +16763,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 435, + "weight": 451, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -15957,7 +16854,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 436, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -16025,7 +16922,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 438, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -16120,7 +17017,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 439, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -16338,7 +17235,7 @@ "x-appwrite": { "method": "get", "group": "health", - "weight": 442, + "weight": 458, "cookies": false, "type": "", "demo": "health\/get.md", @@ -16389,7 +17286,7 @@ "x-appwrite": { "method": "getAntivirus", "group": "health", - "weight": 451, + "weight": 467, "cookies": false, "type": "", "demo": "health\/get-antivirus.md", @@ -16440,7 +17337,7 @@ "x-appwrite": { "method": "getCache", "group": "health", - "weight": 445, + "weight": 461, "cookies": false, "type": "", "demo": "health\/get-cache.md", @@ -16491,7 +17388,7 @@ "x-appwrite": { "method": "getCertificate", "group": "health", - "weight": 448, + "weight": 464, "cookies": false, "type": "", "demo": "health\/get-certificate.md", @@ -16551,7 +17448,7 @@ "x-appwrite": { "method": "getDB", "group": "health", - "weight": 444, + "weight": 460, "cookies": false, "type": "", "demo": "health\/get-db.md", @@ -16602,7 +17499,7 @@ "x-appwrite": { "method": "getPubSub", "group": "health", - "weight": 446, + "weight": 462, "cookies": false, "type": "", "demo": "health\/get-pub-sub.md", @@ -16653,7 +17550,7 @@ "x-appwrite": { "method": "getQueueAudits", "group": "queue", - "weight": 452, + "weight": 468, "cookies": false, "type": "", "demo": "health\/get-queue-audits.md", @@ -16715,7 +17612,7 @@ "x-appwrite": { "method": "getQueueBuilds", "group": "queue", - "weight": 456, + "weight": 472, "cookies": false, "type": "", "demo": "health\/get-queue-builds.md", @@ -16777,7 +17674,7 @@ "x-appwrite": { "method": "getQueueCertificates", "group": "queue", - "weight": 455, + "weight": 471, "cookies": false, "type": "", "demo": "health\/get-queue-certificates.md", @@ -16839,7 +17736,7 @@ "x-appwrite": { "method": "getQueueDatabases", "group": "queue", - "weight": 457, + "weight": 473, "cookies": false, "type": "", "demo": "health\/get-queue-databases.md", @@ -16910,7 +17807,7 @@ "x-appwrite": { "method": "getQueueDeletes", "group": "queue", - "weight": 458, + "weight": 474, "cookies": false, "type": "", "demo": "health\/get-queue-deletes.md", @@ -16972,7 +17869,7 @@ "x-appwrite": { "method": "getFailedJobs", "group": "queue", - "weight": 465, + "weight": 481, "cookies": false, "type": "", "demo": "health\/get-failed-jobs.md", @@ -17059,7 +17956,7 @@ "x-appwrite": { "method": "getQueueFunctions", "group": "queue", - "weight": 462, + "weight": 478, "cookies": false, "type": "", "demo": "health\/get-queue-functions.md", @@ -17121,7 +18018,7 @@ "x-appwrite": { "method": "getQueueLogs", "group": "queue", - "weight": 454, + "weight": 470, "cookies": false, "type": "", "demo": "health\/get-queue-logs.md", @@ -17183,7 +18080,7 @@ "x-appwrite": { "method": "getQueueMails", "group": "queue", - "weight": 459, + "weight": 475, "cookies": false, "type": "", "demo": "health\/get-queue-mails.md", @@ -17245,7 +18142,7 @@ "x-appwrite": { "method": "getQueueMessaging", "group": "queue", - "weight": 460, + "weight": 476, "cookies": false, "type": "", "demo": "health\/get-queue-messaging.md", @@ -17307,7 +18204,7 @@ "x-appwrite": { "method": "getQueueMigrations", "group": "queue", - "weight": 461, + "weight": 477, "cookies": false, "type": "", "demo": "health\/get-queue-migrations.md", @@ -17369,7 +18266,7 @@ "x-appwrite": { "method": "getQueueStatsResources", "group": "queue", - "weight": 463, + "weight": 479, "cookies": false, "type": "", "demo": "health\/get-queue-stats-resources.md", @@ -17431,7 +18328,7 @@ "x-appwrite": { "method": "getQueueUsage", "group": "queue", - "weight": 464, + "weight": 480, "cookies": false, "type": "", "demo": "health\/get-queue-usage.md", @@ -17493,7 +18390,7 @@ "x-appwrite": { "method": "getQueueWebhooks", "group": "queue", - "weight": 453, + "weight": 469, "cookies": false, "type": "", "demo": "health\/get-queue-webhooks.md", @@ -17555,7 +18452,7 @@ "x-appwrite": { "method": "getStorage", "group": "storage", - "weight": 450, + "weight": 466, "cookies": false, "type": "", "demo": "health\/get-storage.md", @@ -17606,7 +18503,7 @@ "x-appwrite": { "method": "getStorageLocal", "group": "storage", - "weight": 449, + "weight": 465, "cookies": false, "type": "", "demo": "health\/get-storage-local.md", @@ -17657,7 +18554,7 @@ "x-appwrite": { "method": "getTime", "group": "health", - "weight": 447, + "weight": 463, "cookies": false, "type": "", "demo": "health\/get-time.md", @@ -25530,7 +26427,7 @@ "x-appwrite": { "method": "list", "group": "projects", - "weight": 410, + "weight": 426, "cookies": false, "type": "", "demo": "projects\/list.md", @@ -27209,7 +28106,7 @@ "x-appwrite": { "method": "listDevKeys", "group": "devKeys", - "weight": 408, + "weight": 424, "cookies": false, "type": "", "demo": "projects\/list-dev-keys.md", @@ -27279,7 +28176,7 @@ "x-appwrite": { "method": "createDevKey", "group": "devKeys", - "weight": 405, + "weight": 421, "cookies": false, "type": "", "demo": "projects\/create-dev-key.md", @@ -27362,7 +28259,7 @@ "x-appwrite": { "method": "getDevKey", "group": "devKeys", - "weight": 407, + "weight": 423, "cookies": false, "type": "", "demo": "projects\/get-dev-key.md", @@ -27428,7 +28325,7 @@ "x-appwrite": { "method": "updateDevKey", "group": "devKeys", - "weight": 406, + "weight": 422, "cookies": false, "type": "", "demo": "projects\/update-dev-key.md", @@ -27514,7 +28411,7 @@ "x-appwrite": { "method": "deleteDevKey", "group": "devKeys", - "weight": 409, + "weight": 425, "cookies": false, "type": "", "demo": "projects\/delete-dev-key.md", @@ -28243,7 +29140,7 @@ "x-appwrite": { "method": "updateLabels", "group": "projects", - "weight": 411, + "weight": 427, "cookies": false, "type": "", "demo": "projects\/update-labels.md", @@ -31666,7 +32563,7 @@ "x-appwrite": { "method": "listRules", "group": null, - "weight": 512, + "weight": 528, "cookies": false, "type": "", "demo": "proxy\/list-rules.md", @@ -31748,7 +32645,7 @@ "x-appwrite": { "method": "createAPIRule", "group": null, - "weight": 507, + "weight": 523, "cookies": false, "type": "", "demo": "proxy\/create-api-rule.md", @@ -31818,7 +32715,7 @@ "x-appwrite": { "method": "createFunctionRule", "group": null, - "weight": 509, + "weight": 525, "cookies": false, "type": "", "demo": "proxy\/create-function-rule.md", @@ -31901,7 +32798,7 @@ "x-appwrite": { "method": "createRedirectRule", "group": null, - "weight": 510, + "weight": 526, "cookies": false, "type": "", "demo": "proxy\/create-redirect-rule.md", @@ -32022,7 +32919,7 @@ "x-appwrite": { "method": "createSiteRule", "group": null, - "weight": 508, + "weight": 524, "cookies": false, "type": "", "demo": "proxy\/create-site-rule.md", @@ -32103,7 +33000,7 @@ "x-appwrite": { "method": "getRule", "group": null, - "weight": 511, + "weight": 527, "cookies": false, "type": "", "demo": "proxy\/get-rule.md", @@ -32156,7 +33053,7 @@ "x-appwrite": { "method": "deleteRule", "group": null, - "weight": 513, + "weight": 529, "cookies": false, "type": "", "demo": "proxy\/delete-rule.md", @@ -32216,7 +33113,7 @@ "x-appwrite": { "method": "updateRuleVerification", "group": null, - "weight": 514, + "weight": 530, "cookies": false, "type": "", "demo": "proxy\/update-rule-verification.md", @@ -32274,7 +33171,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 469, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -32356,7 +33253,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 467, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -32628,7 +33525,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 472, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -32678,7 +33575,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 495, + "weight": 511, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -32728,7 +33625,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 491, + "weight": 507, "cookies": false, "type": "", "demo": "sites\/list-templates.md", @@ -32791,12 +33688,15 @@ "items": { "type": "string", "enum": [ - "dev-tools", + "portfolio", "starter", - "databases", + "events", + "ecommerce", + "documentation", + "blog", "ai", - "messaging", - "utilities" + "forms", + "dashboard" ], "x-enum-name": null, "x-enum-keys": [] @@ -32851,7 +33751,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 492, + "weight": 508, "cookies": false, "type": "", "demo": "sites\/get-template.md", @@ -32909,7 +33809,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 493, + "weight": 509, "cookies": false, "type": "", "demo": "sites\/list-usage.md", @@ -32979,7 +33879,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 468, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -33039,7 +33939,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 470, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -33306,7 +34206,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 471, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -33368,7 +34268,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 478, + "weight": 494, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -33446,7 +34346,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 477, + "weight": 493, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -33536,7 +34436,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 473, + "weight": 489, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -33637,7 +34537,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 481, + "weight": 497, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -33717,7 +34617,7 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 474, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", @@ -33838,7 +34738,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 475, + "weight": 491, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -33936,7 +34836,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 476, + "weight": 492, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -33999,7 +34899,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 479, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -34067,7 +34967,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 480, + "weight": 496, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -34153,7 +35053,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 482, + "weight": 498, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -34221,7 +35121,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 484, + "weight": 500, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -34302,7 +35202,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 483, + "weight": 499, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -34367,7 +35267,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 485, + "weight": 501, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -34435,7 +35335,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 494, + "weight": 510, "cookies": false, "type": "", "demo": "sites\/get-usage.md", @@ -34513,7 +35413,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 488, + "weight": 504, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -34573,7 +35473,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 486, + "weight": 502, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -34664,7 +35564,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 487, + "weight": 503, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -34732,7 +35632,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 489, + "weight": 505, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -34827,7 +35727,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 490, + "weight": 506, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -34895,7 +35795,7 @@ "x-appwrite": { "method": "listBuckets", "group": "buckets", - "weight": 522, + "weight": 538, "cookies": false, "type": "", "demo": "storage\/list-buckets.md", @@ -34978,7 +35878,7 @@ "x-appwrite": { "method": "createBucket", "group": "buckets", - "weight": 520, + "weight": 536, "cookies": false, "type": "", "demo": "storage\/create-bucket.md", @@ -35125,7 +36025,7 @@ "x-appwrite": { "method": "getBucket", "group": "buckets", - "weight": 521, + "weight": 537, "cookies": false, "type": "", "demo": "storage\/get-bucket.md", @@ -35186,7 +36086,7 @@ "x-appwrite": { "method": "updateBucket", "group": "buckets", - "weight": 523, + "weight": 539, "cookies": false, "type": "", "demo": "storage\/update-bucket.md", @@ -35329,7 +36229,7 @@ "x-appwrite": { "method": "deleteBucket", "group": "buckets", - "weight": 524, + "weight": 540, "cookies": false, "type": "", "demo": "storage\/delete-bucket.md", @@ -35390,7 +36290,7 @@ "x-appwrite": { "method": "listFiles", "group": "files", - "weight": 527, + "weight": 543, "cookies": false, "type": "", "demo": "storage\/list-files.md", @@ -35483,7 +36383,7 @@ "x-appwrite": { "method": "createFile", "group": "files", - "weight": 525, + "weight": 541, "cookies": false, "type": "upload", "demo": "storage\/create-file.md", @@ -35574,7 +36474,7 @@ "x-appwrite": { "method": "getFile", "group": "files", - "weight": 526, + "weight": 542, "cookies": false, "type": "", "demo": "storage\/get-file.md", @@ -35645,7 +36545,7 @@ "x-appwrite": { "method": "updateFile", "group": "files", - "weight": 528, + "weight": 544, "cookies": false, "type": "", "demo": "storage\/update-file.md", @@ -35736,7 +36636,7 @@ "x-appwrite": { "method": "deleteFile", "group": "files", - "weight": 529, + "weight": 545, "cookies": false, "type": "", "demo": "storage\/delete-file.md", @@ -35807,7 +36707,7 @@ "x-appwrite": { "method": "getFileDownload", "group": "files", - "weight": 531, + "weight": 547, "cookies": false, "type": "location", "demo": "storage\/get-file-download.md", @@ -35887,7 +36787,7 @@ "x-appwrite": { "method": "getFilePreview", "group": "files", - "weight": 530, + "weight": 546, "cookies": false, "type": "location", "demo": "storage\/get-file-preview.md", @@ -36095,7 +36995,7 @@ "x-appwrite": { "method": "getFileView", "group": "files", - "weight": 532, + "weight": 548, "cookies": false, "type": "location", "demo": "storage\/get-file-view.md", @@ -36175,7 +37075,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 534, + "weight": 550, "cookies": false, "type": "", "demo": "storage\/get-usage.md", @@ -36246,7 +37146,7 @@ "x-appwrite": { "method": "getBucketUsage", "group": null, - "weight": 535, + "weight": 551, "cookies": false, "type": "", "demo": "storage\/get-bucket-usage.md", @@ -36325,7 +37225,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 344, + "weight": 352, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -36408,7 +37308,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 340, + "weight": 348, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -36492,7 +37392,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 403, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/list-transactions.md", @@ -36562,7 +37462,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 399, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-transaction.md", @@ -36636,7 +37536,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 400, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-transaction.md", @@ -36702,7 +37602,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 401, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/update-transaction.md", @@ -36784,7 +37684,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 402, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/delete-transaction.md", @@ -36852,7 +37752,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 404, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/create-operations.md", @@ -36936,7 +37836,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 346, + "weight": 354, "cookies": false, "type": "", "demo": "tablesdb\/list-usage.md", @@ -37033,7 +37933,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 341, + "weight": 349, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -37094,7 +37994,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 342, + "weight": 350, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -37171,7 +38071,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 343, + "weight": 351, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -37232,7 +38132,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 351, + "weight": 359, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -37326,7 +38226,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 347, + "weight": 355, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -37455,7 +38355,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 348, + "weight": 356, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -37527,7 +38427,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 349, + "weight": 357, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -37631,7 +38531,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 350, + "weight": 358, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -37703,7 +38603,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 356, + "weight": 364, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -37798,7 +38698,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 357, + "weight": 365, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -37910,7 +38810,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 358, + "weight": 366, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -38024,7 +38924,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 359, + "weight": 367, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -38136,7 +39036,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 360, + "weight": 368, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -38250,7 +39150,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 361, + "weight": 369, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -38363,7 +39263,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 362, + "weight": 370, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -38478,7 +39378,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 363, + "weight": 371, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -38600,7 +39500,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 364, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -38724,7 +39624,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 365, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -38853,7 +39753,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 366, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -38984,7 +39884,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 367, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -39113,7 +40013,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 368, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -39244,7 +40144,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 369, + "weight": 377, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -39356,7 +40256,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 370, + "weight": 378, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -39470,7 +40370,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 371, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -39576,7 +40476,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 372, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -39663,6 +40563,458 @@ ] } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/longtext": { + "post": { + "summary": "Create longtext column", + "operationId": "tablesDBCreateLongtextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Create a longtext column.\n", + "responses": { + "202": { + "description": "ColumnLongtext", + "schema": { + "$ref": "#\/definitions\/columnLongtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createLongtextColumn", + "group": "columns", + "weight": 397, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-longtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-longtext-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/longtext\/{key}": { + "patch": { + "summary": "Update longtext column", + "operationId": "tablesDBUpdateLongtextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Update a longtext column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnLongtext", + "schema": { + "$ref": "#\/definitions\/columnLongtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateLongtextColumn", + "group": "columns", + "weight": 398, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-longtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-longtext-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/mediumtext": { + "post": { + "summary": "Create mediumtext column", + "operationId": "tablesDBCreateMediumtextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Create a mediumtext column.\n", + "responses": { + "202": { + "description": "ColumnMediumtext", + "schema": { + "$ref": "#\/definitions\/columnMediumtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createMediumtextColumn", + "group": "columns", + "weight": 395, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-mediumtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-mediumtext-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/mediumtext\/{key}": { + "patch": { + "summary": "Update mediumtext column", + "operationId": "tablesDBUpdateMediumtextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Update a mediumtext column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnMediumtext", + "schema": { + "$ref": "#\/definitions\/columnMediumtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateMediumtextColumn", + "group": "columns", + "weight": 396, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-mediumtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-mediumtext-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/point": { "post": { "summary": "Create point column", @@ -39689,7 +41041,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 373, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -39795,7 +41147,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 374, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -39908,7 +41260,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 375, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -40014,7 +41366,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 376, + "weight": 384, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -40127,7 +41479,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 377, + "weight": 385, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -40263,11 +41615,11 @@ } } }, - "deprecated": false, + "deprecated": true, "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 379, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -40285,6 +41637,10 @@ "packaging": false, "public": true, "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-string-column.md", + "deprecated": { + "since": "1.9.0", + "replaceWith": "tablesDB.createTextColumn" + }, "auth": { "Project": [] } @@ -40389,11 +41745,11 @@ } } }, - "deprecated": false, + "deprecated": true, "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 380, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -40411,6 +41767,10 @@ "packaging": false, "public": true, "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-string-column.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "tablesDB.updateTextColumn" + }, "auth": { "Project": [] } @@ -40489,6 +41849,232 @@ ] } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/text": { + "post": { + "summary": "Create text column", + "operationId": "tablesDBCreateTextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Create a text column.\n", + "responses": { + "202": { + "description": "ColumnText", + "schema": { + "$ref": "#\/definitions\/columnText" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createTextColumn", + "group": "columns", + "weight": 393, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-text-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-text-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/text\/{key}": { + "patch": { + "summary": "Update text column", + "operationId": "tablesDBUpdateTextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Update a text column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnText", + "schema": { + "$ref": "#\/definitions\/columnText" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateTextColumn", + "group": "columns", + "weight": 394, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-text-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-text-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/url": { "post": { "summary": "Create URL column", @@ -40515,7 +42101,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 381, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -40628,7 +42214,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 382, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -40717,6 +42303,248 @@ ] } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/varchar": { + "post": { + "summary": "Create varchar column", + "operationId": "tablesDBCreateVarcharColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Create a varchar column.\n", + "responses": { + "202": { + "description": "ColumnVarchar", + "schema": { + "$ref": "#\/definitions\/columnVarchar" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createVarcharColumn", + "group": "columns", + "weight": 391, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-varchar-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-varchar-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "default": null, + "x-example": null + }, + "size": { + "type": "integer", + "description": "Column size for varchar columns, in number of characters. Maximum size is 16381.", + "default": null, + "x-example": 1, + "format": "int32" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/varchar\/{key}": { + "patch": { + "summary": "Update varchar column", + "operationId": "tablesDBUpdateVarcharColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Update a varchar column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnVarchar", + "schema": { + "$ref": "#\/definitions\/columnVarchar" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateVarcharColumn", + "group": "columns", + "weight": 392, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-varchar-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-varchar-column.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "size": { + "type": "integer", + "description": "Maximum size of the varchar column.", + "default": null, + "x-example": 1, + "format": "int32", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/{key}": { "get": { "summary": "Get column", @@ -40772,7 +42600,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 354, + "weight": 362, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -40846,7 +42674,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 355, + "weight": 363, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -40927,7 +42755,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 378, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -41036,7 +42864,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 386, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -41129,7 +42957,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 383, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -41268,7 +43096,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 384, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -41342,7 +43170,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 385, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -41421,7 +43249,7 @@ "x-appwrite": { "method": "listTableLogs", "group": "tables", - "weight": 352, + "weight": 360, "cookies": false, "type": "", "demo": "tablesdb\/list-table-logs.md", @@ -41503,7 +43331,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 395, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -41606,7 +43434,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 387, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -41788,7 +43616,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 392, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -41918,7 +43746,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 390, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -42021,7 +43849,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 394, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -42118,7 +43946,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 388, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -42220,7 +44048,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 391, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -42366,7 +44194,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 389, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -42475,7 +44303,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 393, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -42573,7 +44401,7 @@ "x-appwrite": { "method": "listRowLogs", "group": "logs", - "weight": 396, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/list-row-logs.md", @@ -42665,7 +44493,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 398, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -42787,7 +44615,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 397, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -42907,7 +44735,7 @@ "x-appwrite": { "method": "getTableUsage", "group": null, - "weight": 353, + "weight": 361, "cookies": false, "type": "", "demo": "tablesdb\/get-table-usage.md", @@ -42997,7 +44825,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 345, + "weight": 353, "cookies": false, "type": "", "demo": "tablesdb\/get-usage.md", @@ -44255,7 +46083,7 @@ "x-appwrite": { "method": "list", "group": "files", - "weight": 517, + "weight": 533, "cookies": false, "type": "", "demo": "tokens\/list.md", @@ -44344,7 +46172,7 @@ "x-appwrite": { "method": "createFileToken", "group": "files", - "weight": 515, + "weight": 531, "cookies": false, "type": "", "demo": "tokens\/create-file-token.md", @@ -44428,7 +46256,7 @@ "x-appwrite": { "method": "get", "group": "tokens", - "weight": 516, + "weight": 532, "cookies": false, "type": "", "demo": "tokens\/get.md", @@ -44488,7 +46316,7 @@ "x-appwrite": { "method": "update", "group": "tokens", - "weight": 518, + "weight": 534, "cookies": false, "type": "", "demo": "tokens\/update.md", @@ -44559,7 +46387,7 @@ "x-appwrite": { "method": "delete", "group": "tokens", - "weight": 519, + "weight": 535, "cookies": false, "type": "", "demo": "tokens\/delete.md", @@ -52243,6 +54071,338 @@ ] } }, + "attributeVarchar": { + "description": "AttributeVarchar", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "size": { + "type": "integer", + "description": "Attribute size.", + "x-example": 128, + "format": "int32" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt", + "size" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "size": 128, + "default": "default" + } + }, + "attributeText": { + "description": "AttributeText", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "attributeMediumtext": { + "description": "AttributeMediumtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "attributeLongtext": { + "description": "AttributeLongtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, "table": { "description": "Table", "type": "object", @@ -53693,6 +55853,338 @@ ] } }, + "columnVarchar": { + "description": "ColumnVarchar", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "size": { + "type": "integer", + "description": "Column size.", + "x-example": 128, + "format": "int32" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt", + "size" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "size": 128, + "default": "default" + } + }, + "columnText": { + "description": "ColumnText", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "columnMediumtext": { + "description": "ColumnMediumtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "columnLongtext": { + "description": "ColumnLongtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, "index": { "description": "Index", "type": "object", diff --git a/app/config/specs/swagger2-latest-server.json b/app/config/specs/swagger2-latest-server.json index ba941164e2..90b1114218 100644 --- a/app/config/specs/swagger2-latest-server.json +++ b/app/config/specs/swagger2-latest-server.json @@ -5966,7 +5966,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 338, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/list-transactions.md", @@ -6035,7 +6035,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 334, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-transaction.md", @@ -6108,7 +6108,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 335, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/get-transaction.md", @@ -6173,7 +6173,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 336, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/update-transaction.md", @@ -6254,7 +6254,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 337, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/delete-transaction.md", @@ -6321,7 +6321,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 339, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/create-operations.md", @@ -9184,6 +9184,450 @@ ] } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/longtext": { + "post": { + "summary": "Create longtext attribute", + "operationId": "databasesCreateLongtextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Create a longtext attribute.\n", + "responses": { + "202": { + "description": "AttributeLongtext", + "schema": { + "$ref": "#\/definitions\/attributeLongtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createLongtextAttribute", + "group": "attributes", + "weight": 336, + "cookies": false, + "type": "", + "demo": "databases\/create-longtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-longtext-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/longtext\/{key}": { + "patch": { + "summary": "Update longtext attribute", + "operationId": "databasesUpdateLongtextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update a longtext attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeLongtext", + "schema": { + "$ref": "#\/definitions\/attributeLongtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateLongtextAttribute", + "group": "attributes", + "weight": 337, + "cookies": false, + "type": "", + "demo": "databases\/update-longtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-longtext-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/mediumtext": { + "post": { + "summary": "Create mediumtext attribute", + "operationId": "databasesCreateMediumtextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Create a mediumtext attribute.\n", + "responses": { + "202": { + "description": "AttributeMediumtext", + "schema": { + "$ref": "#\/definitions\/attributeMediumtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createMediumtextAttribute", + "group": "attributes", + "weight": 334, + "cookies": false, + "type": "", + "demo": "databases\/create-mediumtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-mediumtext-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/mediumtext\/{key}": { + "patch": { + "summary": "Update mediumtext attribute", + "operationId": "databasesUpdateMediumtextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update a mediumtext attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeMediumtext", + "schema": { + "$ref": "#\/definitions\/attributeMediumtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateMediumtextAttribute", + "group": "attributes", + "weight": 335, + "cookies": false, + "type": "", + "demo": "databases\/update-mediumtext-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-mediumtext-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/point": { "post": { "summary": "Create point attribute", @@ -10024,6 +10468,228 @@ ] } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/text": { + "post": { + "summary": "Create text attribute", + "operationId": "databasesCreateTextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Create a text attribute.\n", + "responses": { + "202": { + "description": "AttributeText", + "schema": { + "$ref": "#\/definitions\/attributeText" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createTextAttribute", + "group": "attributes", + "weight": 332, + "cookies": false, + "type": "", + "demo": "databases\/create-text-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-text-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/text\/{key}": { + "patch": { + "summary": "Update text attribute", + "operationId": "databasesUpdateTextAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update a text attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeText", + "schema": { + "$ref": "#\/definitions\/attributeText" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateTextAttribute", + "group": "attributes", + "weight": 333, + "cookies": false, + "type": "", + "demo": "databases\/update-text-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-text-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/url": { "post": { "summary": "Create URL attribute", @@ -10256,6 +10922,244 @@ ] } }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar": { + "post": { + "summary": "Create varchar attribute", + "operationId": "databasesCreateVarcharAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Create a varchar attribute.\n", + "responses": { + "202": { + "description": "AttributeVarchar", + "schema": { + "$ref": "#\/definitions\/attributeVarchar" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createVarcharAttribute", + "group": "attributes", + "weight": 330, + "cookies": false, + "type": "", + "demo": "databases\/create-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-varchar-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "default": null, + "x-example": null + }, + "size": { + "type": "integer", + "description": "Attribute size for varchar attributes, in number of characters. Maximum size is 16381.", + "default": null, + "x-example": 1, + "format": "int32" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + ] + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar\/{key}": { + "patch": { + "summary": "Update varchar attribute", + "operationId": "databasesUpdateVarcharAttribute", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update a varchar attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeVarchar", + "schema": { + "$ref": "#\/definitions\/attributeVarchar" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateVarcharAttribute", + "group": "attributes", + "weight": 331, + "cookies": false, + "type": "", + "demo": "databases\/update-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-varchar-attribute.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is attribute required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "size": { + "type": "integer", + "description": "Maximum size of the varchar attribute.", + "default": null, + "x-example": 1, + "format": "int32", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Attribute Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/{key}": { "get": { "summary": "Get attribute", @@ -11945,7 +12849,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 333, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -12040,7 +12944,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 330, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -12181,7 +13085,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 331, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -12257,7 +13161,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 332, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -12338,7 +13242,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 415, + "weight": 431, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -12421,7 +13325,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 412, + "weight": 428, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -12736,7 +13640,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 417, + "weight": 433, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -12787,7 +13691,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 418, + "weight": 434, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -12838,7 +13742,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 413, + "weight": 429, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -12899,7 +13803,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 414, + "weight": 430, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -13210,7 +14114,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 416, + "weight": 432, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -13273,7 +14177,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 421, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -13352,7 +14256,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 422, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -13443,7 +14347,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 419, + "weight": 435, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -13537,7 +14441,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 427, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -13624,7 +14528,7 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 424, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", @@ -13746,7 +14650,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 425, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -13844,7 +14748,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 420, + "weight": 436, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -13908,7 +14812,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 423, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -13977,7 +14881,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 426, + "weight": 442, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -14064,7 +14968,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 428, + "weight": 444, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -14133,7 +15037,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 431, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -14218,7 +15122,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 429, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -14339,7 +15243,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 430, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -14406,7 +15310,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 432, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -14475,7 +15379,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 437, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -14536,7 +15440,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 435, + "weight": 451, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -14628,7 +15532,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 436, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -14697,7 +15601,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 438, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -14793,7 +15697,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 439, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -15016,7 +15920,7 @@ "x-appwrite": { "method": "get", "group": "health", - "weight": 442, + "weight": 458, "cookies": false, "type": "", "demo": "health\/get.md", @@ -15068,7 +15972,7 @@ "x-appwrite": { "method": "getAntivirus", "group": "health", - "weight": 451, + "weight": 467, "cookies": false, "type": "", "demo": "health\/get-antivirus.md", @@ -15120,7 +16024,7 @@ "x-appwrite": { "method": "getCache", "group": "health", - "weight": 445, + "weight": 461, "cookies": false, "type": "", "demo": "health\/get-cache.md", @@ -15172,7 +16076,7 @@ "x-appwrite": { "method": "getCertificate", "group": "health", - "weight": 448, + "weight": 464, "cookies": false, "type": "", "demo": "health\/get-certificate.md", @@ -15233,7 +16137,7 @@ "x-appwrite": { "method": "getDB", "group": "health", - "weight": 444, + "weight": 460, "cookies": false, "type": "", "demo": "health\/get-db.md", @@ -15285,7 +16189,7 @@ "x-appwrite": { "method": "getPubSub", "group": "health", - "weight": 446, + "weight": 462, "cookies": false, "type": "", "demo": "health\/get-pub-sub.md", @@ -15337,7 +16241,7 @@ "x-appwrite": { "method": "getQueueAudits", "group": "queue", - "weight": 452, + "weight": 468, "cookies": false, "type": "", "demo": "health\/get-queue-audits.md", @@ -15400,7 +16304,7 @@ "x-appwrite": { "method": "getQueueBuilds", "group": "queue", - "weight": 456, + "weight": 472, "cookies": false, "type": "", "demo": "health\/get-queue-builds.md", @@ -15463,7 +16367,7 @@ "x-appwrite": { "method": "getQueueCertificates", "group": "queue", - "weight": 455, + "weight": 471, "cookies": false, "type": "", "demo": "health\/get-queue-certificates.md", @@ -15526,7 +16430,7 @@ "x-appwrite": { "method": "getQueueDatabases", "group": "queue", - "weight": 457, + "weight": 473, "cookies": false, "type": "", "demo": "health\/get-queue-databases.md", @@ -15598,7 +16502,7 @@ "x-appwrite": { "method": "getQueueDeletes", "group": "queue", - "weight": 458, + "weight": 474, "cookies": false, "type": "", "demo": "health\/get-queue-deletes.md", @@ -15661,7 +16565,7 @@ "x-appwrite": { "method": "getFailedJobs", "group": "queue", - "weight": 465, + "weight": 481, "cookies": false, "type": "", "demo": "health\/get-failed-jobs.md", @@ -15749,7 +16653,7 @@ "x-appwrite": { "method": "getQueueFunctions", "group": "queue", - "weight": 462, + "weight": 478, "cookies": false, "type": "", "demo": "health\/get-queue-functions.md", @@ -15812,7 +16716,7 @@ "x-appwrite": { "method": "getQueueLogs", "group": "queue", - "weight": 454, + "weight": 470, "cookies": false, "type": "", "demo": "health\/get-queue-logs.md", @@ -15875,7 +16779,7 @@ "x-appwrite": { "method": "getQueueMails", "group": "queue", - "weight": 459, + "weight": 475, "cookies": false, "type": "", "demo": "health\/get-queue-mails.md", @@ -15938,7 +16842,7 @@ "x-appwrite": { "method": "getQueueMessaging", "group": "queue", - "weight": 460, + "weight": 476, "cookies": false, "type": "", "demo": "health\/get-queue-messaging.md", @@ -16001,7 +16905,7 @@ "x-appwrite": { "method": "getQueueMigrations", "group": "queue", - "weight": 461, + "weight": 477, "cookies": false, "type": "", "demo": "health\/get-queue-migrations.md", @@ -16064,7 +16968,7 @@ "x-appwrite": { "method": "getQueueStatsResources", "group": "queue", - "weight": 463, + "weight": 479, "cookies": false, "type": "", "demo": "health\/get-queue-stats-resources.md", @@ -16127,7 +17031,7 @@ "x-appwrite": { "method": "getQueueUsage", "group": "queue", - "weight": 464, + "weight": 480, "cookies": false, "type": "", "demo": "health\/get-queue-usage.md", @@ -16190,7 +17094,7 @@ "x-appwrite": { "method": "getQueueWebhooks", "group": "queue", - "weight": 453, + "weight": 469, "cookies": false, "type": "", "demo": "health\/get-queue-webhooks.md", @@ -16253,7 +17157,7 @@ "x-appwrite": { "method": "getStorage", "group": "storage", - "weight": 450, + "weight": 466, "cookies": false, "type": "", "demo": "health\/get-storage.md", @@ -16305,7 +17209,7 @@ "x-appwrite": { "method": "getStorageLocal", "group": "storage", - "weight": 449, + "weight": 465, "cookies": false, "type": "", "demo": "health\/get-storage-local.md", @@ -16357,7 +17261,7 @@ "x-appwrite": { "method": "getTime", "group": "health", - "weight": 447, + "weight": 463, "cookies": false, "type": "", "demo": "health\/get-time.md", @@ -22492,7 +23396,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 469, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -22575,7 +23479,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 467, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -22848,7 +23752,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 472, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -22899,7 +23803,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 495, + "weight": 511, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -22950,7 +23854,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 468, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -23011,7 +23915,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 470, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -23279,7 +24183,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 471, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -23342,7 +24246,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 478, + "weight": 494, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -23421,7 +24325,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 477, + "weight": 493, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -23512,7 +24416,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 473, + "weight": 489, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -23614,7 +24518,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 481, + "weight": 497, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -23695,7 +24599,7 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 474, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", @@ -23817,7 +24721,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 475, + "weight": 491, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -23916,7 +24820,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 476, + "weight": 492, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -23980,7 +24884,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 479, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -24049,7 +24953,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 480, + "weight": 496, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -24136,7 +25040,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 482, + "weight": 498, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -24205,7 +25109,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 484, + "weight": 500, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -24287,7 +25191,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 483, + "weight": 499, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -24353,7 +25257,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 485, + "weight": 501, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -24422,7 +25326,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 488, + "weight": 504, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -24483,7 +25387,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 486, + "weight": 502, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -24575,7 +25479,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 487, + "weight": 503, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -24644,7 +25548,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 489, + "weight": 505, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -24740,7 +25644,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 490, + "weight": 506, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -24809,7 +25713,7 @@ "x-appwrite": { "method": "listBuckets", "group": "buckets", - "weight": 522, + "weight": 538, "cookies": false, "type": "", "demo": "storage\/list-buckets.md", @@ -24893,7 +25797,7 @@ "x-appwrite": { "method": "createBucket", "group": "buckets", - "weight": 520, + "weight": 536, "cookies": false, "type": "", "demo": "storage\/create-bucket.md", @@ -25041,7 +25945,7 @@ "x-appwrite": { "method": "getBucket", "group": "buckets", - "weight": 521, + "weight": 537, "cookies": false, "type": "", "demo": "storage\/get-bucket.md", @@ -25103,7 +26007,7 @@ "x-appwrite": { "method": "updateBucket", "group": "buckets", - "weight": 523, + "weight": 539, "cookies": false, "type": "", "demo": "storage\/update-bucket.md", @@ -25247,7 +26151,7 @@ "x-appwrite": { "method": "deleteBucket", "group": "buckets", - "weight": 524, + "weight": 540, "cookies": false, "type": "", "demo": "storage\/delete-bucket.md", @@ -25309,7 +26213,7 @@ "x-appwrite": { "method": "listFiles", "group": "files", - "weight": 527, + "weight": 543, "cookies": false, "type": "", "demo": "storage\/list-files.md", @@ -25404,7 +26308,7 @@ "x-appwrite": { "method": "createFile", "group": "files", - "weight": 525, + "weight": 541, "cookies": false, "type": "upload", "demo": "storage\/create-file.md", @@ -25497,7 +26401,7 @@ "x-appwrite": { "method": "getFile", "group": "files", - "weight": 526, + "weight": 542, "cookies": false, "type": "", "demo": "storage\/get-file.md", @@ -25570,7 +26474,7 @@ "x-appwrite": { "method": "updateFile", "group": "files", - "weight": 528, + "weight": 544, "cookies": false, "type": "", "demo": "storage\/update-file.md", @@ -25663,7 +26567,7 @@ "x-appwrite": { "method": "deleteFile", "group": "files", - "weight": 529, + "weight": 545, "cookies": false, "type": "", "demo": "storage\/delete-file.md", @@ -25736,7 +26640,7 @@ "x-appwrite": { "method": "getFileDownload", "group": "files", - "weight": 531, + "weight": 547, "cookies": false, "type": "location", "demo": "storage\/get-file-download.md", @@ -25818,7 +26722,7 @@ "x-appwrite": { "method": "getFilePreview", "group": "files", - "weight": 530, + "weight": 546, "cookies": false, "type": "location", "demo": "storage\/get-file-preview.md", @@ -26028,7 +26932,7 @@ "x-appwrite": { "method": "getFileView", "group": "files", - "weight": 532, + "weight": 548, "cookies": false, "type": "location", "demo": "storage\/get-file-view.md", @@ -26110,7 +27014,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 344, + "weight": 352, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -26194,7 +27098,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 340, + "weight": 348, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -26279,7 +27183,7 @@ "x-appwrite": { "method": "listTransactions", "group": "transactions", - "weight": 403, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/list-transactions.md", @@ -26351,7 +27255,7 @@ "x-appwrite": { "method": "createTransaction", "group": "transactions", - "weight": 399, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-transaction.md", @@ -26427,7 +27331,7 @@ "x-appwrite": { "method": "getTransaction", "group": "transactions", - "weight": 400, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-transaction.md", @@ -26495,7 +27399,7 @@ "x-appwrite": { "method": "updateTransaction", "group": "transactions", - "weight": 401, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/update-transaction.md", @@ -26579,7 +27483,7 @@ "x-appwrite": { "method": "deleteTransaction", "group": "transactions", - "weight": 402, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/delete-transaction.md", @@ -26649,7 +27553,7 @@ "x-appwrite": { "method": "createOperations", "group": "transactions", - "weight": 404, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/create-operations.md", @@ -26735,7 +27639,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 341, + "weight": 349, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -26797,7 +27701,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 342, + "weight": 350, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -26875,7 +27779,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 343, + "weight": 351, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -26937,7 +27841,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 351, + "weight": 359, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -27032,7 +27936,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 347, + "weight": 355, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -27162,7 +28066,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 348, + "weight": 356, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -27235,7 +28139,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 349, + "weight": 357, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -27340,7 +28244,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 350, + "weight": 358, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -27413,7 +28317,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 356, + "weight": 364, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -27509,7 +28413,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 357, + "weight": 365, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -27622,7 +28526,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 358, + "weight": 366, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -27737,7 +28641,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 359, + "weight": 367, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -27850,7 +28754,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 360, + "weight": 368, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -27965,7 +28869,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 361, + "weight": 369, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -28079,7 +28983,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 362, + "weight": 370, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -28195,7 +29099,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 363, + "weight": 371, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -28318,7 +29222,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 364, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -28443,7 +29347,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 365, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -28573,7 +29477,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 366, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -28705,7 +29609,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 367, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -28835,7 +29739,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 368, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -28967,7 +29871,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 369, + "weight": 377, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -29080,7 +29984,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 370, + "weight": 378, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -29195,7 +30099,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 371, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -29302,7 +30206,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 372, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -29390,6 +30294,462 @@ ] } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/longtext": { + "post": { + "summary": "Create longtext column", + "operationId": "tablesDBCreateLongtextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Create a longtext column.\n", + "responses": { + "202": { + "description": "ColumnLongtext", + "schema": { + "$ref": "#\/definitions\/columnLongtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createLongtextColumn", + "group": "columns", + "weight": 397, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-longtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-longtext-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/longtext\/{key}": { + "patch": { + "summary": "Update longtext column", + "operationId": "tablesDBUpdateLongtextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Update a longtext column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnLongtext", + "schema": { + "$ref": "#\/definitions\/columnLongtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateLongtextColumn", + "group": "columns", + "weight": 398, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-longtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-longtext-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/mediumtext": { + "post": { + "summary": "Create mediumtext column", + "operationId": "tablesDBCreateMediumtextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Create a mediumtext column.\n", + "responses": { + "202": { + "description": "ColumnMediumtext", + "schema": { + "$ref": "#\/definitions\/columnMediumtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createMediumtextColumn", + "group": "columns", + "weight": 395, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-mediumtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-mediumtext-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/mediumtext\/{key}": { + "patch": { + "summary": "Update mediumtext column", + "operationId": "tablesDBUpdateMediumtextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Update a mediumtext column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnMediumtext", + "schema": { + "$ref": "#\/definitions\/columnMediumtext" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateMediumtextColumn", + "group": "columns", + "weight": 396, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-mediumtext-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-mediumtext-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/point": { "post": { "summary": "Create point column", @@ -29416,7 +30776,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 373, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -29523,7 +30883,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 374, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -29637,7 +30997,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 375, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -29744,7 +31104,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 376, + "weight": 384, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -29858,7 +31218,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 377, + "weight": 385, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -29995,11 +31355,11 @@ } } }, - "deprecated": false, + "deprecated": true, "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 379, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -30017,6 +31377,10 @@ "packaging": false, "public": true, "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-string-column.md", + "deprecated": { + "since": "1.9.0", + "replaceWith": "tablesDB.createTextColumn" + }, "auth": { "Project": [], "Key": [] @@ -30122,11 +31486,11 @@ } } }, - "deprecated": false, + "deprecated": true, "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 380, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -30144,6 +31508,10 @@ "packaging": false, "public": true, "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-string-column.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "tablesDB.updateTextColumn" + }, "auth": { "Project": [], "Key": [] @@ -30223,6 +31591,234 @@ ] } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/text": { + "post": { + "summary": "Create text column", + "operationId": "tablesDBCreateTextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Create a text column.\n", + "responses": { + "202": { + "description": "ColumnText", + "schema": { + "$ref": "#\/definitions\/columnText" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createTextColumn", + "group": "columns", + "weight": 393, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-text-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-text-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "default": null, + "x-example": null + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "required" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/text\/{key}": { + "patch": { + "summary": "Update text column", + "operationId": "tablesDBUpdateTextColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Update a text column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnText", + "schema": { + "$ref": "#\/definitions\/columnText" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateTextColumn", + "group": "columns", + "weight": 394, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-text-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-text-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/url": { "post": { "summary": "Create URL column", @@ -30249,7 +31845,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 381, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -30363,7 +31959,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 382, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -30453,6 +32049,250 @@ ] } }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/varchar": { + "post": { + "summary": "Create varchar column", + "operationId": "tablesDBCreateVarcharColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Create a varchar column.\n", + "responses": { + "202": { + "description": "ColumnVarchar", + "schema": { + "$ref": "#\/definitions\/columnVarchar" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "createVarcharColumn", + "group": "columns", + "weight": 391, + "cookies": false, + "type": "", + "demo": "tablesdb\/create-varchar-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/create-varchar-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "default": null, + "x-example": null + }, + "size": { + "type": "integer", + "description": "Column size for varchar columns, in number of characters. Maximum size is 16381.", + "default": null, + "x-example": 1, + "format": "int32" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "default": false, + "x-example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + ] + } + }, + "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/varchar\/{key}": { + "patch": { + "summary": "Update varchar column", + "operationId": "tablesDBUpdateVarcharColumn", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "tablesDB" + ], + "description": "Update a varchar column. Changing the `default` value will not update already existing rows.\n", + "responses": { + "200": { + "description": "ColumnVarchar", + "schema": { + "$ref": "#\/definitions\/columnVarchar" + } + } + }, + "deprecated": false, + "x-appwrite": { + "method": "updateVarcharColumn", + "group": "columns", + "weight": 392, + "cookies": false, + "type": "", + "demo": "tablesdb\/update-varchar-column.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": [ + "tables.write", + "collections.write" + ], + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/tablesdb\/update-varchar-column.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "tableId", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "key", + "description": "Column Key.", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "required": { + "type": "boolean", + "description": "Is column required?", + "default": null, + "x-example": false + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "default": null, + "x-example": "", + "x-nullable": true + }, + "size": { + "type": "integer", + "description": "Maximum size of the varchar column.", + "default": null, + "x-example": 1, + "format": "int32", + "x-nullable": true + }, + "newKey": { + "type": "string", + "description": "New Column Key.", + "default": null, + "x-example": null, + "x-nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + ] + } + }, "\/tablesdb\/{databaseId}\/tables\/{tableId}\/columns\/{key}": { "get": { "summary": "Get column", @@ -30508,7 +32348,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 354, + "weight": 362, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -30583,7 +32423,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 355, + "weight": 363, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -30665,7 +32505,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 378, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -30775,7 +32615,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 386, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -30869,7 +32709,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 383, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -31009,7 +32849,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 384, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -31084,7 +32924,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 385, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -31164,7 +33004,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 395, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -31269,7 +33109,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 387, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -31455,7 +33295,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 392, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -31587,7 +33427,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 390, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -31691,7 +33531,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 394, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -31789,7 +33629,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 388, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -31893,7 +33733,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 391, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -32042,7 +33882,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 389, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -32153,7 +33993,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 393, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -32255,7 +34095,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 398, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -32379,7 +34219,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 397, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -33597,7 +35437,7 @@ "x-appwrite": { "method": "list", "group": "files", - "weight": 517, + "weight": 533, "cookies": false, "type": "", "demo": "tokens\/list.md", @@ -33687,7 +35527,7 @@ "x-appwrite": { "method": "createFileToken", "group": "files", - "weight": 515, + "weight": 531, "cookies": false, "type": "", "demo": "tokens\/create-file-token.md", @@ -33772,7 +35612,7 @@ "x-appwrite": { "method": "get", "group": "tokens", - "weight": 516, + "weight": 532, "cookies": false, "type": "", "demo": "tokens\/get.md", @@ -33833,7 +35673,7 @@ "x-appwrite": { "method": "update", "group": "tokens", - "weight": 518, + "weight": 534, "cookies": false, "type": "", "demo": "tokens\/update.md", @@ -33905,7 +35745,7 @@ "x-appwrite": { "method": "delete", "group": "tokens", - "weight": 519, + "weight": 535, "cookies": false, "type": "", "demo": "tokens\/delete.md", @@ -40394,6 +42234,338 @@ ] } }, + "attributeVarchar": { + "description": "AttributeVarchar", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "size": { + "type": "integer", + "description": "Attribute size.", + "x-example": 128, + "format": "int32" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt", + "size" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "size": 128, + "default": "default" + } + }, + "attributeText": { + "description": "AttributeText", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "attributeMediumtext": { + "description": "AttributeMediumtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "attributeLongtext": { + "description": "AttributeLongtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Attribute Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Attribute type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an attribute.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is attribute required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is attribute an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Attribute creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Attribute update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, "table": { "description": "Table", "type": "object", @@ -41844,6 +44016,338 @@ ] } }, + "columnVarchar": { + "description": "ColumnVarchar", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "size": { + "type": "integer", + "description": "Column size.", + "x-example": 128, + "format": "int32" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt", + "size" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "size": 128, + "default": "default" + } + }, + "columnText": { + "description": "ColumnText", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "columnMediumtext": { + "description": "ColumnMediumtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, + "columnLongtext": { + "description": "ColumnLongtext", + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Column Key.", + "x-example": "fullName" + }, + "type": { + "type": "string", + "description": "Column type.", + "x-example": "string" + }, + "status": { + "type": "string", + "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" + }, + "error": { + "type": "string", + "description": "Error message. Displays error generated on failure of creating or deleting an column.", + "x-example": "string" + }, + "required": { + "type": "boolean", + "description": "Is column required?", + "x-example": true + }, + "array": { + "type": "boolean", + "description": "Is column an array?", + "x-example": false, + "x-nullable": true + }, + "$createdAt": { + "type": "string", + "description": "Column creation date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Column update date in ISO 8601 format.", + "x-example": "2020-10-15T06:38:00.000+00:00" + }, + "default": { + "type": "string", + "description": "Default value for column when not provided. Cannot be set when column is required.", + "x-example": "default", + "x-nullable": true + } + }, + "required": [ + "key", + "type", + "status", + "error", + "required", + "$createdAt", + "$updatedAt" + ], + "example": { + "key": "fullName", + "type": "string", + "status": "available", + "error": "string", + "required": true, + "array": false, + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "default": "default" + } + }, "index": { "description": "Index", "type": "object", diff --git a/app/init/models.php b/app/init/models.php index 5cd32e73eb..b935136a63 100644 --- a/app/init/models.php +++ b/app/init/models.php @@ -20,11 +20,15 @@ use Appwrite\Utopia\Response\Model\AttributeInteger; use Appwrite\Utopia\Response\Model\AttributeIP; use Appwrite\Utopia\Response\Model\AttributeLine; use Appwrite\Utopia\Response\Model\AttributeList; +use Appwrite\Utopia\Response\Model\AttributeLongtext; +use Appwrite\Utopia\Response\Model\AttributeMediumtext; use Appwrite\Utopia\Response\Model\AttributePoint; use Appwrite\Utopia\Response\Model\AttributePolygon; use Appwrite\Utopia\Response\Model\AttributeRelationship; use Appwrite\Utopia\Response\Model\AttributeString; +use Appwrite\Utopia\Response\Model\AttributeText; use Appwrite\Utopia\Response\Model\AttributeURL; +use Appwrite\Utopia\Response\Model\AttributeVarchar; use Appwrite\Utopia\Response\Model\AuthProvider; use Appwrite\Utopia\Response\Model\BaseList; use Appwrite\Utopia\Response\Model\Branch; @@ -41,11 +45,15 @@ use Appwrite\Utopia\Response\Model\ColumnInteger; use Appwrite\Utopia\Response\Model\ColumnIP; use Appwrite\Utopia\Response\Model\ColumnLine; use Appwrite\Utopia\Response\Model\ColumnList; +use Appwrite\Utopia\Response\Model\ColumnLongtext; +use Appwrite\Utopia\Response\Model\ColumnMediumtext; use Appwrite\Utopia\Response\Model\ColumnPoint; use Appwrite\Utopia\Response\Model\ColumnPolygon; use Appwrite\Utopia\Response\Model\ColumnRelationship; use Appwrite\Utopia\Response\Model\ColumnString; +use Appwrite\Utopia\Response\Model\ColumnText; use Appwrite\Utopia\Response\Model\ColumnURL; +use Appwrite\Utopia\Response\Model\ColumnVarchar; use Appwrite\Utopia\Response\Model\ConsoleVariables; use Appwrite\Utopia\Response\Model\Continent; use Appwrite\Utopia\Response\Model\Country; @@ -222,6 +230,10 @@ Response::setModel(new AttributeRelationship()); Response::setModel(new AttributePoint()); Response::setModel(new AttributeLine()); Response::setModel(new AttributePolygon()); +Response::setModel(new AttributeVarchar()); +Response::setModel(new AttributeText()); +Response::setModel(new AttributeMediumtext()); +Response::setModel(new AttributeLongtext()); // Table API Models Response::setModel(new Table()); @@ -240,6 +252,10 @@ Response::setModel(new ColumnRelationship()); Response::setModel(new ColumnPoint()); Response::setModel(new ColumnLine()); Response::setModel(new ColumnPolygon()); +Response::setModel(new ColumnVarchar()); +Response::setModel(new ColumnText()); +Response::setModel(new ColumnMediumtext()); +Response::setModel(new ColumnLongtext()); Response::setModel(new Index()); Response::setModel(new ColumnIndex()); Response::setModel(new Row()); diff --git a/composer.lock b/composer.lock index 3d79c35a1a..c29c66e759 100644 --- a/composer.lock +++ b/composer.lock @@ -3961,16 +3961,16 @@ }, { "name": "utopia-php/database", - "version": "4.6.2", + "version": "4.6.1", "source": { "type": "git", "url": "https://github.com/utopia-php/database.git", - "reference": "53394759c44067e9db4660635765e2056f83788c" + "reference": "8795a7f5bf8828955299ae44e5946f93a2b1bde5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/utopia-php/database/zipball/53394759c44067e9db4660635765e2056f83788c", - "reference": "53394759c44067e9db4660635765e2056f83788c", + "url": "https://api.github.com/repos/utopia-php/database/zipball/8795a7f5bf8828955299ae44e5946f93a2b1bde5", + "reference": "8795a7f5bf8828955299ae44e5946f93a2b1bde5", "shasum": "" }, "require": { @@ -4013,9 +4013,9 @@ ], "support": { "issues": "https://github.com/utopia-php/database/issues", - "source": "https://github.com/utopia-php/database/tree/4.6.2" + "source": "https://github.com/utopia-php/database/tree/4.6.1" }, - "time": "2026-01-22T07:14:12+00:00" + "time": "2026-01-21T09:37:22+00:00" }, { "name": "utopia-php/detector", @@ -9076,5 +9076,5 @@ "platform-overrides": { "php": "8.3" }, - "plugin-api-version": "2.6.0" + "plugin-api-version": "2.9.0" } diff --git a/docs/references/databases/create-longtext-attribute.md b/docs/references/databases/create-longtext-attribute.md new file mode 100644 index 0000000000..d8dfc4f55a --- /dev/null +++ b/docs/references/databases/create-longtext-attribute.md @@ -0,0 +1 @@ +Create a longtext attribute. diff --git a/docs/references/databases/create-mediumtext-attribute.md b/docs/references/databases/create-mediumtext-attribute.md new file mode 100644 index 0000000000..ffd3094f9b --- /dev/null +++ b/docs/references/databases/create-mediumtext-attribute.md @@ -0,0 +1 @@ +Create a mediumtext attribute. diff --git a/docs/references/databases/create-text-attribute.md b/docs/references/databases/create-text-attribute.md new file mode 100644 index 0000000000..3355987cac --- /dev/null +++ b/docs/references/databases/create-text-attribute.md @@ -0,0 +1 @@ +Create a text attribute. diff --git a/docs/references/databases/create-varchar-attribute.md b/docs/references/databases/create-varchar-attribute.md new file mode 100644 index 0000000000..f10962cb29 --- /dev/null +++ b/docs/references/databases/create-varchar-attribute.md @@ -0,0 +1 @@ +Create a varchar attribute. diff --git a/docs/references/databases/update-longtext-attribute.md b/docs/references/databases/update-longtext-attribute.md new file mode 100644 index 0000000000..fb91878a38 --- /dev/null +++ b/docs/references/databases/update-longtext-attribute.md @@ -0,0 +1 @@ +Update a longtext attribute. Changing the `default` value will not update already existing documents. diff --git a/docs/references/databases/update-mediumtext-attribute.md b/docs/references/databases/update-mediumtext-attribute.md new file mode 100644 index 0000000000..83c2cbfd15 --- /dev/null +++ b/docs/references/databases/update-mediumtext-attribute.md @@ -0,0 +1 @@ +Update a mediumtext attribute. Changing the `default` value will not update already existing documents. diff --git a/docs/references/databases/update-text-attribute.md b/docs/references/databases/update-text-attribute.md new file mode 100644 index 0000000000..80a9bc17fc --- /dev/null +++ b/docs/references/databases/update-text-attribute.md @@ -0,0 +1 @@ +Update a text attribute. Changing the `default` value will not update already existing documents. diff --git a/docs/references/databases/update-varchar-attribute.md b/docs/references/databases/update-varchar-attribute.md new file mode 100644 index 0000000000..42e19a5147 --- /dev/null +++ b/docs/references/databases/update-varchar-attribute.md @@ -0,0 +1 @@ +Update a varchar attribute. Changing the `default` value will not update already existing documents. diff --git a/docs/references/tablesdb/create-longtext-column.md b/docs/references/tablesdb/create-longtext-column.md new file mode 100644 index 0000000000..a7d4158aa7 --- /dev/null +++ b/docs/references/tablesdb/create-longtext-column.md @@ -0,0 +1 @@ +Create a longtext column. diff --git a/docs/references/tablesdb/create-mediumtext-column.md b/docs/references/tablesdb/create-mediumtext-column.md new file mode 100644 index 0000000000..4eea27703d --- /dev/null +++ b/docs/references/tablesdb/create-mediumtext-column.md @@ -0,0 +1 @@ +Create a mediumtext column. diff --git a/docs/references/tablesdb/create-text-column.md b/docs/references/tablesdb/create-text-column.md new file mode 100644 index 0000000000..aa0981bc69 --- /dev/null +++ b/docs/references/tablesdb/create-text-column.md @@ -0,0 +1 @@ +Create a text column. diff --git a/docs/references/tablesdb/create-varchar-column.md b/docs/references/tablesdb/create-varchar-column.md new file mode 100644 index 0000000000..480eb6584e --- /dev/null +++ b/docs/references/tablesdb/create-varchar-column.md @@ -0,0 +1 @@ +Create a varchar column. diff --git a/docs/references/tablesdb/update-longtext-column.md b/docs/references/tablesdb/update-longtext-column.md new file mode 100644 index 0000000000..b950946430 --- /dev/null +++ b/docs/references/tablesdb/update-longtext-column.md @@ -0,0 +1 @@ +Update a longtext column. Changing the `default` value will not update already existing rows. diff --git a/docs/references/tablesdb/update-mediumtext-column.md b/docs/references/tablesdb/update-mediumtext-column.md new file mode 100644 index 0000000000..b7e73c0259 --- /dev/null +++ b/docs/references/tablesdb/update-mediumtext-column.md @@ -0,0 +1 @@ +Update a mediumtext column. Changing the `default` value will not update already existing rows. diff --git a/docs/references/tablesdb/update-text-column.md b/docs/references/tablesdb/update-text-column.md new file mode 100644 index 0000000000..5cedebcf0b --- /dev/null +++ b/docs/references/tablesdb/update-text-column.md @@ -0,0 +1 @@ +Update a text column. Changing the `default` value will not update already existing rows. diff --git a/docs/references/tablesdb/update-varchar-column.md b/docs/references/tablesdb/update-varchar-column.md new file mode 100644 index 0000000000..c0a4fc239b --- /dev/null +++ b/docs/references/tablesdb/update-varchar-column.md @@ -0,0 +1 @@ +Update a varchar column. Changing the `default` value will not update already existing rows. diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Action.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Action.php index e2df5d92e6..d9df7f4a24 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Action.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Action.php @@ -265,6 +265,22 @@ abstract class Action extends UtopiaAction ? UtopiaResponse::MODEL_ATTRIBUTE_POLYGON : UtopiaResponse::MODEL_COLUMN_POLYGON, + Database::VAR_VARCHAR => $isCollections + ? UtopiaResponse::MODEL_ATTRIBUTE_VARCHAR + : UtopiaResponse::MODEL_COLUMN_VARCHAR, + + Database::VAR_TEXT => $isCollections + ? UtopiaResponse::MODEL_ATTRIBUTE_TEXT + : UtopiaResponse::MODEL_COLUMN_TEXT, + + Database::VAR_MEDIUMTEXT => $isCollections + ? UtopiaResponse::MODEL_ATTRIBUTE_MEDIUMTEXT + : UtopiaResponse::MODEL_COLUMN_MEDIUMTEXT, + + Database::VAR_LONGTEXT => $isCollections + ? UtopiaResponse::MODEL_ATTRIBUTE_LONGTEXT + : UtopiaResponse::MODEL_COLUMN_LONGTEXT, + Database::VAR_STRING => match ($format) { APP_DATABASE_ATTRIBUTE_EMAIL => $isCollections ? UtopiaResponse::MODEL_ATTRIBUTE_EMAIL diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Longtext/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Longtext/Create.php new file mode 100644 index 0000000000..d43014f001 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Longtext/Create.php @@ -0,0 +1,108 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_POST) + ->setHttpPath('/v1/databases/:databaseId/collections/:collectionId/attributes/longtext') + ->desc('Create longtext attribute') + ->groups(['api', 'database', 'schema']) + ->label('scope', 'collections.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].collections.[collectionId].attributes.[attributeId].create') + ->label('audits.event', 'attribute.create') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/databases/create-longtext-attribute.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_ACCEPTED, + model: $this->getResponseModel() + ) + ], + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).') + ->param('key', '', new Key(), 'Attribute Key.') + ->param('required', null, new Boolean(), 'Is attribute required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for attribute when not provided. Cannot be set when attribute is required.', true) + ->param('array', false, new Boolean(), 'Is attribute an array?', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForDatabase') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } + + public function action( + string $databaseId, + string $collectionId, + string $key, + ?bool $required, + ?string $default, + bool $array, + UtopiaResponse $response, + Database $dbForProject, + EventDatabase $queueForDatabase, + Event $queueForEvents, + Authorization $authorization + ): void { + $attribute = $this->createAttribute( + $databaseId, + $collectionId, + new Document([ + 'key' => $key, + 'type' => Database::VAR_LONGTEXT, + 'size' => 2147483647, + 'required' => $required, + 'default' => $default, + 'array' => $array, + ]), + $response, + $dbForProject, + $queueForDatabase, + $queueForEvents, + $authorization + ); + + $response + ->setStatusCode(SwooleResponse::STATUS_CODE_ACCEPTED) + ->dynamic($attribute, $this->getResponseModel()); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Longtext/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Longtext/Update.php new file mode 100644 index 0000000000..fee62a4e00 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Longtext/Update.php @@ -0,0 +1,101 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/databases/:databaseId/collections/:collectionId/attributes/longtext/:key') + ->desc('Update longtext attribute') + ->groups(['api', 'database', 'schema']) + ->label('scope', 'collections.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].collections.[collectionId].attributes.[attributeId].update') + ->label('audits.event', 'attribute.update') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/databases/update-longtext-attribute.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_OK, + model: $this->getResponseModel(), + ) + ], + contentType: ContentType::JSON, + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).') + ->param('key', '', new Key(), 'Attribute Key.') + ->param('required', null, new Boolean(), 'Is attribute required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for attribute when not provided. Cannot be set when attribute is required.') + ->param('newKey', null, new Nullable(new Key()), 'New Attribute Key.', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } + + public function action( + string $databaseId, + string $collectionId, + string $key, + ?bool $required, + ?string $default, + ?string $newKey, + UtopiaResponse $response, + Database $dbForProject, + Event $queueForEvents, + Authorization $authorization + ): void { + $attribute = $this->updateAttribute( + databaseId: $databaseId, + collectionId: $collectionId, + key: $key, + dbForProject: $dbForProject, + queueForEvents: $queueForEvents, + authorization: $authorization, + type: Database::VAR_LONGTEXT, + default: $default, + required: $required, + newKey: $newKey + ); + + $response + ->setStatusCode(SwooleResponse::STATUS_CODE_OK) + ->dynamic($attribute, $this->getResponseModel()); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Mediumtext/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Mediumtext/Create.php new file mode 100644 index 0000000000..d3405670c1 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Mediumtext/Create.php @@ -0,0 +1,108 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_POST) + ->setHttpPath('/v1/databases/:databaseId/collections/:collectionId/attributes/mediumtext') + ->desc('Create mediumtext attribute') + ->groups(['api', 'database', 'schema']) + ->label('scope', 'collections.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].collections.[collectionId].attributes.[attributeId].create') + ->label('audits.event', 'attribute.create') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/databases/create-mediumtext-attribute.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_ACCEPTED, + model: $this->getResponseModel() + ) + ], + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).') + ->param('key', '', new Key(), 'Attribute Key.') + ->param('required', null, new Boolean(), 'Is attribute required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for attribute when not provided. Cannot be set when attribute is required.', true) + ->param('array', false, new Boolean(), 'Is attribute an array?', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForDatabase') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } + + public function action( + string $databaseId, + string $collectionId, + string $key, + ?bool $required, + ?string $default, + bool $array, + UtopiaResponse $response, + Database $dbForProject, + EventDatabase $queueForDatabase, + Event $queueForEvents, + Authorization $authorization + ): void { + $attribute = $this->createAttribute( + $databaseId, + $collectionId, + new Document([ + 'key' => $key, + 'type' => Database::VAR_MEDIUMTEXT, + 'size' => 16777215, + 'required' => $required, + 'default' => $default, + 'array' => $array, + ]), + $response, + $dbForProject, + $queueForDatabase, + $queueForEvents, + $authorization + ); + + $response + ->setStatusCode(SwooleResponse::STATUS_CODE_ACCEPTED) + ->dynamic($attribute, $this->getResponseModel()); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Mediumtext/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Mediumtext/Update.php new file mode 100644 index 0000000000..a9792f29f7 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Mediumtext/Update.php @@ -0,0 +1,101 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/databases/:databaseId/collections/:collectionId/attributes/mediumtext/:key') + ->desc('Update mediumtext attribute') + ->groups(['api', 'database', 'schema']) + ->label('scope', 'collections.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].collections.[collectionId].attributes.[attributeId].update') + ->label('audits.event', 'attribute.update') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/databases/update-mediumtext-attribute.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_OK, + model: $this->getResponseModel(), + ) + ], + contentType: ContentType::JSON, + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).') + ->param('key', '', new Key(), 'Attribute Key.') + ->param('required', null, new Boolean(), 'Is attribute required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for attribute when not provided. Cannot be set when attribute is required.') + ->param('newKey', null, new Nullable(new Key()), 'New Attribute Key.', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } + + public function action( + string $databaseId, + string $collectionId, + string $key, + ?bool $required, + ?string $default, + ?string $newKey, + UtopiaResponse $response, + Database $dbForProject, + Event $queueForEvents, + Authorization $authorization + ): void { + $attribute = $this->updateAttribute( + databaseId: $databaseId, + collectionId: $collectionId, + key: $key, + dbForProject: $dbForProject, + queueForEvents: $queueForEvents, + authorization: $authorization, + type: Database::VAR_MEDIUMTEXT, + default: $default, + required: $required, + newKey: $newKey + ); + + $response + ->setStatusCode(SwooleResponse::STATUS_CODE_OK) + ->dynamic($attribute, $this->getResponseModel()); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Text/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Text/Create.php new file mode 100644 index 0000000000..ce89f9e70d --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Text/Create.php @@ -0,0 +1,108 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_POST) + ->setHttpPath('/v1/databases/:databaseId/collections/:collectionId/attributes/text') + ->desc('Create text attribute') + ->groups(['api', 'database', 'schema']) + ->label('scope', 'collections.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].collections.[collectionId].attributes.[attributeId].create') + ->label('audits.event', 'attribute.create') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/databases/create-text-attribute.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_ACCEPTED, + model: $this->getResponseModel() + ) + ], + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).') + ->param('key', '', new Key(), 'Attribute Key.') + ->param('required', null, new Boolean(), 'Is attribute required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for attribute when not provided. Cannot be set when attribute is required.', true) + ->param('array', false, new Boolean(), 'Is attribute an array?', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForDatabase') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } + + public function action( + string $databaseId, + string $collectionId, + string $key, + ?bool $required, + ?string $default, + bool $array, + UtopiaResponse $response, + Database $dbForProject, + EventDatabase $queueForDatabase, + Event $queueForEvents, + Authorization $authorization + ): void { + $attribute = $this->createAttribute( + $databaseId, + $collectionId, + new Document([ + 'key' => $key, + 'type' => Database::VAR_TEXT, + 'size' => 65535, + 'required' => $required, + 'default' => $default, + 'array' => $array, + ]), + $response, + $dbForProject, + $queueForDatabase, + $queueForEvents, + $authorization + ); + + $response + ->setStatusCode(SwooleResponse::STATUS_CODE_ACCEPTED) + ->dynamic($attribute, $this->getResponseModel()); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Text/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Text/Update.php new file mode 100644 index 0000000000..e0a82d196d --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Text/Update.php @@ -0,0 +1,101 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/databases/:databaseId/collections/:collectionId/attributes/text/:key') + ->desc('Update text attribute') + ->groups(['api', 'database', 'schema']) + ->label('scope', 'collections.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].collections.[collectionId].attributes.[attributeId].update') + ->label('audits.event', 'attribute.update') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/databases/update-text-attribute.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_OK, + model: $this->getResponseModel(), + ) + ], + contentType: ContentType::JSON, + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).') + ->param('key', '', new Key(), 'Attribute Key.') + ->param('required', null, new Boolean(), 'Is attribute required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for attribute when not provided. Cannot be set when attribute is required.') + ->param('newKey', null, new Nullable(new Key()), 'New Attribute Key.', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } + + public function action( + string $databaseId, + string $collectionId, + string $key, + ?bool $required, + ?string $default, + ?string $newKey, + UtopiaResponse $response, + Database $dbForProject, + Event $queueForEvents, + Authorization $authorization + ): void { + $attribute = $this->updateAttribute( + databaseId: $databaseId, + collectionId: $collectionId, + key: $key, + dbForProject: $dbForProject, + queueForEvents: $queueForEvents, + authorization: $authorization, + type: Database::VAR_TEXT, + default: $default, + required: $required, + newKey: $newKey + ); + + $response + ->setStatusCode(SwooleResponse::STATUS_CODE_OK) + ->dynamic($attribute, $this->getResponseModel()); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Varchar/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Varchar/Create.php new file mode 100644 index 0000000000..543d54aef1 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Varchar/Create.php @@ -0,0 +1,119 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_POST) + ->setHttpPath('/v1/databases/:databaseId/collections/:collectionId/attributes/varchar') + ->desc('Create varchar attribute') + ->groups(['api', 'database', 'schema']) + ->label('scope', 'collections.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].collections.[collectionId].attributes.[attributeId].create') + ->label('audits.event', 'attribute.create') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/databases/create-varchar-attribute.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_ACCEPTED, + model: $this->getResponseModel() + ) + ], + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).') + ->param('key', '', new Key(), 'Attribute Key.') + ->param('size', null, new Range(1, 16381, Validator::TYPE_INTEGER), 'Attribute size for varchar attributes, in number of characters. Maximum size is 16381.') + ->param('required', null, new Boolean(), 'Is attribute required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for attribute when not provided. Cannot be set when attribute is required.', true) + ->param('array', false, new Boolean(), 'Is attribute an array?', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForDatabase') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } + + public function action( + string $databaseId, + string $collectionId, + string $key, + ?int $size, + ?bool $required, + ?string $default, + bool $array, + UtopiaResponse $response, + Database $dbForProject, + EventDatabase $queueForDatabase, + Event $queueForEvents, + Authorization $authorization + ): void { + // Ensure default fits in the given size + $validator = new Text($size, 0); + if (!is_null($default) && !$validator->isValid($default)) { + throw new Exception($this->getInvalidValueException(), $validator->getDescription()); + } + + $attribute = $this->createAttribute( + $databaseId, + $collectionId, + new Document([ + 'key' => $key, + 'type' => Database::VAR_VARCHAR, + 'size' => $size, + 'required' => $required, + 'default' => $default, + 'array' => $array, + ]), + $response, + $dbForProject, + $queueForDatabase, + $queueForEvents, + $authorization + ); + + $response + ->setStatusCode(SwooleResponse::STATUS_CODE_ACCEPTED) + ->dynamic($attribute, $this->getResponseModel()); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Varchar/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Varchar/Update.php new file mode 100644 index 0000000000..e8388e11b2 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Varchar/Update.php @@ -0,0 +1,106 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/databases/:databaseId/collections/:collectionId/attributes/varchar/:key') + ->desc('Update varchar attribute') + ->groups(['api', 'database', 'schema']) + ->label('scope', 'collections.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].collections.[collectionId].attributes.[attributeId].update') + ->label('audits.event', 'attribute.update') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/databases/update-varchar-attribute.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_OK, + model: $this->getResponseModel(), + ) + ], + contentType: ContentType::JSON, + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).') + ->param('key', '', new Key(), 'Attribute Key.') + ->param('required', null, new Boolean(), 'Is attribute required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for attribute when not provided. Cannot be set when attribute is required.') + ->param('size', null, new Nullable(new Range(1, 16381, Validator::TYPE_INTEGER)), 'Maximum size of the varchar attribute.', true) + ->param('newKey', null, new Nullable(new Key()), 'New Attribute Key.', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } + + public function action( + string $databaseId, + string $collectionId, + string $key, + ?bool $required, + ?string $default, + ?int $size, + ?string $newKey, + UtopiaResponse $response, + Database $dbForProject, + Event $queueForEvents, + Authorization $authorization + ): void { + $attribute = $this->updateAttribute( + databaseId: $databaseId, + collectionId: $collectionId, + key: $key, + dbForProject: $dbForProject, + queueForEvents: $queueForEvents, + authorization: $authorization, + type: Database::VAR_VARCHAR, + size: $size, + default: $default, + required: $required, + newKey: $newKey + ); + + $response + ->setStatusCode(SwooleResponse::STATUS_CODE_OK) + ->dynamic($attribute, $this->getResponseModel()); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Longtext/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Longtext/Create.php new file mode 100644 index 0000000000..81a72f8d9e --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Longtext/Create.php @@ -0,0 +1,67 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_POST) + ->setHttpPath('/v1/tablesdb/:databaseId/tables/:tableId/columns/longtext') + ->desc('Create longtext column') + ->groups(['api', 'database', 'schema']) + ->label('scope', ['tables.write', 'collections.write']) + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].tables.[tableId].columns.[columnId].create') + ->label('audits.event', 'column.create') + ->label('audits.resource', 'database/{request.databaseId}/table/{request.tableId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/tablesdb/create-longtext-column.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_ACCEPTED, + model: $this->getResponseModel() + ) + ] + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') + ->param('key', '', new Key(), 'Column Key.') + ->param('required', null, new Boolean(), 'Is column required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.', true) + ->param('array', false, new Boolean(), 'Is column an array?', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForDatabase') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Longtext/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Longtext/Update.php new file mode 100644 index 0000000000..92533dbe0a --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Longtext/Update.php @@ -0,0 +1,68 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/tablesdb/:databaseId/tables/:tableId/columns/longtext/:key') + ->desc('Update longtext column') + ->groups(['api', 'database', 'schema']) + ->label('scope', ['tables.write', 'collections.write']) + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].tables.[tableId].columns.[columnId].update') + ->label('audits.event', 'column.update') + ->label('audits.resource', 'database/{request.databaseId}/table/{request.tableId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/tablesdb/update-longtext-column.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_OK, + model: $this->getResponseModel(), + ) + ], + contentType: ContentType::JSON, + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') + ->param('key', '', new Key(), 'Column Key.') + ->param('required', null, new Boolean(), 'Is column required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.') + ->param('newKey', null, new Nullable(new Key()), 'New Column Key.', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Mediumtext/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Mediumtext/Create.php new file mode 100644 index 0000000000..9893424713 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Mediumtext/Create.php @@ -0,0 +1,67 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_POST) + ->setHttpPath('/v1/tablesdb/:databaseId/tables/:tableId/columns/mediumtext') + ->desc('Create mediumtext column') + ->groups(['api', 'database', 'schema']) + ->label('scope', ['tables.write', 'collections.write']) + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].tables.[tableId].columns.[columnId].create') + ->label('audits.event', 'column.create') + ->label('audits.resource', 'database/{request.databaseId}/table/{request.tableId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/tablesdb/create-mediumtext-column.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_ACCEPTED, + model: $this->getResponseModel() + ) + ] + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') + ->param('key', '', new Key(), 'Column Key.') + ->param('required', null, new Boolean(), 'Is column required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.', true) + ->param('array', false, new Boolean(), 'Is column an array?', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForDatabase') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Mediumtext/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Mediumtext/Update.php new file mode 100644 index 0000000000..15164343ca --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Mediumtext/Update.php @@ -0,0 +1,68 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/tablesdb/:databaseId/tables/:tableId/columns/mediumtext/:key') + ->desc('Update mediumtext column') + ->groups(['api', 'database', 'schema']) + ->label('scope', ['tables.write', 'collections.write']) + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].tables.[tableId].columns.[columnId].update') + ->label('audits.event', 'column.update') + ->label('audits.resource', 'database/{request.databaseId}/table/{request.tableId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/tablesdb/update-mediumtext-column.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_OK, + model: $this->getResponseModel(), + ) + ], + contentType: ContentType::JSON, + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') + ->param('key', '', new Key(), 'Column Key.') + ->param('required', null, new Boolean(), 'Is column required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.') + ->param('newKey', null, new Nullable(new Key()), 'New Column Key.', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Create.php index ff50313a7c..517288b297 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Create.php @@ -4,6 +4,7 @@ namespace Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Strin use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\String\Create as StringCreate; use Appwrite\SDK\AuthType; +use Appwrite\SDK\Deprecated; use Appwrite\SDK\Method; use Appwrite\SDK\Response as SDKResponse; use Appwrite\Utopia\Response as UtopiaResponse; @@ -51,7 +52,11 @@ class Create extends StringCreate code: SwooleResponse::STATUS_CODE_ACCEPTED, model: $this->getResponseModel() ) - ] + ], + deprecated: new Deprecated( + since: '1.9.0', + replaceWith: 'tablesDB.createTextColumn', + ), )) ->param('databaseId', '', new UID(), 'Database ID.') ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php index 6ad1be124b..05894aaa94 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php @@ -4,7 +4,7 @@ namespace Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Strin use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\String\Update as StringUpdate; use Appwrite\SDK\AuthType; -use Appwrite\SDK\ContentType; +use Appwrite\SDK\Deprecated; use Appwrite\SDK\Method; use Appwrite\SDK\Response as SDKResponse; use Appwrite\Utopia\Response as UtopiaResponse; @@ -53,7 +53,10 @@ class Update extends StringUpdate model: $this->getResponseModel(), ) ], - contentType: ContentType::JSON + deprecated: new Deprecated( + since: '1.8.0', + replaceWith: 'tablesDB.updateTextColumn', + ) )) ->param('databaseId', '', new UID(), 'Database ID.') ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Text/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Text/Create.php new file mode 100644 index 0000000000..704f74060e --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Text/Create.php @@ -0,0 +1,67 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_POST) + ->setHttpPath('/v1/tablesdb/:databaseId/tables/:tableId/columns/text') + ->desc('Create text column') + ->groups(['api', 'database', 'schema']) + ->label('scope', ['tables.write', 'collections.write']) + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].tables.[tableId].columns.[columnId].create') + ->label('audits.event', 'column.create') + ->label('audits.resource', 'database/{request.databaseId}/table/{request.tableId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/tablesdb/create-text-column.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_ACCEPTED, + model: $this->getResponseModel() + ) + ] + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') + ->param('key', '', new Key(), 'Column Key.') + ->param('required', null, new Boolean(), 'Is column required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.', true) + ->param('array', false, new Boolean(), 'Is column an array?', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForDatabase') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Text/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Text/Update.php new file mode 100644 index 0000000000..ce6b7c64a1 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Text/Update.php @@ -0,0 +1,68 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/tablesdb/:databaseId/tables/:tableId/columns/text/:key') + ->desc('Update text column') + ->groups(['api', 'database', 'schema']) + ->label('scope', ['tables.write', 'collections.write']) + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].tables.[tableId].columns.[columnId].update') + ->label('audits.event', 'column.update') + ->label('audits.resource', 'database/{request.databaseId}/table/{request.tableId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/tablesdb/update-text-column.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_OK, + model: $this->getResponseModel(), + ) + ], + contentType: ContentType::JSON, + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') + ->param('key', '', new Key(), 'Column Key.') + ->param('required', null, new Boolean(), 'Is column required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.') + ->param('newKey', null, new Nullable(new Key()), 'New Column Key.', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Varchar/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Varchar/Create.php new file mode 100644 index 0000000000..89e00c0d6b --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Varchar/Create.php @@ -0,0 +1,70 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_POST) + ->setHttpPath('/v1/tablesdb/:databaseId/tables/:tableId/columns/varchar') + ->desc('Create varchar column') + ->groups(['api', 'database', 'schema']) + ->label('scope', ['tables.write', 'collections.write']) + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].tables.[tableId].columns.[columnId].create') + ->label('audits.event', 'column.create') + ->label('audits.resource', 'database/{request.databaseId}/table/{request.tableId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/tablesdb/create-varchar-column.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_ACCEPTED, + model: $this->getResponseModel() + ) + ] + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') + ->param('key', '', new Key(), 'Column Key.') + ->param('size', null, new Range(1, 16381, Validator::TYPE_INTEGER), 'Column size for varchar columns, in number of characters. Maximum size is 16381.') + ->param('required', null, new Boolean(), 'Is column required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.', true) + ->param('array', false, new Boolean(), 'Is column an array?', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForDatabase') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Varchar/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Varchar/Update.php new file mode 100644 index 0000000000..a1be057484 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Varchar/Update.php @@ -0,0 +1,71 @@ +setHttpMethod(self::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/tablesdb/:databaseId/tables/:tableId/columns/varchar/:key') + ->desc('Update varchar column') + ->groups(['api', 'database', 'schema']) + ->label('scope', ['tables.write', 'collections.write']) + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('event', 'databases.[databaseId].tables.[tableId].columns.[columnId].update') + ->label('audits.event', 'column.update') + ->label('audits.resource', 'database/{request.databaseId}/table/{request.tableId}') + ->label('sdk', new Method( + namespace: $this->getSDKNamespace(), + group: $this->getSDKGroup(), + name: self::getName(), + description: '/docs/references/tablesdb/update-varchar-column.md', + auth: [AuthType::ADMIN, AuthType::KEY], + responses: [ + new SDKResponse( + code: SwooleResponse::STATUS_CODE_OK, + model: $this->getResponseModel(), + ) + ], + contentType: ContentType::JSON, + )) + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') + ->param('key', '', new Key(), 'Column Key.') + ->param('required', null, new Boolean(), 'Is column required?') + ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.') + ->param('size', null, new Nullable(new Range(1, 16381, Validator::TYPE_INTEGER)), 'Maximum size of the varchar column.', true) + ->param('newKey', null, new Nullable(new Key()), 'New Column Key.', true) + ->inject('response') + ->inject('dbForProject') + ->inject('queueForEvents') + ->inject('authorization') + ->callback($this->action(...)); + } +} diff --git a/src/Appwrite/Platform/Modules/Databases/Services/Registry/Legacy.php b/src/Appwrite/Platform/Modules/Databases/Services/Registry/Legacy.php index 7de95da255..a8d2205236 100644 --- a/src/Appwrite/Platform/Modules/Databases/Services/Registry/Legacy.php +++ b/src/Appwrite/Platform/Modules/Databases/Services/Registry/Legacy.php @@ -20,6 +20,10 @@ use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\IP use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\IP\Update as UpdateIPAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Line\Create as CreateLineAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Line\Update as UpdateLineAttribute; +use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Longtext\Create as CreateLongtextAttribute; +use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Longtext\Update as UpdateLongtextAttribute; +use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Mediumtext\Create as CreateMediumtextAttribute; +use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Mediumtext\Update as UpdateMediumtextAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Point\Create as CreatePointAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Point\Update as UpdatePointAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Polygon\Create as CreatePolygonAttribute; @@ -28,8 +32,12 @@ use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Re use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Relationship\Update as UpdateRelationshipAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\String\Create as CreateStringAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\String\Update as UpdateStringAttribute; +use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Text\Create as CreateTextAttribute; +use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Text\Update as UpdateTextAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\URL\Create as CreateURLAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\URL\Update as UpdateURLAttribute; +use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Varchar\Create as CreateVarcharAttribute; +use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\Varchar\Update as UpdateVarcharAttribute; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Attributes\XList as ListAttributes; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Create as CreateCollection; use Appwrite\Platform\Modules\Databases\Http\Databases\Collections\Delete as DeleteCollection; @@ -190,6 +198,22 @@ class Legacy extends Base // Attribute: URL $service->addAction(CreateURLAttribute::getName(), new CreateURLAttribute()); $service->addAction(UpdateURLAttribute::getName(), new UpdateURLAttribute()); + + // Attribute: Varchar + $service->addAction(CreateVarcharAttribute::getName(), new CreateVarcharAttribute()); + $service->addAction(UpdateVarcharAttribute::getName(), new UpdateVarcharAttribute()); + + // Attribute: Text + $service->addAction(CreateTextAttribute::getName(), new CreateTextAttribute()); + $service->addAction(UpdateTextAttribute::getName(), new UpdateTextAttribute()); + + // Attribute: Mediumtext + $service->addAction(CreateMediumtextAttribute::getName(), new CreateMediumtextAttribute()); + $service->addAction(UpdateMediumtextAttribute::getName(), new UpdateMediumtextAttribute()); + + // Attribute: Longtext + $service->addAction(CreateLongtextAttribute::getName(), new CreateLongtextAttribute()); + $service->addAction(UpdateLongtextAttribute::getName(), new UpdateLongtextAttribute()); } private function registerIndexActions(Service $service): void diff --git a/src/Appwrite/Platform/Modules/Databases/Services/Registry/TablesDB.php b/src/Appwrite/Platform/Modules/Databases/Services/Registry/TablesDB.php index 4a02ac684e..965e0929fb 100644 --- a/src/Appwrite/Platform/Modules/Databases/Services/Registry/TablesDB.php +++ b/src/Appwrite/Platform/Modules/Databases/Services/Registry/TablesDB.php @@ -23,6 +23,10 @@ use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\IP\Create a use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\IP\Update as UpdateIP; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Line\Create as CreateLine; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Line\Update as UpdateLine; +use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Longtext\Create as CreateLongtext; +use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Longtext\Update as UpdateLongtext; +use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Mediumtext\Create as CreateMediumtext; +use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Mediumtext\Update as UpdateMediumtext; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Point\Create as CreatePoint; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Point\Update as UpdatePoint; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Polygon\Create as CreatePolygon; @@ -31,8 +35,12 @@ use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Relationshi use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Relationship\Update as UpdateRelationship; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\String\Create as CreateString; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\String\Update as UpdateString; +use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Text\Create as CreateText; +use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Text\Update as UpdateText; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\URL\Create as CreateURL; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\URL\Update as UpdateURL; +use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Varchar\Create as CreateVarchar; +use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\Varchar\Update as UpdateVarchar; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Columns\XList as ListColumns; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Create as CreateTable; use Appwrite\Platform\Modules\Databases\Http\TablesDB\Tables\Delete as DeleteTable; @@ -170,6 +178,22 @@ class TablesDB extends Base // Column: URL $service->addAction(CreateURL::getName(), new CreateURL()); $service->addAction(UpdateURL::getName(), new UpdateURL()); + + // Column: Varchar + $service->addAction(CreateVarchar::getName(), new CreateVarchar()); + $service->addAction(UpdateVarchar::getName(), new UpdateVarchar()); + + // Column: Text + $service->addAction(CreateText::getName(), new CreateText()); + $service->addAction(UpdateText::getName(), new UpdateText()); + + // Column: Mediumtext + $service->addAction(CreateMediumtext::getName(), new CreateMediumtext()); + $service->addAction(UpdateMediumtext::getName(), new UpdateMediumtext()); + + // Column: Longtext + $service->addAction(CreateLongtext::getName(), new CreateLongtext()); + $service->addAction(UpdateLongtext::getName(), new UpdateLongtext()); } private function registerIndexActions(Service $service): void diff --git a/src/Appwrite/Utopia/Response.php b/src/Appwrite/Utopia/Response.php index f2ac486f82..9892fd5f78 100644 --- a/src/Appwrite/Utopia/Response.php +++ b/src/Appwrite/Utopia/Response.php @@ -75,6 +75,10 @@ class Response extends SwooleResponse public const MODEL_ATTRIBUTE_POINT = 'attributePoint'; public const MODEL_ATTRIBUTE_LINE = 'attributeLine'; public const MODEL_ATTRIBUTE_POLYGON = 'attributePolygon'; + public const MODEL_ATTRIBUTE_VARCHAR = 'attributeVarchar'; + public const MODEL_ATTRIBUTE_TEXT = 'attributeText'; + public const MODEL_ATTRIBUTE_MEDIUMTEXT = 'attributeMediumtext'; + public const MODEL_ATTRIBUTE_LONGTEXT = 'attributeLongtext'; // Database Columns public const MODEL_COLUMN = 'column'; @@ -92,6 +96,10 @@ class Response extends SwooleResponse public const MODEL_COLUMN_POINT = 'columnPoint'; public const MODEL_COLUMN_LINE = 'columnLine'; public const MODEL_COLUMN_POLYGON = 'columnPolygon'; + public const MODEL_COLUMN_VARCHAR = 'columnVarchar'; + public const MODEL_COLUMN_TEXT = 'columnText'; + public const MODEL_COLUMN_MEDIUMTEXT = 'columnMediumtext'; + public const MODEL_COLUMN_LONGTEXT = 'columnLongtext'; // Transactions public const MODEL_TRANSACTION = 'transaction'; diff --git a/src/Appwrite/Utopia/Response/Model/AttributeLongtext.php b/src/Appwrite/Utopia/Response/Model/AttributeLongtext.php new file mode 100644 index 0000000000..02e2f637e4 --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/AttributeLongtext.php @@ -0,0 +1,47 @@ +addRule('default', [ + 'type' => self::TYPE_STRING, + 'description' => 'Default value for attribute when not provided. Cannot be set when attribute is required.', + 'default' => null, + 'required' => false, + 'example' => 'default', + ]) + ; + } + + public array $conditions = [ + 'type' => 'longtext', + ]; + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'AttributeLongtext'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_ATTRIBUTE_LONGTEXT; + } +} diff --git a/src/Appwrite/Utopia/Response/Model/AttributeMediumtext.php b/src/Appwrite/Utopia/Response/Model/AttributeMediumtext.php new file mode 100644 index 0000000000..de9316ff03 --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/AttributeMediumtext.php @@ -0,0 +1,47 @@ +addRule('default', [ + 'type' => self::TYPE_STRING, + 'description' => 'Default value for attribute when not provided. Cannot be set when attribute is required.', + 'default' => null, + 'required' => false, + 'example' => 'default', + ]) + ; + } + + public array $conditions = [ + 'type' => 'mediumtext', + ]; + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'AttributeMediumtext'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_ATTRIBUTE_MEDIUMTEXT; + } +} diff --git a/src/Appwrite/Utopia/Response/Model/AttributeText.php b/src/Appwrite/Utopia/Response/Model/AttributeText.php new file mode 100644 index 0000000000..64a8c8316b --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/AttributeText.php @@ -0,0 +1,47 @@ +addRule('default', [ + 'type' => self::TYPE_STRING, + 'description' => 'Default value for attribute when not provided. Cannot be set when attribute is required.', + 'default' => null, + 'required' => false, + 'example' => 'default', + ]) + ; + } + + public array $conditions = [ + 'type' => 'text', + ]; + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'AttributeText'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_ATTRIBUTE_TEXT; + } +} diff --git a/src/Appwrite/Utopia/Response/Model/AttributeVarchar.php b/src/Appwrite/Utopia/Response/Model/AttributeVarchar.php new file mode 100644 index 0000000000..21741b7ca3 --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/AttributeVarchar.php @@ -0,0 +1,53 @@ +addRule('size', [ + 'type' => self::TYPE_INTEGER, + 'description' => 'Attribute size.', + 'default' => 0, + 'example' => 128, + ]) + ->addRule('default', [ + 'type' => self::TYPE_STRING, + 'description' => 'Default value for attribute when not provided. Cannot be set when attribute is required.', + 'default' => null, + 'required' => false, + 'example' => 'default', + ]) + ; + } + + public array $conditions = [ + 'type' => 'varchar', + ]; + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'AttributeVarchar'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_ATTRIBUTE_VARCHAR; + } +} diff --git a/src/Appwrite/Utopia/Response/Model/ColumnLongtext.php b/src/Appwrite/Utopia/Response/Model/ColumnLongtext.php new file mode 100644 index 0000000000..86361596fe --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/ColumnLongtext.php @@ -0,0 +1,47 @@ +addRule('default', [ + 'type' => self::TYPE_STRING, + 'description' => 'Default value for column when not provided. Cannot be set when column is required.', + 'default' => null, + 'required' => false, + 'example' => 'default', + ]) + ; + } + + public array $conditions = [ + 'type' => 'longtext', + ]; + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'ColumnLongtext'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_COLUMN_LONGTEXT; + } +} diff --git a/src/Appwrite/Utopia/Response/Model/ColumnMediumtext.php b/src/Appwrite/Utopia/Response/Model/ColumnMediumtext.php new file mode 100644 index 0000000000..c060dcbc60 --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/ColumnMediumtext.php @@ -0,0 +1,47 @@ +addRule('default', [ + 'type' => self::TYPE_STRING, + 'description' => 'Default value for column when not provided. Cannot be set when column is required.', + 'default' => null, + 'required' => false, + 'example' => 'default', + ]) + ; + } + + public array $conditions = [ + 'type' => 'mediumtext', + ]; + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'ColumnMediumtext'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_COLUMN_MEDIUMTEXT; + } +} diff --git a/src/Appwrite/Utopia/Response/Model/ColumnText.php b/src/Appwrite/Utopia/Response/Model/ColumnText.php new file mode 100644 index 0000000000..acd997d18c --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/ColumnText.php @@ -0,0 +1,47 @@ +addRule('default', [ + 'type' => self::TYPE_STRING, + 'description' => 'Default value for column when not provided. Cannot be set when column is required.', + 'default' => null, + 'required' => false, + 'example' => 'default', + ]) + ; + } + + public array $conditions = [ + 'type' => 'text', + ]; + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'ColumnText'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_COLUMN_TEXT; + } +} diff --git a/src/Appwrite/Utopia/Response/Model/ColumnVarchar.php b/src/Appwrite/Utopia/Response/Model/ColumnVarchar.php new file mode 100644 index 0000000000..eba0fbd973 --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/ColumnVarchar.php @@ -0,0 +1,53 @@ +addRule('size', [ + 'type' => self::TYPE_INTEGER, + 'description' => 'Column size.', + 'default' => 0, + 'example' => 128, + ]) + ->addRule('default', [ + 'type' => self::TYPE_STRING, + 'description' => 'Default value for column when not provided. Cannot be set when column is required.', + 'default' => null, + 'required' => false, + 'example' => 'default', + ]) + ; + } + + public array $conditions = [ + 'type' => 'varchar', + ]; + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'ColumnVarchar'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_COLUMN_VARCHAR; + } +} diff --git a/tests/e2e/Services/Databases/Legacy/DatabasesStringTypesTest.php b/tests/e2e/Services/Databases/Legacy/DatabasesStringTypesTest.php new file mode 100644 index 0000000000..3a9c7927db --- /dev/null +++ b/tests/e2e/Services/Databases/Legacy/DatabasesStringTypesTest.php @@ -0,0 +1,786 @@ +client->call(Client::METHOD_POST, '/databases', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'databaseId' => ID::unique(), + 'name' => 'String Types Test Database' + ]); + + $this->assertEquals(201, $database['headers']['status-code']); + self::$databaseId = $database['body']['$id']; + + return ['databaseId' => $database['body']['$id']]; + } + + /** + * @depends testCreateDatabase + */ + public function testCreateCollection(array $data): array + { + $collection = $this->client->call(Client::METHOD_POST, '/databases/' . $data['databaseId'] . '/collections', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'collectionId' => ID::unique(), + 'name' => 'String Types Collection', + 'documentSecurity' => true, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $collection['headers']['status-code']); + self::$collectionId = $collection['body']['$id']; + + return [ + 'databaseId' => $data['databaseId'], + 'collectionId' => $collection['body']['$id'], + ]; + } + + /** + * @depends testCreateCollection + */ + public function testCreateVarcharAttribute(array $data): array + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Create varchar attribute with valid size + $varchar = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_field', + 'size' => 255, + 'required' => false, + ]); + + $this->assertEquals(202, $varchar['headers']['status-code']); + $this->assertEquals('varchar_field', $varchar['body']['key']); + $this->assertEquals('varchar', $varchar['body']['type']); + $this->assertEquals(255, $varchar['body']['size']); + $this->assertEquals(false, $varchar['body']['required']); + $this->assertNull($varchar['body']['default']); + + // Test SUCCESS: Create varchar with default value + $varcharWithDefault = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_with_default', + 'size' => 100, + 'required' => false, + 'default' => 'hello world', + ]); + + $this->assertEquals(202, $varcharWithDefault['headers']['status-code']); + $this->assertEquals('hello world', $varcharWithDefault['body']['default']); + + // Test SUCCESS: Create required varchar + $varcharRequired = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_required', + 'size' => 50, + 'required' => true, + ]); + + $this->assertEquals(202, $varcharRequired['headers']['status-code']); + $this->assertEquals(true, $varcharRequired['body']['required']); + + // Test SUCCESS: Create varchar array + $varcharArray = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_array', + 'size' => 64, + 'required' => false, + 'array' => true, + ]); + + $this->assertEquals(202, $varcharArray['headers']['status-code']); + $this->assertEquals(true, $varcharArray['body']['array']); + + // Test SUCCESS: Minimum varchar size (1) + $varcharMin = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_min', + 'size' => 1, + 'required' => false, + ]); + + $this->assertEquals(202, $varcharMin['headers']['status-code']); + $this->assertEquals(1, $varcharMin['body']['size']); + + return $data; + } + + /** + * @depends testCreateCollection + */ + public function testCreateVarcharAttributeFailures(array $data): void + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test FAILURE: Size 0 + $varcharZero = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_zero', + 'size' => 0, + 'required' => false, + ]); + + $this->assertEquals(400, $varcharZero['headers']['status-code']); + + // Test FAILURE: Negative size + $varcharNegative = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_negative', + 'size' => -10, + 'required' => false, + ]); + + $this->assertEquals(400, $varcharNegative['headers']['status-code']); + + // Test FAILURE: Size exceeds maximum (16382) + $varcharTooLarge = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_too_large', + 'size' => 16382, + 'required' => false, + ]); + + $this->assertEquals(400, $varcharTooLarge['headers']['status-code']); + + // Test FAILURE: Missing size parameter + $varcharNoSize = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_no_size', + 'required' => false, + ]); + + $this->assertEquals(400, $varcharNoSize['headers']['status-code']); + + // Test FAILURE: Default value exceeds size + $varcharDefaultTooLong = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_default_too_long', + 'size' => 5, + 'required' => false, + 'default' => 'this is way too long for the size', + ]); + + $this->assertEquals(400, $varcharDefaultTooLong['headers']['status-code']); + + // Test FAILURE: Duplicate key + $varcharDuplicate = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_field', // Already exists + 'size' => 100, + 'required' => false, + ]); + + $this->assertEquals(409, $varcharDuplicate['headers']['status-code']); + } + + /** + * @depends testCreateCollection + */ + public function testCreateTextAttribute(array $data): array + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Create text attribute + $text = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/text', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'text_field', + 'required' => false, + ]); + + $this->assertEquals(202, $text['headers']['status-code']); + $this->assertEquals('text_field', $text['body']['key']); + $this->assertEquals('text', $text['body']['type']); + $this->assertEquals(false, $text['body']['required']); + + // Test SUCCESS: Create text with default value + $textWithDefault = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/text', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'text_with_default', + 'required' => false, + 'default' => 'This is a longer default text value that can contain more content.', + ]); + + $this->assertEquals(202, $textWithDefault['headers']['status-code']); + $this->assertEquals('This is a longer default text value that can contain more content.', $textWithDefault['body']['default']); + + // Test SUCCESS: Create required text + $textRequired = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/text', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'text_required', + 'required' => true, + ]); + + $this->assertEquals(202, $textRequired['headers']['status-code']); + $this->assertEquals(true, $textRequired['body']['required']); + + // Test SUCCESS: Create text array + $textArray = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/text', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'text_array', + 'required' => false, + 'array' => true, + ]); + + $this->assertEquals(202, $textArray['headers']['status-code']); + $this->assertEquals(true, $textArray['body']['array']); + + return $data; + } + + /** + * @depends testCreateCollection + */ + public function testCreateMediumtextAttribute(array $data): array + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Create mediumtext attribute + $mediumtext = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/mediumtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'mediumtext_field', + 'required' => false, + ]); + + $this->assertEquals(202, $mediumtext['headers']['status-code']); + $this->assertEquals('mediumtext_field', $mediumtext['body']['key']); + $this->assertEquals('mediumtext', $mediumtext['body']['type']); + $this->assertEquals(false, $mediumtext['body']['required']); + + // Test SUCCESS: Create mediumtext with default + $mediumtextWithDefault = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/mediumtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'mediumtext_with_default', + 'required' => false, + 'default' => 'Default mediumtext content', + ]); + + $this->assertEquals(202, $mediumtextWithDefault['headers']['status-code']); + + // Test SUCCESS: Create required mediumtext + $mediumtextRequired = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/mediumtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'mediumtext_required', + 'required' => true, + ]); + + $this->assertEquals(202, $mediumtextRequired['headers']['status-code']); + $this->assertEquals(true, $mediumtextRequired['body']['required']); + + // Test SUCCESS: Create mediumtext array + $mediumtextArray = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/mediumtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'mediumtext_array', + 'required' => false, + 'array' => true, + ]); + + $this->assertEquals(202, $mediumtextArray['headers']['status-code']); + $this->assertEquals(true, $mediumtextArray['body']['array']); + + return $data; + } + + /** + * @depends testCreateCollection + */ + public function testCreateLongtextAttribute(array $data): array + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Create longtext attribute + $longtext = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/longtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'longtext_field', + 'required' => false, + ]); + + $this->assertEquals(202, $longtext['headers']['status-code']); + $this->assertEquals('longtext_field', $longtext['body']['key']); + $this->assertEquals('longtext', $longtext['body']['type']); + $this->assertEquals(false, $longtext['body']['required']); + + // Test SUCCESS: Create longtext with default + $longtextWithDefault = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/longtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'longtext_with_default', + 'required' => false, + 'default' => 'Default longtext content for very large text storage', + ]); + + $this->assertEquals(202, $longtextWithDefault['headers']['status-code']); + + // Test SUCCESS: Create required longtext + $longtextRequired = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/longtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'longtext_required', + 'required' => true, + ]); + + $this->assertEquals(202, $longtextRequired['headers']['status-code']); + $this->assertEquals(true, $longtextRequired['body']['required']); + + // Test SUCCESS: Create longtext array + $longtextArray = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/longtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'longtext_array', + 'required' => false, + 'array' => true, + ]); + + $this->assertEquals(202, $longtextArray['headers']['status-code']); + $this->assertEquals(true, $longtextArray['body']['array']); + + return $data; + } + + /** + * @depends testCreateLongtextAttribute + */ + public function testUpdateVarcharAttribute(array $data): array + { + $this->markTestSkipped('Skipped until utopia-php/database updateAttribute supports VARCHAR type'); + + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Wait for attributes to be created + sleep(3); + + // Test SUCCESS: Update varchar default value + $update = $this->client->call(Client::METHOD_PATCH, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar/varchar_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => 'updated default', + ]); + + $this->assertEquals(200, $update['headers']['status-code']); + $this->assertEquals('updated default', $update['body']['default']); + + // Test SUCCESS: Update varchar to make it required (no default) + $updateRequired = $this->client->call(Client::METHOD_PATCH, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar/varchar_field', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => true, + 'default' => null, + ]); + + $this->assertEquals(200, $updateRequired['headers']['status-code']); + $this->assertEquals(true, $updateRequired['body']['required']); + + // Test SUCCESS: Update varchar key (rename) + $updateKey = $this->client->call(Client::METHOD_PATCH, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar/varchar_min', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => null, + 'newKey' => 'varchar_renamed', + ]); + + $this->assertEquals(200, $updateKey['headers']['status-code']); + $this->assertEquals('varchar_renamed', $updateKey['body']['key']); + + return $data; + } + + /** + * @depends testUpdateVarcharAttribute + */ + public function testUpdateTextAttribute(array $data): array + { + $this->markTestSkipped('Skipped until utopia-php/database updateAttribute supports TEXT type'); + + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Update text default value + $update = $this->client->call(Client::METHOD_PATCH, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/text/text_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => 'Updated text default value', + ]); + + $this->assertEquals(200, $update['headers']['status-code']); + $this->assertEquals('Updated text default value', $update['body']['default']); + + return $data; + } + + /** + * @depends testUpdateTextAttribute + */ + public function testUpdateMediumtextAttribute(array $data): array + { + $this->markTestSkipped('Skipped until utopia-php/database updateAttribute supports MEDIUMTEXT type'); + + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Update mediumtext default value + $update = $this->client->call(Client::METHOD_PATCH, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/mediumtext/mediumtext_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => 'Updated mediumtext default', + ]); + + $this->assertEquals(200, $update['headers']['status-code']); + $this->assertEquals('Updated mediumtext default', $update['body']['default']); + + return $data; + } + + /** + * @depends testUpdateMediumtextAttribute + */ + public function testUpdateLongtextAttribute(array $data): array + { + $this->markTestSkipped('Skipped until utopia-php/database updateAttribute supports LONGTEXT type'); + + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Update longtext default value + $update = $this->client->call(Client::METHOD_PATCH, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/longtext/longtext_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => 'Updated longtext default', + ]); + + $this->assertEquals(200, $update['headers']['status-code']); + $this->assertEquals('Updated longtext default', $update['body']['default']); + + return $data; + } + + /** + * @depends testUpdateLongtextAttribute + */ + public function testCreateDocumentWithStringTypes(array $data): array + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Wait for all attributes to be available + sleep(2); + + // Test SUCCESS: Create document with all string types + $document = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/documents', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'documentId' => ID::unique(), + 'data' => [ + 'varchar_field' => 'Test varchar value', + 'varchar_required' => 'Required value', + 'text_field' => 'This is a text field with more content.', + 'text_required' => 'Required text', + 'mediumtext_field' => 'Medium text content here', + 'mediumtext_required' => 'Required mediumtext', + 'longtext_field' => 'Long text content for storing large amounts of data', + 'longtext_required' => 'Required longtext', + 'varchar_array' => ['item1', 'item2', 'item3'], + 'text_array' => ['text item 1', 'text item 2'], + 'mediumtext_array' => ['mediumtext item 1'], + 'longtext_array' => ['longtext item 1', 'longtext item 2'], + ], + 'permissions' => [ + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $document['headers']['status-code']); + $this->assertEquals('Test varchar value', $document['body']['varchar_field']); + $this->assertEquals('Required value', $document['body']['varchar_required']); + $this->assertEquals('This is a text field with more content.', $document['body']['text_field']); + $this->assertEquals('Required text', $document['body']['text_required']); + $this->assertEquals('Medium text content here', $document['body']['mediumtext_field']); + $this->assertEquals('Long text content for storing large amounts of data', $document['body']['longtext_field']); + $this->assertCount(3, $document['body']['varchar_array']); + $this->assertCount(2, $document['body']['text_array']); + + return array_merge($data, ['documentId' => $document['body']['$id']]); + } + + /** + * @depends testCreateDocumentWithStringTypes + */ + public function testCreateDocumentWithDefaultValues(array $data): void + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Create document using default values + $document = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/documents', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'documentId' => ID::unique(), + 'data' => [ + 'varchar_field' => 'Value', + 'varchar_required' => 'Required', + 'text_required' => 'Required text', + 'mediumtext_required' => 'Required mediumtext', + 'longtext_required' => 'Required longtext', + ], + 'permissions' => [ + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $document['headers']['status-code']); + // Check that default values are applied + $this->assertEquals('updated default', $document['body']['varchar_with_default']); + $this->assertEquals('Updated text default value', $document['body']['text_with_default']); + } + + /** + * @depends testCreateDocumentWithStringTypes + */ + public function testCreateDocumentFailures(array $data): void + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test FAILURE: Missing required field + $docMissingRequired = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/documents', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'documentId' => ID::unique(), + 'data' => [ + 'varchar_field' => 'Value', + // Missing varchar_required, text_required, etc. + ], + 'permissions' => [ + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(400, $docMissingRequired['headers']['status-code']); + } + + /** + * @depends testCreateDocumentWithStringTypes + */ + public function testGetVarcharAttribute(array $data): void + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + $attribute = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(200, $attribute['headers']['status-code']); + $this->assertEquals('varchar_with_default', $attribute['body']['key']); + $this->assertEquals('varchar', $attribute['body']['type']); + $this->assertEquals(100, $attribute['body']['size']); + } + + /** + * @depends testCreateDocumentWithStringTypes + */ + public function testGetTextAttribute(array $data): void + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + $attribute = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/text_field', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(200, $attribute['headers']['status-code']); + $this->assertEquals('text_field', $attribute['body']['key']); + $this->assertEquals('text', $attribute['body']['type']); + } + + /** + * @depends testCreateDocumentWithStringTypes + */ + public function testGetMediumtextAttribute(array $data): void + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + $attribute = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/mediumtext_field', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(200, $attribute['headers']['status-code']); + $this->assertEquals('mediumtext_field', $attribute['body']['key']); + $this->assertEquals('mediumtext', $attribute['body']['type']); + } + + /** + * @depends testCreateDocumentWithStringTypes + */ + public function testGetLongtextAttribute(array $data): void + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + $attribute = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/longtext_field', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(200, $attribute['headers']['status-code']); + $this->assertEquals('longtext_field', $attribute['body']['key']); + $this->assertEquals('longtext', $attribute['body']['type']); + } + + /** + * @depends testGetLongtextAttribute + */ + public function testDeleteStringTypeAttributes(array $data): void + { + $databaseId = $data['databaseId']; + $collectionId = $data['collectionId']; + + // Test SUCCESS: Delete varchar attribute + $deleteVarchar = $this->client->call(Client::METHOD_DELETE, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar_max', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(204, $deleteVarchar['headers']['status-code']); + + // Verify deletion + $getDeleted = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes/varchar_max', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(404, $getDeleted['headers']['status-code']); + } +} diff --git a/tests/e2e/Services/Databases/TablesDB/DatabasesStringTypesTest.php b/tests/e2e/Services/Databases/TablesDB/DatabasesStringTypesTest.php new file mode 100644 index 0000000000..b10b8d42b7 --- /dev/null +++ b/tests/e2e/Services/Databases/TablesDB/DatabasesStringTypesTest.php @@ -0,0 +1,786 @@ +client->call(Client::METHOD_POST, '/tablesdb', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'databaseId' => ID::unique(), + 'name' => 'String Types Test Database' + ]); + + $this->assertEquals(201, $database['headers']['status-code']); + self::$databaseId = $database['body']['$id']; + + return ['databaseId' => $database['body']['$id']]; + } + + /** + * @depends testCreateDatabase + */ + public function testCreateTable(array $data): array + { + $table = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $data['databaseId'] . '/tables', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'tableId' => ID::unique(), + 'name' => 'String Types Table', + 'rowSecurity' => true, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $table['headers']['status-code']); + self::$tableId = $table['body']['$id']; + + return [ + 'databaseId' => $data['databaseId'], + 'tableId' => $table['body']['$id'], + ]; + } + + /** + * @depends testCreateTable + */ + public function testCreateVarcharColumn(array $data): array + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Create varchar column with valid size + $varchar = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_field', + 'size' => 255, + 'required' => false, + ]); + + $this->assertEquals(202, $varchar['headers']['status-code']); + $this->assertEquals('varchar_field', $varchar['body']['key']); + $this->assertEquals('varchar', $varchar['body']['type']); + $this->assertEquals(255, $varchar['body']['size']); + $this->assertEquals(false, $varchar['body']['required']); + $this->assertNull($varchar['body']['default']); + + // Test SUCCESS: Create varchar with default value + $varcharWithDefault = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_with_default', + 'size' => 100, + 'required' => false, + 'default' => 'hello world', + ]); + + $this->assertEquals(202, $varcharWithDefault['headers']['status-code']); + $this->assertEquals('hello world', $varcharWithDefault['body']['default']); + + // Test SUCCESS: Create required varchar + $varcharRequired = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_required', + 'size' => 50, + 'required' => true, + ]); + + $this->assertEquals(202, $varcharRequired['headers']['status-code']); + $this->assertEquals(true, $varcharRequired['body']['required']); + + // Test SUCCESS: Create varchar array + $varcharArray = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_array', + 'size' => 64, + 'required' => false, + 'array' => true, + ]); + + $this->assertEquals(202, $varcharArray['headers']['status-code']); + $this->assertEquals(true, $varcharArray['body']['array']); + + // Test SUCCESS: Minimum varchar size (1) + $varcharMin = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_min', + 'size' => 1, + 'required' => false, + ]); + + $this->assertEquals(202, $varcharMin['headers']['status-code']); + $this->assertEquals(1, $varcharMin['body']['size']); + + return $data; + } + + /** + * @depends testCreateTable + */ + public function testCreateVarcharColumnFailures(array $data): void + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test FAILURE: Size 0 + $varcharZero = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_zero', + 'size' => 0, + 'required' => false, + ]); + + $this->assertEquals(400, $varcharZero['headers']['status-code']); + + // Test FAILURE: Negative size + $varcharNegative = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_negative', + 'size' => -10, + 'required' => false, + ]); + + $this->assertEquals(400, $varcharNegative['headers']['status-code']); + + // Test FAILURE: Size exceeds maximum (16382) + $varcharTooLarge = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_too_large', + 'size' => 16382, + 'required' => false, + ]); + + $this->assertEquals(400, $varcharTooLarge['headers']['status-code']); + + // Test FAILURE: Missing size parameter + $varcharNoSize = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_no_size', + 'required' => false, + ]); + + $this->assertEquals(400, $varcharNoSize['headers']['status-code']); + + // Test FAILURE: Default value exceeds size + $varcharDefaultTooLong = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_default_too_long', + 'size' => 5, + 'required' => false, + 'default' => 'this is way too long for the size', + ]); + + $this->assertEquals(400, $varcharDefaultTooLong['headers']['status-code']); + + // Test FAILURE: Duplicate key + $varcharDuplicate = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'varchar_field', // Already exists + 'size' => 100, + 'required' => false, + ]); + + $this->assertEquals(409, $varcharDuplicate['headers']['status-code']); + } + + /** + * @depends testCreateTable + */ + public function testCreateTextColumn(array $data): array + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Create text column + $text = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/text', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'text_field', + 'required' => false, + ]); + + $this->assertEquals(202, $text['headers']['status-code']); + $this->assertEquals('text_field', $text['body']['key']); + $this->assertEquals('text', $text['body']['type']); + $this->assertEquals(false, $text['body']['required']); + + // Test SUCCESS: Create text with default value + $textWithDefault = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/text', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'text_with_default', + 'required' => false, + 'default' => 'This is a longer default text value that can contain more content.', + ]); + + $this->assertEquals(202, $textWithDefault['headers']['status-code']); + $this->assertEquals('This is a longer default text value that can contain more content.', $textWithDefault['body']['default']); + + // Test SUCCESS: Create required text + $textRequired = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/text', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'text_required', + 'required' => true, + ]); + + $this->assertEquals(202, $textRequired['headers']['status-code']); + $this->assertEquals(true, $textRequired['body']['required']); + + // Test SUCCESS: Create text array + $textArray = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/text', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'text_array', + 'required' => false, + 'array' => true, + ]); + + $this->assertEquals(202, $textArray['headers']['status-code']); + $this->assertEquals(true, $textArray['body']['array']); + + return $data; + } + + /** + * @depends testCreateTable + */ + public function testCreateMediumtextColumn(array $data): array + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Create mediumtext column + $mediumtext = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/mediumtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'mediumtext_field', + 'required' => false, + ]); + + $this->assertEquals(202, $mediumtext['headers']['status-code']); + $this->assertEquals('mediumtext_field', $mediumtext['body']['key']); + $this->assertEquals('mediumtext', $mediumtext['body']['type']); + $this->assertEquals(false, $mediumtext['body']['required']); + + // Test SUCCESS: Create mediumtext with default + $mediumtextWithDefault = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/mediumtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'mediumtext_with_default', + 'required' => false, + 'default' => 'Default mediumtext content', + ]); + + $this->assertEquals(202, $mediumtextWithDefault['headers']['status-code']); + + // Test SUCCESS: Create required mediumtext + $mediumtextRequired = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/mediumtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'mediumtext_required', + 'required' => true, + ]); + + $this->assertEquals(202, $mediumtextRequired['headers']['status-code']); + $this->assertEquals(true, $mediumtextRequired['body']['required']); + + // Test SUCCESS: Create mediumtext array + $mediumtextArray = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/mediumtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'mediumtext_array', + 'required' => false, + 'array' => true, + ]); + + $this->assertEquals(202, $mediumtextArray['headers']['status-code']); + $this->assertEquals(true, $mediumtextArray['body']['array']); + + return $data; + } + + /** + * @depends testCreateTable + */ + public function testCreateLongtextColumn(array $data): array + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Create longtext column + $longtext = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/longtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'longtext_field', + 'required' => false, + ]); + + $this->assertEquals(202, $longtext['headers']['status-code']); + $this->assertEquals('longtext_field', $longtext['body']['key']); + $this->assertEquals('longtext', $longtext['body']['type']); + $this->assertEquals(false, $longtext['body']['required']); + + // Test SUCCESS: Create longtext with default + $longtextWithDefault = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/longtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'longtext_with_default', + 'required' => false, + 'default' => 'Default longtext content for very large text storage', + ]); + + $this->assertEquals(202, $longtextWithDefault['headers']['status-code']); + + // Test SUCCESS: Create required longtext + $longtextRequired = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/longtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'longtext_required', + 'required' => true, + ]); + + $this->assertEquals(202, $longtextRequired['headers']['status-code']); + $this->assertEquals(true, $longtextRequired['body']['required']); + + // Test SUCCESS: Create longtext array + $longtextArray = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/longtext', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'key' => 'longtext_array', + 'required' => false, + 'array' => true, + ]); + + $this->assertEquals(202, $longtextArray['headers']['status-code']); + $this->assertEquals(true, $longtextArray['body']['array']); + + return $data; + } + + /** + * @depends testCreateLongtextColumn + */ + public function testUpdateVarcharColumn(array $data): array + { + $this->markTestSkipped('Skipped until utopia-php/database updateAttribute supports VARCHAR type'); + + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Wait for columns to be created + sleep(3); + + // Test SUCCESS: Update varchar default value + $update = $this->client->call(Client::METHOD_PATCH, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar/varchar_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => 'updated default', + ]); + + $this->assertEquals(200, $update['headers']['status-code']); + $this->assertEquals('updated default', $update['body']['default']); + + // Test SUCCESS: Update varchar to make it required (no default) + $updateRequired = $this->client->call(Client::METHOD_PATCH, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar/varchar_field', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => true, + 'default' => null, + ]); + + $this->assertEquals(200, $updateRequired['headers']['status-code']); + $this->assertEquals(true, $updateRequired['body']['required']); + + // Test SUCCESS: Update varchar key (rename) + $updateKey = $this->client->call(Client::METHOD_PATCH, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar/varchar_min', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => null, + 'newKey' => 'varchar_renamed', + ]); + + $this->assertEquals(200, $updateKey['headers']['status-code']); + $this->assertEquals('varchar_renamed', $updateKey['body']['key']); + + return $data; + } + + /** + * @depends testUpdateVarcharColumn + */ + public function testUpdateTextColumn(array $data): array + { + $this->markTestSkipped('Skipped until utopia-php/database updateAttribute supports TEXT type'); + + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Update text default value + $update = $this->client->call(Client::METHOD_PATCH, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/text/text_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => 'Updated text default value', + ]); + + $this->assertEquals(200, $update['headers']['status-code']); + $this->assertEquals('Updated text default value', $update['body']['default']); + + return $data; + } + + /** + * @depends testUpdateTextColumn + */ + public function testUpdateMediumtextColumn(array $data): array + { + $this->markTestSkipped('Skipped until utopia-php/database updateAttribute supports MEDIUMTEXT type'); + + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Update mediumtext default value + $update = $this->client->call(Client::METHOD_PATCH, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/mediumtext/mediumtext_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => 'Updated mediumtext default', + ]); + + $this->assertEquals(200, $update['headers']['status-code']); + $this->assertEquals('Updated mediumtext default', $update['body']['default']); + + return $data; + } + + /** + * @depends testUpdateMediumtextColumn + */ + public function testUpdateLongtextColumn(array $data): array + { + $this->markTestSkipped('Skipped until utopia-php/database updateAttribute supports LONGTEXT type'); + + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Update longtext default value + $update = $this->client->call(Client::METHOD_PATCH, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/longtext/longtext_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'required' => false, + 'default' => 'Updated longtext default', + ]); + + $this->assertEquals(200, $update['headers']['status-code']); + $this->assertEquals('Updated longtext default', $update['body']['default']); + + return $data; + } + + /** + * @depends testUpdateLongtextColumn + */ + public function testCreateRowWithStringTypes(array $data): array + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Wait for all columns to be available + sleep(2); + + // Test SUCCESS: Create row with all string types + $row = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'rowId' => ID::unique(), + 'data' => [ + 'varchar_field' => 'Test varchar value', + 'varchar_required' => 'Required value', + 'text_field' => 'This is a text field with more content.', + 'text_required' => 'Required text', + 'mediumtext_field' => 'Medium text content here', + 'mediumtext_required' => 'Required mediumtext', + 'longtext_field' => 'Long text content for storing large amounts of data', + 'longtext_required' => 'Required longtext', + 'varchar_array' => ['item1', 'item2', 'item3'], + 'text_array' => ['text item 1', 'text item 2'], + 'mediumtext_array' => ['mediumtext item 1'], + 'longtext_array' => ['longtext item 1', 'longtext item 2'], + ], + 'permissions' => [ + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $row['headers']['status-code']); + $this->assertEquals('Test varchar value', $row['body']['varchar_field']); + $this->assertEquals('Required value', $row['body']['varchar_required']); + $this->assertEquals('This is a text field with more content.', $row['body']['text_field']); + $this->assertEquals('Required text', $row['body']['text_required']); + $this->assertEquals('Medium text content here', $row['body']['mediumtext_field']); + $this->assertEquals('Long text content for storing large amounts of data', $row['body']['longtext_field']); + $this->assertCount(3, $row['body']['varchar_array']); + $this->assertCount(2, $row['body']['text_array']); + + return array_merge($data, ['rowId' => $row['body']['$id']]); + } + + /** + * @depends testCreateRowWithStringTypes + */ + public function testCreateRowWithDefaultValues(array $data): void + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Create row using default values + $row = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'rowId' => ID::unique(), + 'data' => [ + 'varchar_field' => 'Value', + 'varchar_required' => 'Required', + 'text_required' => 'Required text', + 'mediumtext_required' => 'Required mediumtext', + 'longtext_required' => 'Required longtext', + ], + 'permissions' => [ + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $row['headers']['status-code']); + // Check that default values are applied + $this->assertEquals('updated default', $row['body']['varchar_with_default']); + $this->assertEquals('Updated text default value', $row['body']['text_with_default']); + } + + /** + * @depends testCreateRowWithStringTypes + */ + public function testCreateRowFailures(array $data): void + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test FAILURE: Missing required field + $rowMissingRequired = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'rowId' => ID::unique(), + 'data' => [ + 'varchar_field' => 'Value', + // Missing varchar_required, text_required, etc. + ], + 'permissions' => [ + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(400, $rowMissingRequired['headers']['status-code']); + } + + /** + * @depends testCreateRowWithStringTypes + */ + public function testGetVarcharColumn(array $data): void + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + $column = $this->client->call(Client::METHOD_GET, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar_with_default', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(200, $column['headers']['status-code']); + $this->assertEquals('varchar_with_default', $column['body']['key']); + $this->assertEquals('varchar', $column['body']['type']); + $this->assertEquals(100, $column['body']['size']); + } + + /** + * @depends testCreateRowWithStringTypes + */ + public function testGetTextColumn(array $data): void + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + $column = $this->client->call(Client::METHOD_GET, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/text_field', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(200, $column['headers']['status-code']); + $this->assertEquals('text_field', $column['body']['key']); + $this->assertEquals('text', $column['body']['type']); + } + + /** + * @depends testCreateRowWithStringTypes + */ + public function testGetMediumtextColumn(array $data): void + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + $column = $this->client->call(Client::METHOD_GET, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/mediumtext_field', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(200, $column['headers']['status-code']); + $this->assertEquals('mediumtext_field', $column['body']['key']); + $this->assertEquals('mediumtext', $column['body']['type']); + } + + /** + * @depends testCreateRowWithStringTypes + */ + public function testGetLongtextColumn(array $data): void + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + $column = $this->client->call(Client::METHOD_GET, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/longtext_field', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(200, $column['headers']['status-code']); + $this->assertEquals('longtext_field', $column['body']['key']); + $this->assertEquals('longtext', $column['body']['type']); + } + + /** + * @depends testGetLongtextColumn + */ + public function testDeleteStringTypeColumns(array $data): void + { + $databaseId = $data['databaseId']; + $tableId = $data['tableId']; + + // Test SUCCESS: Delete varchar column + $deleteVarchar = $this->client->call(Client::METHOD_DELETE, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar_max', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(204, $deleteVarchar['headers']['status-code']); + + // Verify deletion + $getDeleted = $this->client->call(Client::METHOD_GET, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/varchar_max', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]); + + $this->assertEquals(404, $getDeleted['headers']['status-code']); + } +}