diff --git a/app/config/specs/open-api3-latest-client.json b/app/config/specs/open-api3-latest-client.json index 89d010b550..0a38f16346 100644 --- a/app/config/specs/open-api3-latest-client.json +++ b/app/config/specs/open-api3-latest-client.json @@ -4638,6 +4638,112 @@ } } }, + "patch": { + "summary": "Update documents", + "operationId": "databasesUpdateDocuments", + "tags": [ + "databases" + ], + "description": "Update all documents that match your queries, If none are submitted then all documents are updated. Using the patch method you can pass only specific fields that will get updated.", + "responses": { + "200": { + "description": "Documents List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/documentList" + } + } + } + } + }, + "x-appwrite": { + "method": "updateDocuments", + "weight": 113, + "cookies": false, + "type": "", + "deprecated": false, + "demo": "databases\/update-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-documents.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "client", + "server", + "server" + ], + "packaging": false, + "offline-model": "\/databases\/{databaseId}\/collections\/{collectionId}\/documents", + "offline-key": "", + "offline-response-key": "$id", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "x-example": "{}" + }, + "permissions": { + "type": "array", + "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "x-example": "[\"read(\"any\")\"]", + "items": { + "type": "string" + } + }, + "queries": { + "type": "array", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "x-example": null, + "items": { + "type": "string" + } + } + } + } + } + } + } + }, "delete": { "summary": "Delete documents", "operationId": "databasesDeleteDocuments", @@ -4647,12 +4753,19 @@ "description": "Bulk delete documents using queries, if no queries are passed then all documents are deleted.", "responses": { "200": { - "description": "File" + "description": "Documents List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/documentList" + } + } + } } }, "x-appwrite": { "method": "deleteDocuments", - "weight": 114, + "weight": 115, "cookies": false, "type": "", "deprecated": false, @@ -4945,7 +5058,7 @@ }, "x-appwrite": { "method": "deleteDocument", - "weight": 113, + "weight": 114, "cookies": false, "type": "", "deprecated": false, @@ -5031,7 +5144,7 @@ }, "x-appwrite": { "method": "listExecutions", - "weight": 307, + "weight": 308, "cookies": false, "type": "", "deprecated": false, @@ -5119,7 +5232,7 @@ }, "x-appwrite": { "method": "createExecution", - "weight": 306, + "weight": 307, "cookies": false, "type": "", "deprecated": false, @@ -5236,7 +5349,7 @@ }, "x-appwrite": { "method": "getExecution", - "weight": 308, + "weight": 309, "cookies": false, "type": "", "deprecated": false, @@ -5312,7 +5425,7 @@ }, "x-appwrite": { "method": "query", - "weight": 332, + "weight": 333, "cookies": false, "type": "graphql", "deprecated": false, @@ -5366,7 +5479,7 @@ }, "x-appwrite": { "method": "mutation", - "weight": 331, + "weight": 332, "cookies": false, "type": "graphql", "deprecated": false, @@ -5420,7 +5533,7 @@ }, "x-appwrite": { "method": "get", - "weight": 118, + "weight": 119, "cookies": false, "type": "", "deprecated": false, @@ -5474,7 +5587,7 @@ }, "x-appwrite": { "method": "listCodes", - "weight": 119, + "weight": 120, "cookies": false, "type": "", "deprecated": false, @@ -5528,7 +5641,7 @@ }, "x-appwrite": { "method": "listContinents", - "weight": 123, + "weight": 124, "cookies": false, "type": "", "deprecated": false, @@ -5582,7 +5695,7 @@ }, "x-appwrite": { "method": "listCountries", - "weight": 120, + "weight": 121, "cookies": false, "type": "", "deprecated": false, @@ -5636,7 +5749,7 @@ }, "x-appwrite": { "method": "listCountriesEU", - "weight": 121, + "weight": 122, "cookies": false, "type": "", "deprecated": false, @@ -5690,7 +5803,7 @@ }, "x-appwrite": { "method": "listCountriesPhones", - "weight": 122, + "weight": 123, "cookies": false, "type": "", "deprecated": false, @@ -5744,7 +5857,7 @@ }, "x-appwrite": { "method": "listCurrencies", - "weight": 124, + "weight": 125, "cookies": false, "type": "", "deprecated": false, @@ -5798,7 +5911,7 @@ }, "x-appwrite": { "method": "listLanguages", - "weight": 125, + "weight": 126, "cookies": false, "type": "", "deprecated": false, @@ -5852,7 +5965,7 @@ }, "x-appwrite": { "method": "createSubscriber", - "weight": 383, + "weight": 384, "cookies": false, "type": "", "deprecated": false, @@ -5937,7 +6050,7 @@ }, "x-appwrite": { "method": "deleteSubscriber", - "weight": 387, + "weight": 388, "cookies": false, "type": "", "deprecated": false, @@ -6014,7 +6127,7 @@ }, "x-appwrite": { "method": "listFiles", - "weight": 209, + "weight": 210, "cookies": false, "type": "", "deprecated": false, @@ -6102,7 +6215,7 @@ }, "x-appwrite": { "method": "createFile", - "weight": 208, + "weight": 209, "cookies": false, "type": "upload", "deprecated": false, @@ -6202,7 +6315,7 @@ }, "x-appwrite": { "method": "getFile", - "weight": 210, + "weight": 211, "cookies": false, "type": "", "deprecated": false, @@ -6276,7 +6389,7 @@ }, "x-appwrite": { "method": "updateFile", - "weight": 215, + "weight": 216, "cookies": false, "type": "", "deprecated": false, @@ -6367,7 +6480,7 @@ }, "x-appwrite": { "method": "deleteFile", - "weight": 216, + "weight": 217, "cookies": false, "type": "", "deprecated": false, @@ -6436,7 +6549,7 @@ }, "x-appwrite": { "method": "getFileDownload", - "weight": 212, + "weight": 213, "cookies": false, "type": "location", "deprecated": false, @@ -6505,7 +6618,7 @@ }, "x-appwrite": { "method": "getFilePreview", - "weight": 211, + "weight": 212, "cookies": false, "type": "location", "deprecated": false, @@ -6723,7 +6836,7 @@ }, "x-appwrite": { "method": "getFileView", - "weight": 213, + "weight": 214, "cookies": false, "type": "location", "deprecated": false, @@ -6799,7 +6912,7 @@ }, "x-appwrite": { "method": "list", - "weight": 220, + "weight": 221, "cookies": false, "type": "", "deprecated": false, @@ -6877,7 +6990,7 @@ }, "x-appwrite": { "method": "create", - "weight": 219, + "weight": 220, "cookies": false, "type": "", "deprecated": false, @@ -6964,7 +7077,7 @@ }, "x-appwrite": { "method": "get", - "weight": 221, + "weight": 222, "cookies": false, "type": "", "deprecated": false, @@ -7028,7 +7141,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 223, + "weight": 224, "cookies": false, "type": "", "deprecated": false, @@ -7104,7 +7217,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 225, + "weight": 226, "cookies": false, "type": "", "deprecated": false, @@ -7170,7 +7283,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 227, + "weight": 228, "cookies": false, "type": "", "deprecated": false, @@ -7258,7 +7371,7 @@ }, "x-appwrite": { "method": "createMembership", - "weight": 226, + "weight": 227, "cookies": false, "type": "", "deprecated": false, @@ -7371,7 +7484,7 @@ }, "x-appwrite": { "method": "getMembership", - "weight": 228, + "weight": 229, "cookies": false, "type": "", "deprecated": false, @@ -7445,7 +7558,7 @@ }, "x-appwrite": { "method": "updateMembership", - "weight": 229, + "weight": 230, "cookies": false, "type": "", "deprecated": false, @@ -7534,7 +7647,7 @@ }, "x-appwrite": { "method": "deleteMembership", - "weight": 231, + "weight": 232, "cookies": false, "type": "", "deprecated": false, @@ -7610,7 +7723,7 @@ }, "x-appwrite": { "method": "updateMembershipStatus", - "weight": 230, + "weight": 231, "cookies": false, "type": "", "deprecated": false, @@ -7710,7 +7823,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 222, + "weight": 223, "cookies": false, "type": "", "deprecated": false, @@ -7773,7 +7886,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 224, + "weight": 225, "cookies": false, "type": "", "deprecated": false, diff --git a/app/config/specs/open-api3-latest-console.json b/app/config/specs/open-api3-latest-console.json index 78e8f8747a..00ac994446 100644 --- a/app/config/specs/open-api3-latest-console.json +++ b/app/config/specs/open-api3-latest-console.json @@ -4465,7 +4465,7 @@ }, "x-appwrite": { "method": "chat", - "weight": 334, + "weight": 335, "cookies": false, "type": "", "deprecated": false, @@ -4534,7 +4534,7 @@ }, "x-appwrite": { "method": "variables", - "weight": 333, + "weight": 334, "cookies": false, "type": "", "deprecated": false, @@ -4740,7 +4740,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 115, + "weight": 116, "cookies": false, "type": "", "deprecated": false, @@ -8207,6 +8207,112 @@ } } }, + "patch": { + "summary": "Update documents", + "operationId": "databasesUpdateDocuments", + "tags": [ + "databases" + ], + "description": "Update all documents that match your queries, If none are submitted then all documents are updated. Using the patch method you can pass only specific fields that will get updated.", + "responses": { + "200": { + "description": "Documents List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/documentList" + } + } + } + } + }, + "x-appwrite": { + "method": "updateDocuments", + "weight": 113, + "cookies": false, + "type": "", + "deprecated": false, + "demo": "databases\/update-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-documents.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "client", + "server", + "server" + ], + "packaging": false, + "offline-model": "\/databases\/{databaseId}\/collections\/{collectionId}\/documents", + "offline-key": "", + "offline-response-key": "$id", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "x-example": "{}" + }, + "permissions": { + "type": "array", + "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "x-example": "[\"read(\"any\")\"]", + "items": { + "type": "string" + } + }, + "queries": { + "type": "array", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "x-example": null, + "items": { + "type": "string" + } + } + } + } + } + } + } + }, "delete": { "summary": "Delete documents", "operationId": "databasesDeleteDocuments", @@ -8216,12 +8322,19 @@ "description": "Bulk delete documents using queries, if no queries are passed then all documents are deleted.", "responses": { "200": { - "description": "File" + "description": "Documents List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/documentList" + } + } + } } }, "x-appwrite": { "method": "deleteDocuments", - "weight": 114, + "weight": 115, "cookies": false, "type": "", "deprecated": false, @@ -8514,7 +8627,7 @@ }, "x-appwrite": { "method": "deleteDocument", - "weight": 113, + "weight": 114, "cookies": false, "type": "", "deprecated": false, @@ -9141,7 +9254,7 @@ }, "x-appwrite": { "method": "getCollectionUsage", - "weight": 117, + "weight": 118, "cookies": false, "type": "", "deprecated": false, @@ -9310,7 +9423,7 @@ }, "x-appwrite": { "method": "getDatabaseUsage", - "weight": 116, + "weight": 117, "cookies": false, "type": "", "deprecated": false, @@ -9394,7 +9507,7 @@ }, "x-appwrite": { "method": "list", - "weight": 290, + "weight": 291, "cookies": false, "type": "", "deprecated": false, @@ -9469,7 +9582,7 @@ }, "x-appwrite": { "method": "create", - "weight": 289, + "weight": 290, "cookies": false, "type": "", "deprecated": false, @@ -9574,7 +9687,8 @@ "bun-1.0", "bun-1.1", "go-1.23", - "static-1" + "static-1", + "flutter-3.24" ], "x-enum-name": null, "x-enum-keys": [] @@ -9717,7 +9831,7 @@ }, "x-appwrite": { "method": "listRuntimes", - "weight": 291, + "weight": 292, "cookies": false, "type": "", "deprecated": false, @@ -9768,7 +9882,7 @@ }, "x-appwrite": { "method": "listSpecifications", - "weight": 292, + "weight": 293, "cookies": false, "type": "", "deprecated": false, @@ -9820,7 +9934,7 @@ }, "x-appwrite": { "method": "listTemplates", - "weight": 315, + "weight": 316, "cookies": false, "type": "", "deprecated": false, @@ -9922,7 +10036,7 @@ }, "x-appwrite": { "method": "getTemplate", - "weight": 316, + "weight": 317, "cookies": false, "type": "", "deprecated": false, @@ -9984,7 +10098,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 295, + "weight": 296, "cookies": false, "type": "", "deprecated": false, @@ -10058,7 +10172,7 @@ }, "x-appwrite": { "method": "get", - "weight": 293, + "weight": 294, "cookies": false, "type": "", "deprecated": false, @@ -10119,7 +10233,7 @@ }, "x-appwrite": { "method": "update", - "weight": 296, + "weight": 297, "cookies": false, "type": "", "deprecated": false, @@ -10231,7 +10345,8 @@ "bun-1.0", "bun-1.1", "go-1.23", - "static-1" + "static-1", + "flutter-3.24" ], "x-enum-name": null, "x-enum-keys": [] @@ -10344,7 +10459,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 299, + "weight": 300, "cookies": false, "type": "", "deprecated": false, @@ -10407,7 +10522,7 @@ }, "x-appwrite": { "method": "listDeployments", - "weight": 301, + "weight": 302, "cookies": false, "type": "", "deprecated": false, @@ -10492,7 +10607,7 @@ }, "x-appwrite": { "method": "createDeployment", - "weight": 300, + "weight": 301, "cookies": false, "type": "upload", "deprecated": false, @@ -10590,7 +10705,7 @@ }, "x-appwrite": { "method": "getDeployment", - "weight": 302, + "weight": 303, "cookies": false, "type": "", "deprecated": false, @@ -10661,7 +10776,7 @@ }, "x-appwrite": { "method": "updateDeployment", - "weight": 298, + "weight": 299, "cookies": false, "type": "", "deprecated": false, @@ -10725,7 +10840,7 @@ }, "x-appwrite": { "method": "deleteDeployment", - "weight": 303, + "weight": 304, "cookies": false, "type": "", "deprecated": false, @@ -10791,7 +10906,7 @@ }, "x-appwrite": { "method": "createBuild", - "weight": 304, + "weight": 305, "cookies": false, "type": "", "deprecated": false, @@ -10878,7 +10993,7 @@ }, "x-appwrite": { "method": "updateDeploymentBuild", - "weight": 305, + "weight": 306, "cookies": false, "type": "", "deprecated": false, @@ -10944,7 +11059,7 @@ }, "x-appwrite": { "method": "getDeploymentDownload", - "weight": 297, + "weight": 298, "cookies": false, "type": "location", "deprecated": false, @@ -11019,7 +11134,7 @@ }, "x-appwrite": { "method": "listExecutions", - "weight": 307, + "weight": 308, "cookies": false, "type": "", "deprecated": false, @@ -11107,7 +11222,7 @@ }, "x-appwrite": { "method": "createExecution", - "weight": 306, + "weight": 307, "cookies": false, "type": "", "deprecated": false, @@ -11224,7 +11339,7 @@ }, "x-appwrite": { "method": "getExecution", - "weight": 308, + "weight": 309, "cookies": false, "type": "", "deprecated": false, @@ -11291,7 +11406,7 @@ }, "x-appwrite": { "method": "deleteExecution", - "weight": 309, + "weight": 310, "cookies": false, "type": "", "deprecated": false, @@ -11364,7 +11479,7 @@ }, "x-appwrite": { "method": "getFunctionUsage", - "weight": 294, + "weight": 295, "cookies": false, "type": "", "deprecated": false, @@ -11448,7 +11563,7 @@ }, "x-appwrite": { "method": "listVariables", - "weight": 311, + "weight": 312, "cookies": false, "type": "", "deprecated": false, @@ -11509,7 +11624,7 @@ }, "x-appwrite": { "method": "createVariable", - "weight": 310, + "weight": 311, "cookies": false, "type": "", "deprecated": false, @@ -11597,7 +11712,7 @@ }, "x-appwrite": { "method": "getVariable", - "weight": 312, + "weight": 313, "cookies": false, "type": "", "deprecated": false, @@ -11668,7 +11783,7 @@ }, "x-appwrite": { "method": "updateVariable", - "weight": 313, + "weight": 314, "cookies": false, "type": "", "deprecated": false, @@ -11756,7 +11871,7 @@ }, "x-appwrite": { "method": "deleteVariable", - "weight": 314, + "weight": 315, "cookies": false, "type": "", "deprecated": false, @@ -11829,7 +11944,7 @@ }, "x-appwrite": { "method": "query", - "weight": 332, + "weight": 333, "cookies": false, "type": "graphql", "deprecated": false, @@ -11883,7 +11998,7 @@ }, "x-appwrite": { "method": "mutation", - "weight": 331, + "weight": 332, "cookies": false, "type": "graphql", "deprecated": false, @@ -11937,7 +12052,7 @@ }, "x-appwrite": { "method": "get", - "weight": 126, + "weight": 127, "cookies": false, "type": "", "deprecated": false, @@ -11988,7 +12103,7 @@ }, "x-appwrite": { "method": "getAntivirus", - "weight": 148, + "weight": 149, "cookies": false, "type": "", "deprecated": false, @@ -12039,7 +12154,7 @@ }, "x-appwrite": { "method": "getCache", - "weight": 129, + "weight": 130, "cookies": false, "type": "", "deprecated": false, @@ -12090,7 +12205,7 @@ }, "x-appwrite": { "method": "getCertificate", - "weight": 135, + "weight": 136, "cookies": false, "type": "", "deprecated": false, @@ -12152,7 +12267,7 @@ }, "x-appwrite": { "method": "getDB", - "weight": 128, + "weight": 129, "cookies": false, "type": "", "deprecated": false, @@ -12203,7 +12318,7 @@ }, "x-appwrite": { "method": "getPubSub", - "weight": 131, + "weight": 132, "cookies": false, "type": "", "deprecated": false, @@ -12254,7 +12369,7 @@ }, "x-appwrite": { "method": "getQueue", - "weight": 130, + "weight": 131, "cookies": false, "type": "", "deprecated": false, @@ -12305,7 +12420,7 @@ }, "x-appwrite": { "method": "getQueueBuilds", - "weight": 137, + "weight": 138, "cookies": false, "type": "", "deprecated": false, @@ -12369,7 +12484,7 @@ }, "x-appwrite": { "method": "getQueueCertificates", - "weight": 136, + "weight": 137, "cookies": false, "type": "", "deprecated": false, @@ -12433,7 +12548,7 @@ }, "x-appwrite": { "method": "getQueueDatabases", - "weight": 138, + "weight": 139, "cookies": false, "type": "", "deprecated": false, @@ -12508,7 +12623,7 @@ }, "x-appwrite": { "method": "getQueueDeletes", - "weight": 139, + "weight": 140, "cookies": false, "type": "", "deprecated": false, @@ -12572,7 +12687,7 @@ }, "x-appwrite": { "method": "getFailedJobs", - "weight": 149, + "weight": 150, "cookies": false, "type": "", "deprecated": false, @@ -12662,7 +12777,7 @@ }, "x-appwrite": { "method": "getQueueFunctions", - "weight": 143, + "weight": 144, "cookies": false, "type": "", "deprecated": false, @@ -12726,7 +12841,7 @@ }, "x-appwrite": { "method": "getQueueLogs", - "weight": 134, + "weight": 135, "cookies": false, "type": "", "deprecated": false, @@ -12790,7 +12905,7 @@ }, "x-appwrite": { "method": "getQueueMails", - "weight": 140, + "weight": 141, "cookies": false, "type": "", "deprecated": false, @@ -12854,7 +12969,7 @@ }, "x-appwrite": { "method": "getQueueMessaging", - "weight": 141, + "weight": 142, "cookies": false, "type": "", "deprecated": false, @@ -12918,7 +13033,7 @@ }, "x-appwrite": { "method": "getQueueMigrations", - "weight": 142, + "weight": 143, "cookies": false, "type": "", "deprecated": false, @@ -12982,7 +13097,7 @@ }, "x-appwrite": { "method": "getQueueUsage", - "weight": 144, + "weight": 145, "cookies": false, "type": "", "deprecated": false, @@ -13046,7 +13161,7 @@ }, "x-appwrite": { "method": "getQueueUsageDump", - "weight": 145, + "weight": 146, "cookies": false, "type": "", "deprecated": false, @@ -13110,7 +13225,7 @@ }, "x-appwrite": { "method": "getQueueWebhooks", - "weight": 133, + "weight": 134, "cookies": false, "type": "", "deprecated": false, @@ -13174,7 +13289,7 @@ }, "x-appwrite": { "method": "getStorage", - "weight": 147, + "weight": 148, "cookies": false, "type": "", "deprecated": false, @@ -13225,7 +13340,7 @@ }, "x-appwrite": { "method": "getStorageLocal", - "weight": 146, + "weight": 147, "cookies": false, "type": "", "deprecated": false, @@ -13276,7 +13391,7 @@ }, "x-appwrite": { "method": "getTime", - "weight": 132, + "weight": 133, "cookies": false, "type": "", "deprecated": false, @@ -13327,7 +13442,7 @@ }, "x-appwrite": { "method": "get", - "weight": 118, + "weight": 119, "cookies": false, "type": "", "deprecated": false, @@ -13381,7 +13496,7 @@ }, "x-appwrite": { "method": "listCodes", - "weight": 119, + "weight": 120, "cookies": false, "type": "", "deprecated": false, @@ -13435,7 +13550,7 @@ }, "x-appwrite": { "method": "listContinents", - "weight": 123, + "weight": 124, "cookies": false, "type": "", "deprecated": false, @@ -13489,7 +13604,7 @@ }, "x-appwrite": { "method": "listCountries", - "weight": 120, + "weight": 121, "cookies": false, "type": "", "deprecated": false, @@ -13543,7 +13658,7 @@ }, "x-appwrite": { "method": "listCountriesEU", - "weight": 121, + "weight": 122, "cookies": false, "type": "", "deprecated": false, @@ -13597,7 +13712,7 @@ }, "x-appwrite": { "method": "listCountriesPhones", - "weight": 122, + "weight": 123, "cookies": false, "type": "", "deprecated": false, @@ -13651,7 +13766,7 @@ }, "x-appwrite": { "method": "listCurrencies", - "weight": 124, + "weight": 125, "cookies": false, "type": "", "deprecated": false, @@ -13705,7 +13820,7 @@ }, "x-appwrite": { "method": "listLanguages", - "weight": 125, + "weight": 126, "cookies": false, "type": "", "deprecated": false, @@ -13759,7 +13874,7 @@ }, "x-appwrite": { "method": "listMessages", - "weight": 391, + "weight": 392, "cookies": false, "type": "", "deprecated": false, @@ -13837,7 +13952,7 @@ }, "x-appwrite": { "method": "createEmail", - "weight": 388, + "weight": 389, "cookies": false, "type": "", "deprecated": false, @@ -13983,7 +14098,7 @@ }, "x-appwrite": { "method": "updateEmail", - "weight": 395, + "weight": 396, "cookies": false, "type": "", "deprecated": false, @@ -14131,7 +14246,7 @@ }, "x-appwrite": { "method": "createPush", - "weight": 390, + "weight": 391, "cookies": false, "type": "", "deprecated": false, @@ -14288,7 +14403,7 @@ }, "x-appwrite": { "method": "updatePush", - "weight": 397, + "weight": 398, "cookies": false, "type": "", "deprecated": false, @@ -14447,7 +14562,7 @@ }, "x-appwrite": { "method": "createSms", - "weight": 389, + "weight": 390, "cookies": false, "type": "", "deprecated": false, @@ -14558,7 +14673,7 @@ }, "x-appwrite": { "method": "updateSms", - "weight": 396, + "weight": 397, "cookies": false, "type": "", "deprecated": false, @@ -14672,7 +14787,7 @@ }, "x-appwrite": { "method": "getMessage", - "weight": 394, + "weight": 395, "cookies": false, "type": "", "deprecated": false, @@ -14727,7 +14842,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 398, + "weight": 399, "cookies": false, "type": "", "deprecated": false, @@ -14791,7 +14906,7 @@ }, "x-appwrite": { "method": "listMessageLogs", - "weight": 392, + "weight": 393, "cookies": false, "type": "", "deprecated": false, @@ -14868,7 +14983,7 @@ }, "x-appwrite": { "method": "listTargets", - "weight": 393, + "weight": 394, "cookies": false, "type": "", "deprecated": false, @@ -14945,7 +15060,7 @@ }, "x-appwrite": { "method": "listProviders", - "weight": 363, + "weight": 364, "cookies": false, "type": "", "deprecated": false, @@ -15023,7 +15138,7 @@ }, "x-appwrite": { "method": "createApnsProvider", - "weight": 362, + "weight": 363, "cookies": false, "type": "", "deprecated": false, @@ -15130,7 +15245,7 @@ }, "x-appwrite": { "method": "updateApnsProvider", - "weight": 375, + "weight": 376, "cookies": false, "type": "", "deprecated": false, @@ -15240,7 +15355,7 @@ }, "x-appwrite": { "method": "createFcmProvider", - "weight": 361, + "weight": 362, "cookies": false, "type": "", "deprecated": false, @@ -15327,7 +15442,7 @@ }, "x-appwrite": { "method": "updateFcmProvider", - "weight": 374, + "weight": 375, "cookies": false, "type": "", "deprecated": false, @@ -15417,7 +15532,7 @@ }, "x-appwrite": { "method": "createMailgunProvider", - "weight": 353, + "weight": 354, "cookies": false, "type": "", "deprecated": false, @@ -15534,7 +15649,7 @@ }, "x-appwrite": { "method": "updateMailgunProvider", - "weight": 366, + "weight": 367, "cookies": false, "type": "", "deprecated": false, @@ -15654,7 +15769,7 @@ }, "x-appwrite": { "method": "createMsg91Provider", - "weight": 356, + "weight": 357, "cookies": false, "type": "", "deprecated": false, @@ -15751,7 +15866,7 @@ }, "x-appwrite": { "method": "updateMsg91Provider", - "weight": 369, + "weight": 370, "cookies": false, "type": "", "deprecated": false, @@ -15851,7 +15966,7 @@ }, "x-appwrite": { "method": "createSendgridProvider", - "weight": 354, + "weight": 355, "cookies": false, "type": "", "deprecated": false, @@ -15958,7 +16073,7 @@ }, "x-appwrite": { "method": "updateSendgridProvider", - "weight": 367, + "weight": 368, "cookies": false, "type": "", "deprecated": false, @@ -16068,7 +16183,7 @@ }, "x-appwrite": { "method": "createSmtpProvider", - "weight": 355, + "weight": 356, "cookies": false, "type": "", "deprecated": false, @@ -16213,7 +16328,7 @@ }, "x-appwrite": { "method": "updateSmtpProvider", - "weight": 368, + "weight": 369, "cookies": false, "type": "", "deprecated": false, @@ -16360,7 +16475,7 @@ }, "x-appwrite": { "method": "createTelesignProvider", - "weight": 357, + "weight": 358, "cookies": false, "type": "", "deprecated": false, @@ -16457,7 +16572,7 @@ }, "x-appwrite": { "method": "updateTelesignProvider", - "weight": 370, + "weight": 371, "cookies": false, "type": "", "deprecated": false, @@ -16557,7 +16672,7 @@ }, "x-appwrite": { "method": "createTextmagicProvider", - "weight": 358, + "weight": 359, "cookies": false, "type": "", "deprecated": false, @@ -16654,7 +16769,7 @@ }, "x-appwrite": { "method": "updateTextmagicProvider", - "weight": 371, + "weight": 372, "cookies": false, "type": "", "deprecated": false, @@ -16754,7 +16869,7 @@ }, "x-appwrite": { "method": "createTwilioProvider", - "weight": 359, + "weight": 360, "cookies": false, "type": "", "deprecated": false, @@ -16851,7 +16966,7 @@ }, "x-appwrite": { "method": "updateTwilioProvider", - "weight": 372, + "weight": 373, "cookies": false, "type": "", "deprecated": false, @@ -16951,7 +17066,7 @@ }, "x-appwrite": { "method": "createVonageProvider", - "weight": 360, + "weight": 361, "cookies": false, "type": "", "deprecated": false, @@ -17048,7 +17163,7 @@ }, "x-appwrite": { "method": "updateVonageProvider", - "weight": 373, + "weight": 374, "cookies": false, "type": "", "deprecated": false, @@ -17148,7 +17263,7 @@ }, "x-appwrite": { "method": "getProvider", - "weight": 365, + "weight": 366, "cookies": false, "type": "", "deprecated": false, @@ -17203,7 +17318,7 @@ }, "x-appwrite": { "method": "deleteProvider", - "weight": 376, + "weight": 377, "cookies": false, "type": "", "deprecated": false, @@ -17267,7 +17382,7 @@ }, "x-appwrite": { "method": "listProviderLogs", - "weight": 364, + "weight": 365, "cookies": false, "type": "", "deprecated": false, @@ -17344,7 +17459,7 @@ }, "x-appwrite": { "method": "listSubscriberLogs", - "weight": 385, + "weight": 386, "cookies": false, "type": "", "deprecated": false, @@ -17421,7 +17536,7 @@ }, "x-appwrite": { "method": "listTopics", - "weight": 378, + "weight": 379, "cookies": false, "type": "", "deprecated": false, @@ -17497,7 +17612,7 @@ }, "x-appwrite": { "method": "createTopic", - "weight": 377, + "weight": 378, "cookies": false, "type": "", "deprecated": false, @@ -17582,7 +17697,7 @@ }, "x-appwrite": { "method": "getTopic", - "weight": 380, + "weight": 381, "cookies": false, "type": "", "deprecated": false, @@ -17644,7 +17759,7 @@ }, "x-appwrite": { "method": "updateTopic", - "weight": 381, + "weight": 382, "cookies": false, "type": "", "deprecated": false, @@ -17723,7 +17838,7 @@ }, "x-appwrite": { "method": "deleteTopic", - "weight": 382, + "weight": 383, "cookies": false, "type": "", "deprecated": false, @@ -17787,7 +17902,7 @@ }, "x-appwrite": { "method": "listTopicLogs", - "weight": 379, + "weight": 380, "cookies": false, "type": "", "deprecated": false, @@ -17864,7 +17979,7 @@ }, "x-appwrite": { "method": "listSubscribers", - "weight": 384, + "weight": 385, "cookies": false, "type": "", "deprecated": false, @@ -17950,7 +18065,7 @@ }, "x-appwrite": { "method": "createSubscriber", - "weight": 383, + "weight": 384, "cookies": false, "type": "", "deprecated": false, @@ -18042,7 +18157,7 @@ }, "x-appwrite": { "method": "getSubscriber", - "weight": 386, + "weight": 387, "cookies": false, "type": "", "deprecated": false, @@ -18107,7 +18222,7 @@ }, "x-appwrite": { "method": "deleteSubscriber", - "weight": 387, + "weight": 388, "cookies": false, "type": "", "deprecated": false, @@ -18184,7 +18299,7 @@ }, "x-appwrite": { "method": "list", - "weight": 340, + "weight": 341, "cookies": false, "type": "", "deprecated": false, @@ -18260,7 +18375,7 @@ }, "x-appwrite": { "method": "createAppwriteMigration", - "weight": 335, + "weight": 336, "cookies": false, "type": "", "deprecated": false, @@ -18350,7 +18465,7 @@ }, "x-appwrite": { "method": "getAppwriteReport", - "weight": 342, + "weight": 343, "cookies": false, "type": "", "deprecated": false, @@ -18445,7 +18560,7 @@ }, "x-appwrite": { "method": "createFirebaseMigration", - "weight": 337, + "weight": 338, "cookies": false, "type": "", "deprecated": false, @@ -18516,7 +18631,7 @@ }, "x-appwrite": { "method": "deleteFirebaseAuth", - "weight": 348, + "weight": 349, "cookies": false, "type": "", "deprecated": false, @@ -18566,7 +18681,7 @@ }, "x-appwrite": { "method": "createFirebaseOAuthMigration", - "weight": 336, + "weight": 337, "cookies": false, "type": "", "deprecated": false, @@ -18644,7 +18759,7 @@ }, "x-appwrite": { "method": "listFirebaseProjects", - "weight": 347, + "weight": 348, "cookies": false, "type": "", "deprecated": false, @@ -18694,7 +18809,7 @@ }, "x-appwrite": { "method": "getFirebaseReport", - "weight": 343, + "weight": 344, "cookies": false, "type": "", "deprecated": false, @@ -18768,7 +18883,7 @@ }, "x-appwrite": { "method": "getFirebaseReportOAuth", - "weight": 344, + "weight": 345, "cookies": false, "type": "", "deprecated": false, @@ -18842,7 +18957,7 @@ }, "x-appwrite": { "method": "createNHostMigration", - "weight": 339, + "weight": 340, "cookies": false, "type": "", "deprecated": false, @@ -18955,7 +19070,7 @@ }, "x-appwrite": { "method": "getNHostReport", - "weight": 350, + "weight": 351, "cookies": false, "type": "", "deprecated": false, @@ -19090,7 +19205,7 @@ }, "x-appwrite": { "method": "createSupabaseMigration", - "weight": 338, + "weight": 339, "cookies": false, "type": "", "deprecated": false, @@ -19197,7 +19312,7 @@ }, "x-appwrite": { "method": "getSupabaseReport", - "weight": 349, + "weight": 350, "cookies": false, "type": "", "deprecated": false, @@ -19323,7 +19438,7 @@ }, "x-appwrite": { "method": "get", - "weight": 341, + "weight": 342, "cookies": false, "type": "", "deprecated": false, @@ -19383,7 +19498,7 @@ }, "x-appwrite": { "method": "retry", - "weight": 351, + "weight": 352, "cookies": false, "type": "", "deprecated": false, @@ -19436,7 +19551,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 352, + "weight": 353, "cookies": false, "type": "", "deprecated": false, @@ -19498,7 +19613,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 197, + "weight": 198, "cookies": false, "type": "", "deprecated": false, @@ -19588,7 +19703,7 @@ }, "x-appwrite": { "method": "listVariables", - "weight": 199, + "weight": 200, "cookies": false, "type": "", "deprecated": false, @@ -19636,7 +19751,7 @@ }, "x-appwrite": { "method": "createVariable", - "weight": 198, + "weight": 199, "cookies": false, "type": "", "deprecated": false, @@ -19711,7 +19826,7 @@ }, "x-appwrite": { "method": "getVariable", - "weight": 200, + "weight": 201, "cookies": false, "type": "", "deprecated": false, @@ -19771,7 +19886,7 @@ }, "x-appwrite": { "method": "updateVariable", - "weight": 201, + "weight": 202, "cookies": false, "type": "", "deprecated": false, @@ -19848,7 +19963,7 @@ }, "x-appwrite": { "method": "deleteVariable", - "weight": 202, + "weight": 203, "cookies": false, "type": "", "deprecated": false, @@ -19910,7 +20025,7 @@ }, "x-appwrite": { "method": "list", - "weight": 152, + "weight": 153, "cookies": false, "type": "", "deprecated": false, @@ -19984,7 +20099,7 @@ }, "x-appwrite": { "method": "create", - "weight": 151, + "weight": 152, "cookies": false, "type": "", "deprecated": false, @@ -20121,7 +20236,7 @@ }, "x-appwrite": { "method": "get", - "weight": 153, + "weight": 154, "cookies": false, "type": "", "deprecated": false, @@ -20181,7 +20296,7 @@ }, "x-appwrite": { "method": "update", - "weight": 154, + "weight": 155, "cookies": false, "type": "", "deprecated": false, @@ -20298,7 +20413,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 171, + "weight": 172, "cookies": false, "type": "", "deprecated": false, @@ -20360,7 +20475,7 @@ }, "x-appwrite": { "method": "updateApiStatus", - "weight": 158, + "weight": 159, "cookies": false, "type": "", "deprecated": false, @@ -20454,7 +20569,7 @@ }, "x-appwrite": { "method": "updateApiStatusAll", - "weight": 159, + "weight": 160, "cookies": false, "type": "", "deprecated": false, @@ -20535,7 +20650,7 @@ }, "x-appwrite": { "method": "updateAuthDuration", - "weight": 164, + "weight": 165, "cookies": false, "type": "", "deprecated": false, @@ -20616,7 +20731,7 @@ }, "x-appwrite": { "method": "updateAuthLimit", - "weight": 163, + "weight": 164, "cookies": false, "type": "", "deprecated": false, @@ -20697,7 +20812,7 @@ }, "x-appwrite": { "method": "updateAuthSessionsLimit", - "weight": 169, + "weight": 170, "cookies": false, "type": "", "deprecated": false, @@ -20778,7 +20893,7 @@ }, "x-appwrite": { "method": "updateMembershipsPrivacy", - "weight": 162, + "weight": 163, "cookies": false, "type": "", "deprecated": false, @@ -20871,7 +20986,7 @@ }, "x-appwrite": { "method": "updateMockNumbers", - "weight": 170, + "weight": 171, "cookies": false, "type": "", "deprecated": false, @@ -20955,7 +21070,7 @@ }, "x-appwrite": { "method": "updateAuthPasswordDictionary", - "weight": 167, + "weight": 168, "cookies": false, "type": "", "deprecated": false, @@ -21036,7 +21151,7 @@ }, "x-appwrite": { "method": "updateAuthPasswordHistory", - "weight": 166, + "weight": 167, "cookies": false, "type": "", "deprecated": false, @@ -21117,7 +21232,7 @@ }, "x-appwrite": { "method": "updatePersonalDataCheck", - "weight": 168, + "weight": 169, "cookies": false, "type": "", "deprecated": false, @@ -21198,7 +21313,7 @@ }, "x-appwrite": { "method": "updateSessionAlerts", - "weight": 161, + "weight": 162, "cookies": false, "type": "", "deprecated": false, @@ -21279,7 +21394,7 @@ }, "x-appwrite": { "method": "updateAuthStatus", - "weight": 165, + "weight": 166, "cookies": false, "type": "", "deprecated": false, @@ -21381,7 +21496,7 @@ }, "x-appwrite": { "method": "createJWT", - "weight": 183, + "weight": 184, "cookies": false, "type": "", "deprecated": false, @@ -21470,7 +21585,7 @@ }, "x-appwrite": { "method": "listKeys", - "weight": 179, + "weight": 180, "cookies": false, "type": "", "deprecated": false, @@ -21530,7 +21645,7 @@ }, "x-appwrite": { "method": "createKey", - "weight": 178, + "weight": 179, "cookies": false, "type": "", "deprecated": false, @@ -21625,7 +21740,7 @@ }, "x-appwrite": { "method": "getKey", - "weight": 180, + "weight": 181, "cookies": false, "type": "", "deprecated": false, @@ -21695,7 +21810,7 @@ }, "x-appwrite": { "method": "updateKey", - "weight": 181, + "weight": 182, "cookies": false, "type": "", "deprecated": false, @@ -21791,7 +21906,7 @@ }, "x-appwrite": { "method": "deleteKey", - "weight": 182, + "weight": 183, "cookies": false, "type": "", "deprecated": false, @@ -21863,7 +21978,7 @@ }, "x-appwrite": { "method": "updateOAuth2", - "weight": 160, + "weight": 161, "cookies": false, "type": "", "deprecated": false, @@ -22002,7 +22117,7 @@ }, "x-appwrite": { "method": "listPlatforms", - "weight": 185, + "weight": 186, "cookies": false, "type": "", "deprecated": false, @@ -22062,7 +22177,7 @@ }, "x-appwrite": { "method": "createPlatform", - "weight": 184, + "weight": 185, "cookies": false, "type": "", "deprecated": false, @@ -22183,7 +22298,7 @@ }, "x-appwrite": { "method": "getPlatform", - "weight": 186, + "weight": 187, "cookies": false, "type": "", "deprecated": false, @@ -22253,7 +22368,7 @@ }, "x-appwrite": { "method": "updatePlatform", - "weight": 187, + "weight": 188, "cookies": false, "type": "", "deprecated": false, @@ -22350,7 +22465,7 @@ }, "x-appwrite": { "method": "deletePlatform", - "weight": 188, + "weight": 189, "cookies": false, "type": "", "deprecated": false, @@ -22422,7 +22537,7 @@ }, "x-appwrite": { "method": "updateServiceStatus", - "weight": 156, + "weight": 157, "cookies": false, "type": "", "deprecated": false, @@ -22524,7 +22639,7 @@ }, "x-appwrite": { "method": "updateServiceStatusAll", - "weight": 157, + "weight": 158, "cookies": false, "type": "", "deprecated": false, @@ -22605,7 +22720,7 @@ }, "x-appwrite": { "method": "updateSmtp", - "weight": 189, + "weight": 190, "cookies": false, "type": "", "deprecated": false, @@ -22725,7 +22840,7 @@ }, "x-appwrite": { "method": "createSmtpTest", - "weight": 190, + "weight": 191, "cookies": false, "type": "", "deprecated": false, @@ -22858,7 +22973,7 @@ }, "x-appwrite": { "method": "updateTeam", - "weight": 155, + "weight": 156, "cookies": false, "type": "", "deprecated": false, @@ -22939,7 +23054,7 @@ }, "x-appwrite": { "method": "getEmailTemplate", - "weight": 192, + "weight": 193, "cookies": false, "type": "", "deprecated": false, @@ -23165,7 +23280,7 @@ }, "x-appwrite": { "method": "updateEmailTemplate", - "weight": 194, + "weight": 195, "cookies": false, "type": "", "deprecated": false, @@ -23431,7 +23546,7 @@ }, "x-appwrite": { "method": "deleteEmailTemplate", - "weight": 196, + "weight": 197, "cookies": false, "type": "", "deprecated": false, @@ -23659,7 +23774,7 @@ }, "x-appwrite": { "method": "getSmsTemplate", - "weight": 191, + "weight": 192, "cookies": false, "type": "", "deprecated": false, @@ -23882,7 +23997,7 @@ }, "x-appwrite": { "method": "updateSmsTemplate", - "weight": 193, + "weight": 194, "cookies": false, "type": "", "deprecated": false, @@ -24124,7 +24239,7 @@ }, "x-appwrite": { "method": "deleteSmsTemplate", - "weight": 195, + "weight": 196, "cookies": false, "type": "", "deprecated": false, @@ -24349,7 +24464,7 @@ }, "x-appwrite": { "method": "listWebhooks", - "weight": 173, + "weight": 174, "cookies": false, "type": "", "deprecated": false, @@ -24409,7 +24524,7 @@ }, "x-appwrite": { "method": "createWebhook", - "weight": 172, + "weight": 173, "cookies": false, "type": "", "deprecated": false, @@ -24526,7 +24641,7 @@ }, "x-appwrite": { "method": "getWebhook", - "weight": 174, + "weight": 175, "cookies": false, "type": "", "deprecated": false, @@ -24596,7 +24711,7 @@ }, "x-appwrite": { "method": "updateWebhook", - "weight": 175, + "weight": 176, "cookies": false, "type": "", "deprecated": false, @@ -24714,7 +24829,7 @@ }, "x-appwrite": { "method": "deleteWebhook", - "weight": 177, + "weight": 178, "cookies": false, "type": "", "deprecated": false, @@ -24786,7 +24901,7 @@ }, "x-appwrite": { "method": "updateWebhookSignature", - "weight": 176, + "weight": 177, "cookies": false, "type": "", "deprecated": false, @@ -24858,7 +24973,7 @@ }, "x-appwrite": { "method": "listRules", - "weight": 318, + "weight": 319, "cookies": false, "type": "", "deprecated": false, @@ -24932,7 +25047,7 @@ }, "x-appwrite": { "method": "createRule", - "weight": 317, + "weight": 318, "cookies": false, "type": "", "deprecated": false, @@ -25018,7 +25133,7 @@ }, "x-appwrite": { "method": "getRule", - "weight": 319, + "weight": 320, "cookies": false, "type": "", "deprecated": false, @@ -25071,7 +25186,7 @@ }, "x-appwrite": { "method": "deleteRule", - "weight": 320, + "weight": 321, "cookies": false, "type": "", "deprecated": false, @@ -25133,7 +25248,7 @@ }, "x-appwrite": { "method": "updateRuleVerification", - "weight": 321, + "weight": 322, "cookies": false, "type": "", "deprecated": false, @@ -25195,7 +25310,7 @@ }, "x-appwrite": { "method": "listBuckets", - "weight": 204, + "weight": 205, "cookies": false, "type": "", "deprecated": false, @@ -25270,7 +25385,7 @@ }, "x-appwrite": { "method": "createBucket", - "weight": 203, + "weight": 204, "cookies": false, "type": "", "deprecated": false, @@ -25399,7 +25514,7 @@ }, "x-appwrite": { "method": "getBucket", - "weight": 205, + "weight": 206, "cookies": false, "type": "", "deprecated": false, @@ -25460,7 +25575,7 @@ }, "x-appwrite": { "method": "updateBucket", - "weight": 206, + "weight": 207, "cookies": false, "type": "", "deprecated": false, @@ -25586,7 +25701,7 @@ }, "x-appwrite": { "method": "deleteBucket", - "weight": 207, + "weight": 208, "cookies": false, "type": "", "deprecated": false, @@ -25649,7 +25764,7 @@ }, "x-appwrite": { "method": "listFiles", - "weight": 209, + "weight": 210, "cookies": false, "type": "", "deprecated": false, @@ -25737,7 +25852,7 @@ }, "x-appwrite": { "method": "createFile", - "weight": 208, + "weight": 209, "cookies": false, "type": "upload", "deprecated": false, @@ -25837,7 +25952,7 @@ }, "x-appwrite": { "method": "getFile", - "weight": 210, + "weight": 211, "cookies": false, "type": "", "deprecated": false, @@ -25911,7 +26026,7 @@ }, "x-appwrite": { "method": "updateFile", - "weight": 215, + "weight": 216, "cookies": false, "type": "", "deprecated": false, @@ -26002,7 +26117,7 @@ }, "x-appwrite": { "method": "deleteFile", - "weight": 216, + "weight": 217, "cookies": false, "type": "", "deprecated": false, @@ -26071,7 +26186,7 @@ }, "x-appwrite": { "method": "getFileDownload", - "weight": 212, + "weight": 213, "cookies": false, "type": "location", "deprecated": false, @@ -26140,7 +26255,7 @@ }, "x-appwrite": { "method": "getFilePreview", - "weight": 211, + "weight": 212, "cookies": false, "type": "location", "deprecated": false, @@ -26358,7 +26473,7 @@ }, "x-appwrite": { "method": "getFileView", - "weight": 213, + "weight": 214, "cookies": false, "type": "location", "deprecated": false, @@ -26434,7 +26549,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 217, + "weight": 218, "cookies": false, "type": "", "deprecated": false, @@ -26508,7 +26623,7 @@ }, "x-appwrite": { "method": "getBucketUsage", - "weight": 218, + "weight": 219, "cookies": false, "type": "", "deprecated": false, @@ -26592,7 +26707,7 @@ }, "x-appwrite": { "method": "list", - "weight": 220, + "weight": 221, "cookies": false, "type": "", "deprecated": false, @@ -26670,7 +26785,7 @@ }, "x-appwrite": { "method": "create", - "weight": 219, + "weight": 220, "cookies": false, "type": "", "deprecated": false, @@ -26757,7 +26872,7 @@ }, "x-appwrite": { "method": "get", - "weight": 221, + "weight": 222, "cookies": false, "type": "", "deprecated": false, @@ -26821,7 +26936,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 223, + "weight": 224, "cookies": false, "type": "", "deprecated": false, @@ -26897,7 +27012,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 225, + "weight": 226, "cookies": false, "type": "", "deprecated": false, @@ -26963,7 +27078,7 @@ }, "x-appwrite": { "method": "listLogs", - "weight": 232, + "weight": 233, "cookies": false, "type": "", "deprecated": false, @@ -27038,7 +27153,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 227, + "weight": 228, "cookies": false, "type": "", "deprecated": false, @@ -27126,7 +27241,7 @@ }, "x-appwrite": { "method": "createMembership", - "weight": 226, + "weight": 227, "cookies": false, "type": "", "deprecated": false, @@ -27239,7 +27354,7 @@ }, "x-appwrite": { "method": "getMembership", - "weight": 228, + "weight": 229, "cookies": false, "type": "", "deprecated": false, @@ -27313,7 +27428,7 @@ }, "x-appwrite": { "method": "updateMembership", - "weight": 229, + "weight": 230, "cookies": false, "type": "", "deprecated": false, @@ -27402,7 +27517,7 @@ }, "x-appwrite": { "method": "deleteMembership", - "weight": 231, + "weight": 232, "cookies": false, "type": "", "deprecated": false, @@ -27478,7 +27593,7 @@ }, "x-appwrite": { "method": "updateMembershipStatus", - "weight": 230, + "weight": 231, "cookies": false, "type": "", "deprecated": false, @@ -27577,7 +27692,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 222, + "weight": 223, "cookies": false, "type": "", "deprecated": false, @@ -27639,7 +27754,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 224, + "weight": 225, "cookies": false, "type": "", "deprecated": false, @@ -27722,7 +27837,7 @@ }, "x-appwrite": { "method": "list", - "weight": 242, + "weight": 243, "cookies": false, "type": "", "deprecated": false, @@ -27797,7 +27912,7 @@ }, "x-appwrite": { "method": "create", - "weight": 233, + "weight": 234, "cookies": false, "type": "", "deprecated": false, @@ -27887,7 +28002,7 @@ }, "x-appwrite": { "method": "createArgon2User", - "weight": 236, + "weight": 237, "cookies": false, "type": "", "deprecated": false, @@ -27974,7 +28089,7 @@ }, "x-appwrite": { "method": "createBcryptUser", - "weight": 234, + "weight": 235, "cookies": false, "type": "", "deprecated": false, @@ -28061,7 +28176,7 @@ }, "x-appwrite": { "method": "listIdentities", - "weight": 250, + "weight": 251, "cookies": false, "type": "", "deprecated": false, @@ -28131,7 +28246,7 @@ }, "x-appwrite": { "method": "deleteIdentity", - "weight": 273, + "weight": 274, "cookies": false, "type": "", "deprecated": false, @@ -28194,7 +28309,7 @@ }, "x-appwrite": { "method": "createMD5User", - "weight": 235, + "weight": 236, "cookies": false, "type": "", "deprecated": false, @@ -28281,7 +28396,7 @@ }, "x-appwrite": { "method": "createPHPassUser", - "weight": 238, + "weight": 239, "cookies": false, "type": "", "deprecated": false, @@ -28368,7 +28483,7 @@ }, "x-appwrite": { "method": "createScryptUser", - "weight": 239, + "weight": 240, "cookies": false, "type": "", "deprecated": false, @@ -28485,7 +28600,7 @@ }, "x-appwrite": { "method": "createScryptModifiedUser", - "weight": 240, + "weight": 241, "cookies": false, "type": "", "deprecated": false, @@ -28590,7 +28705,7 @@ }, "x-appwrite": { "method": "createSHAUser", - "weight": 237, + "weight": 238, "cookies": false, "type": "", "deprecated": false, @@ -28697,7 +28812,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 275, + "weight": 276, "cookies": false, "type": "", "deprecated": false, @@ -28771,7 +28886,7 @@ }, "x-appwrite": { "method": "get", - "weight": 243, + "weight": 244, "cookies": false, "type": "", "deprecated": false, @@ -28825,7 +28940,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 271, + "weight": 272, "cookies": false, "type": "", "deprecated": false, @@ -28888,7 +29003,7 @@ }, "x-appwrite": { "method": "updateEmail", - "weight": 256, + "weight": 257, "cookies": false, "type": "", "deprecated": false, @@ -28970,7 +29085,7 @@ }, "x-appwrite": { "method": "createJWT", - "weight": 274, + "weight": 275, "cookies": false, "type": "", "deprecated": false, @@ -29054,7 +29169,7 @@ }, "x-appwrite": { "method": "updateLabels", - "weight": 252, + "weight": 253, "cookies": false, "type": "", "deprecated": false, @@ -29139,7 +29254,7 @@ }, "x-appwrite": { "method": "listLogs", - "weight": 248, + "weight": 249, "cookies": false, "type": "", "deprecated": false, @@ -29215,7 +29330,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 247, + "weight": 248, "cookies": false, "type": "", "deprecated": false, @@ -29278,7 +29393,7 @@ }, "x-appwrite": { "method": "updateMfa", - "weight": 261, + "weight": 262, "cookies": false, "type": "", "deprecated": false, @@ -29360,7 +29475,7 @@ }, "x-appwrite": { "method": "deleteMfaAuthenticator", - "weight": 266, + "weight": 267, "cookies": false, "type": "", "deprecated": false, @@ -29438,7 +29553,7 @@ }, "x-appwrite": { "method": "listMfaFactors", - "weight": 262, + "weight": 263, "cookies": false, "type": "", "deprecated": false, @@ -29501,7 +29616,7 @@ }, "x-appwrite": { "method": "getMfaRecoveryCodes", - "weight": 263, + "weight": 264, "cookies": false, "type": "", "deprecated": false, @@ -29562,7 +29677,7 @@ }, "x-appwrite": { "method": "updateMfaRecoveryCodes", - "weight": 265, + "weight": 266, "cookies": false, "type": "", "deprecated": false, @@ -29623,7 +29738,7 @@ }, "x-appwrite": { "method": "createMfaRecoveryCodes", - "weight": 264, + "weight": 265, "cookies": false, "type": "", "deprecated": false, @@ -29686,7 +29801,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 254, + "weight": 255, "cookies": false, "type": "", "deprecated": false, @@ -29768,7 +29883,7 @@ }, "x-appwrite": { "method": "updatePassword", - "weight": 255, + "weight": 256, "cookies": false, "type": "", "deprecated": false, @@ -29850,7 +29965,7 @@ }, "x-appwrite": { "method": "updatePhone", - "weight": 257, + "weight": 258, "cookies": false, "type": "", "deprecated": false, @@ -29932,7 +30047,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 244, + "weight": 245, "cookies": false, "type": "", "deprecated": false, @@ -29993,7 +30108,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 259, + "weight": 260, "cookies": false, "type": "", "deprecated": false, @@ -30075,7 +30190,7 @@ }, "x-appwrite": { "method": "listSessions", - "weight": 246, + "weight": 247, "cookies": false, "type": "", "deprecated": false, @@ -30136,7 +30251,7 @@ }, "x-appwrite": { "method": "createSession", - "weight": 267, + "weight": 268, "cookies": false, "type": "", "deprecated": false, @@ -30190,7 +30305,7 @@ }, "x-appwrite": { "method": "deleteSessions", - "weight": 270, + "weight": 271, "cookies": false, "type": "", "deprecated": false, @@ -30246,7 +30361,7 @@ }, "x-appwrite": { "method": "deleteSession", - "weight": 269, + "weight": 270, "cookies": false, "type": "", "deprecated": false, @@ -30319,7 +30434,7 @@ }, "x-appwrite": { "method": "updateStatus", - "weight": 251, + "weight": 252, "cookies": false, "type": "", "deprecated": false, @@ -30401,7 +30516,7 @@ }, "x-appwrite": { "method": "listTargets", - "weight": 249, + "weight": 250, "cookies": false, "type": "", "deprecated": false, @@ -30476,7 +30591,7 @@ }, "x-appwrite": { "method": "createTarget", - "weight": 241, + "weight": 242, "cookies": false, "type": "", "deprecated": false, @@ -30588,7 +30703,7 @@ }, "x-appwrite": { "method": "getTarget", - "weight": 245, + "weight": 246, "cookies": false, "type": "", "deprecated": false, @@ -30660,7 +30775,7 @@ }, "x-appwrite": { "method": "updateTarget", - "weight": 260, + "weight": 261, "cookies": false, "type": "", "deprecated": false, @@ -30751,7 +30866,7 @@ }, "x-appwrite": { "method": "deleteTarget", - "weight": 272, + "weight": 273, "cookies": false, "type": "", "deprecated": false, @@ -30825,7 +30940,7 @@ }, "x-appwrite": { "method": "createToken", - "weight": 268, + "weight": 269, "cookies": false, "type": "", "deprecated": false, @@ -30909,7 +31024,7 @@ }, "x-appwrite": { "method": "updateEmailVerification", - "weight": 258, + "weight": 259, "cookies": false, "type": "", "deprecated": false, @@ -30991,7 +31106,7 @@ }, "x-appwrite": { "method": "updatePhoneVerification", - "weight": 253, + "weight": 254, "cookies": false, "type": "", "deprecated": false, @@ -31073,7 +31188,7 @@ }, "x-appwrite": { "method": "listRepositories", - "weight": 280, + "weight": 281, "cookies": false, "type": "", "deprecated": false, @@ -31144,7 +31259,7 @@ }, "x-appwrite": { "method": "createRepository", - "weight": 281, + "weight": 282, "cookies": false, "type": "", "deprecated": false, @@ -31231,7 +31346,7 @@ }, "x-appwrite": { "method": "getRepository", - "weight": 282, + "weight": 283, "cookies": false, "type": "", "deprecated": false, @@ -31303,7 +31418,7 @@ }, "x-appwrite": { "method": "listRepositoryBranches", - "weight": 283, + "weight": 284, "cookies": false, "type": "", "deprecated": false, @@ -31375,7 +31490,7 @@ }, "x-appwrite": { "method": "getRepositoryContents", - "weight": 278, + "weight": 279, "cookies": false, "type": "", "deprecated": false, @@ -31458,7 +31573,7 @@ }, "x-appwrite": { "method": "createRepositoryDetection", - "weight": 279, + "weight": 280, "cookies": false, "type": "", "deprecated": false, @@ -31539,7 +31654,7 @@ }, "x-appwrite": { "method": "updateExternalDeployments", - "weight": 288, + "weight": 289, "cookies": false, "type": "", "deprecated": false, @@ -31630,7 +31745,7 @@ }, "x-appwrite": { "method": "listInstallations", - "weight": 285, + "weight": 286, "cookies": false, "type": "", "deprecated": false, @@ -31706,7 +31821,7 @@ }, "x-appwrite": { "method": "getInstallation", - "weight": 286, + "weight": 287, "cookies": false, "type": "", "deprecated": false, @@ -31759,7 +31874,7 @@ }, "x-appwrite": { "method": "deleteInstallation", - "weight": 287, + "weight": 288, "cookies": false, "type": "", "deprecated": false, diff --git a/app/config/specs/open-api3-latest-server.json b/app/config/specs/open-api3-latest-server.json index 782c6f6e22..cf76b72014 100644 --- a/app/config/specs/open-api3-latest-server.json +++ b/app/config/specs/open-api3-latest-server.json @@ -7736,6 +7736,114 @@ } } }, + "patch": { + "summary": "Update documents", + "operationId": "databasesUpdateDocuments", + "tags": [ + "databases" + ], + "description": "Update all documents that match your queries, If none are submitted then all documents are updated. Using the patch method you can pass only specific fields that will get updated.", + "responses": { + "200": { + "description": "Documents List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/documentList" + } + } + } + } + }, + "x-appwrite": { + "method": "updateDocuments", + "weight": 113, + "cookies": false, + "type": "", + "deprecated": false, + "demo": "databases\/update-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-documents.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "client", + "server", + "server" + ], + "packaging": false, + "offline-model": "\/databases\/{databaseId}\/collections\/{collectionId}\/documents", + "offline-key": "", + "offline-response-key": "$id", + "auth": { + "Project": [], + "Session": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "x-example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "x-example": "{}" + }, + "permissions": { + "type": "array", + "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "x-example": "[\"read(\"any\")\"]", + "items": { + "type": "string" + } + }, + "queries": { + "type": "array", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "x-example": null, + "items": { + "type": "string" + } + } + } + } + } + } + } + }, "delete": { "summary": "Delete documents", "operationId": "databasesDeleteDocuments", @@ -7745,12 +7853,19 @@ "description": "Bulk delete documents using queries, if no queries are passed then all documents are deleted.", "responses": { "200": { - "description": "File" + "description": "Documents List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/documentList" + } + } + } } }, "x-appwrite": { "method": "deleteDocuments", - "weight": 114, + "weight": 115, "cookies": false, "type": "", "deprecated": false, @@ -8049,7 +8164,7 @@ }, "x-appwrite": { "method": "deleteDocument", - "weight": 113, + "weight": 114, "cookies": false, "type": "", "deprecated": false, @@ -8502,7 +8617,7 @@ }, "x-appwrite": { "method": "list", - "weight": 290, + "weight": 291, "cookies": false, "type": "", "deprecated": false, @@ -8578,7 +8693,7 @@ }, "x-appwrite": { "method": "create", - "weight": 289, + "weight": 290, "cookies": false, "type": "", "deprecated": false, @@ -8684,7 +8799,8 @@ "bun-1.0", "bun-1.1", "go-1.23", - "static-1" + "static-1", + "flutter-3.24" ], "x-enum-name": null, "x-enum-keys": [] @@ -8827,7 +8943,7 @@ }, "x-appwrite": { "method": "listRuntimes", - "weight": 291, + "weight": 292, "cookies": false, "type": "", "deprecated": false, @@ -8879,7 +8995,7 @@ }, "x-appwrite": { "method": "listSpecifications", - "weight": 292, + "weight": 293, "cookies": false, "type": "", "deprecated": false, @@ -8932,7 +9048,7 @@ }, "x-appwrite": { "method": "get", - "weight": 293, + "weight": 294, "cookies": false, "type": "", "deprecated": false, @@ -8994,7 +9110,7 @@ }, "x-appwrite": { "method": "update", - "weight": 296, + "weight": 297, "cookies": false, "type": "", "deprecated": false, @@ -9107,7 +9223,8 @@ "bun-1.0", "bun-1.1", "go-1.23", - "static-1" + "static-1", + "flutter-3.24" ], "x-enum-name": null, "x-enum-keys": [] @@ -9220,7 +9337,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 299, + "weight": 300, "cookies": false, "type": "", "deprecated": false, @@ -9284,7 +9401,7 @@ }, "x-appwrite": { "method": "listDeployments", - "weight": 301, + "weight": 302, "cookies": false, "type": "", "deprecated": false, @@ -9370,7 +9487,7 @@ }, "x-appwrite": { "method": "createDeployment", - "weight": 300, + "weight": 301, "cookies": false, "type": "upload", "deprecated": false, @@ -9469,7 +9586,7 @@ }, "x-appwrite": { "method": "getDeployment", - "weight": 302, + "weight": 303, "cookies": false, "type": "", "deprecated": false, @@ -9541,7 +9658,7 @@ }, "x-appwrite": { "method": "updateDeployment", - "weight": 298, + "weight": 299, "cookies": false, "type": "", "deprecated": false, @@ -9606,7 +9723,7 @@ }, "x-appwrite": { "method": "deleteDeployment", - "weight": 303, + "weight": 304, "cookies": false, "type": "", "deprecated": false, @@ -9673,7 +9790,7 @@ }, "x-appwrite": { "method": "createBuild", - "weight": 304, + "weight": 305, "cookies": false, "type": "", "deprecated": false, @@ -9761,7 +9878,7 @@ }, "x-appwrite": { "method": "updateDeploymentBuild", - "weight": 305, + "weight": 306, "cookies": false, "type": "", "deprecated": false, @@ -9828,7 +9945,7 @@ }, "x-appwrite": { "method": "getDeploymentDownload", - "weight": 297, + "weight": 298, "cookies": false, "type": "location", "deprecated": false, @@ -9904,7 +10021,7 @@ }, "x-appwrite": { "method": "listExecutions", - "weight": 307, + "weight": 308, "cookies": false, "type": "", "deprecated": false, @@ -9994,7 +10111,7 @@ }, "x-appwrite": { "method": "createExecution", - "weight": 306, + "weight": 307, "cookies": false, "type": "", "deprecated": false, @@ -10113,7 +10230,7 @@ }, "x-appwrite": { "method": "getExecution", - "weight": 308, + "weight": 309, "cookies": false, "type": "", "deprecated": false, @@ -10182,7 +10299,7 @@ }, "x-appwrite": { "method": "deleteExecution", - "weight": 309, + "weight": 310, "cookies": false, "type": "", "deprecated": false, @@ -10256,7 +10373,7 @@ }, "x-appwrite": { "method": "listVariables", - "weight": 311, + "weight": 312, "cookies": false, "type": "", "deprecated": false, @@ -10318,7 +10435,7 @@ }, "x-appwrite": { "method": "createVariable", - "weight": 310, + "weight": 311, "cookies": false, "type": "", "deprecated": false, @@ -10407,7 +10524,7 @@ }, "x-appwrite": { "method": "getVariable", - "weight": 312, + "weight": 313, "cookies": false, "type": "", "deprecated": false, @@ -10479,7 +10596,7 @@ }, "x-appwrite": { "method": "updateVariable", - "weight": 313, + "weight": 314, "cookies": false, "type": "", "deprecated": false, @@ -10568,7 +10685,7 @@ }, "x-appwrite": { "method": "deleteVariable", - "weight": 314, + "weight": 315, "cookies": false, "type": "", "deprecated": false, @@ -10642,7 +10759,7 @@ }, "x-appwrite": { "method": "query", - "weight": 332, + "weight": 333, "cookies": false, "type": "graphql", "deprecated": false, @@ -10698,7 +10815,7 @@ }, "x-appwrite": { "method": "mutation", - "weight": 331, + "weight": 332, "cookies": false, "type": "graphql", "deprecated": false, @@ -10754,7 +10871,7 @@ }, "x-appwrite": { "method": "get", - "weight": 126, + "weight": 127, "cookies": false, "type": "", "deprecated": false, @@ -10806,7 +10923,7 @@ }, "x-appwrite": { "method": "getAntivirus", - "weight": 148, + "weight": 149, "cookies": false, "type": "", "deprecated": false, @@ -10858,7 +10975,7 @@ }, "x-appwrite": { "method": "getCache", - "weight": 129, + "weight": 130, "cookies": false, "type": "", "deprecated": false, @@ -10910,7 +11027,7 @@ }, "x-appwrite": { "method": "getCertificate", - "weight": 135, + "weight": 136, "cookies": false, "type": "", "deprecated": false, @@ -10973,7 +11090,7 @@ }, "x-appwrite": { "method": "getDB", - "weight": 128, + "weight": 129, "cookies": false, "type": "", "deprecated": false, @@ -11025,7 +11142,7 @@ }, "x-appwrite": { "method": "getPubSub", - "weight": 131, + "weight": 132, "cookies": false, "type": "", "deprecated": false, @@ -11077,7 +11194,7 @@ }, "x-appwrite": { "method": "getQueue", - "weight": 130, + "weight": 131, "cookies": false, "type": "", "deprecated": false, @@ -11129,7 +11246,7 @@ }, "x-appwrite": { "method": "getQueueBuilds", - "weight": 137, + "weight": 138, "cookies": false, "type": "", "deprecated": false, @@ -11194,7 +11311,7 @@ }, "x-appwrite": { "method": "getQueueCertificates", - "weight": 136, + "weight": 137, "cookies": false, "type": "", "deprecated": false, @@ -11259,7 +11376,7 @@ }, "x-appwrite": { "method": "getQueueDatabases", - "weight": 138, + "weight": 139, "cookies": false, "type": "", "deprecated": false, @@ -11335,7 +11452,7 @@ }, "x-appwrite": { "method": "getQueueDeletes", - "weight": 139, + "weight": 140, "cookies": false, "type": "", "deprecated": false, @@ -11400,7 +11517,7 @@ }, "x-appwrite": { "method": "getFailedJobs", - "weight": 149, + "weight": 150, "cookies": false, "type": "", "deprecated": false, @@ -11491,7 +11608,7 @@ }, "x-appwrite": { "method": "getQueueFunctions", - "weight": 143, + "weight": 144, "cookies": false, "type": "", "deprecated": false, @@ -11556,7 +11673,7 @@ }, "x-appwrite": { "method": "getQueueLogs", - "weight": 134, + "weight": 135, "cookies": false, "type": "", "deprecated": false, @@ -11621,7 +11738,7 @@ }, "x-appwrite": { "method": "getQueueMails", - "weight": 140, + "weight": 141, "cookies": false, "type": "", "deprecated": false, @@ -11686,7 +11803,7 @@ }, "x-appwrite": { "method": "getQueueMessaging", - "weight": 141, + "weight": 142, "cookies": false, "type": "", "deprecated": false, @@ -11751,7 +11868,7 @@ }, "x-appwrite": { "method": "getQueueMigrations", - "weight": 142, + "weight": 143, "cookies": false, "type": "", "deprecated": false, @@ -11816,7 +11933,7 @@ }, "x-appwrite": { "method": "getQueueUsage", - "weight": 144, + "weight": 145, "cookies": false, "type": "", "deprecated": false, @@ -11881,7 +11998,7 @@ }, "x-appwrite": { "method": "getQueueUsageDump", - "weight": 145, + "weight": 146, "cookies": false, "type": "", "deprecated": false, @@ -11946,7 +12063,7 @@ }, "x-appwrite": { "method": "getQueueWebhooks", - "weight": 133, + "weight": 134, "cookies": false, "type": "", "deprecated": false, @@ -12011,7 +12128,7 @@ }, "x-appwrite": { "method": "getStorage", - "weight": 147, + "weight": 148, "cookies": false, "type": "", "deprecated": false, @@ -12063,7 +12180,7 @@ }, "x-appwrite": { "method": "getStorageLocal", - "weight": 146, + "weight": 147, "cookies": false, "type": "", "deprecated": false, @@ -12115,7 +12232,7 @@ }, "x-appwrite": { "method": "getTime", - "weight": 132, + "weight": 133, "cookies": false, "type": "", "deprecated": false, @@ -12167,7 +12284,7 @@ }, "x-appwrite": { "method": "get", - "weight": 118, + "weight": 119, "cookies": false, "type": "", "deprecated": false, @@ -12223,7 +12340,7 @@ }, "x-appwrite": { "method": "listCodes", - "weight": 119, + "weight": 120, "cookies": false, "type": "", "deprecated": false, @@ -12279,7 +12396,7 @@ }, "x-appwrite": { "method": "listContinents", - "weight": 123, + "weight": 124, "cookies": false, "type": "", "deprecated": false, @@ -12335,7 +12452,7 @@ }, "x-appwrite": { "method": "listCountries", - "weight": 120, + "weight": 121, "cookies": false, "type": "", "deprecated": false, @@ -12391,7 +12508,7 @@ }, "x-appwrite": { "method": "listCountriesEU", - "weight": 121, + "weight": 122, "cookies": false, "type": "", "deprecated": false, @@ -12447,7 +12564,7 @@ }, "x-appwrite": { "method": "listCountriesPhones", - "weight": 122, + "weight": 123, "cookies": false, "type": "", "deprecated": false, @@ -12503,7 +12620,7 @@ }, "x-appwrite": { "method": "listCurrencies", - "weight": 124, + "weight": 125, "cookies": false, "type": "", "deprecated": false, @@ -12559,7 +12676,7 @@ }, "x-appwrite": { "method": "listLanguages", - "weight": 125, + "weight": 126, "cookies": false, "type": "", "deprecated": false, @@ -12615,7 +12732,7 @@ }, "x-appwrite": { "method": "listMessages", - "weight": 391, + "weight": 392, "cookies": false, "type": "", "deprecated": false, @@ -12694,7 +12811,7 @@ }, "x-appwrite": { "method": "createEmail", - "weight": 388, + "weight": 389, "cookies": false, "type": "", "deprecated": false, @@ -12841,7 +12958,7 @@ }, "x-appwrite": { "method": "updateEmail", - "weight": 395, + "weight": 396, "cookies": false, "type": "", "deprecated": false, @@ -12990,7 +13107,7 @@ }, "x-appwrite": { "method": "createPush", - "weight": 390, + "weight": 391, "cookies": false, "type": "", "deprecated": false, @@ -13148,7 +13265,7 @@ }, "x-appwrite": { "method": "updatePush", - "weight": 397, + "weight": 398, "cookies": false, "type": "", "deprecated": false, @@ -13308,7 +13425,7 @@ }, "x-appwrite": { "method": "createSms", - "weight": 389, + "weight": 390, "cookies": false, "type": "", "deprecated": false, @@ -13420,7 +13537,7 @@ }, "x-appwrite": { "method": "updateSms", - "weight": 396, + "weight": 397, "cookies": false, "type": "", "deprecated": false, @@ -13535,7 +13652,7 @@ }, "x-appwrite": { "method": "getMessage", - "weight": 394, + "weight": 395, "cookies": false, "type": "", "deprecated": false, @@ -13591,7 +13708,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 398, + "weight": 399, "cookies": false, "type": "", "deprecated": false, @@ -13656,7 +13773,7 @@ }, "x-appwrite": { "method": "listMessageLogs", - "weight": 392, + "weight": 393, "cookies": false, "type": "", "deprecated": false, @@ -13734,7 +13851,7 @@ }, "x-appwrite": { "method": "listTargets", - "weight": 393, + "weight": 394, "cookies": false, "type": "", "deprecated": false, @@ -13812,7 +13929,7 @@ }, "x-appwrite": { "method": "listProviders", - "weight": 363, + "weight": 364, "cookies": false, "type": "", "deprecated": false, @@ -13891,7 +14008,7 @@ }, "x-appwrite": { "method": "createApnsProvider", - "weight": 362, + "weight": 363, "cookies": false, "type": "", "deprecated": false, @@ -13999,7 +14116,7 @@ }, "x-appwrite": { "method": "updateApnsProvider", - "weight": 375, + "weight": 376, "cookies": false, "type": "", "deprecated": false, @@ -14110,7 +14227,7 @@ }, "x-appwrite": { "method": "createFcmProvider", - "weight": 361, + "weight": 362, "cookies": false, "type": "", "deprecated": false, @@ -14198,7 +14315,7 @@ }, "x-appwrite": { "method": "updateFcmProvider", - "weight": 374, + "weight": 375, "cookies": false, "type": "", "deprecated": false, @@ -14289,7 +14406,7 @@ }, "x-appwrite": { "method": "createMailgunProvider", - "weight": 353, + "weight": 354, "cookies": false, "type": "", "deprecated": false, @@ -14407,7 +14524,7 @@ }, "x-appwrite": { "method": "updateMailgunProvider", - "weight": 366, + "weight": 367, "cookies": false, "type": "", "deprecated": false, @@ -14528,7 +14645,7 @@ }, "x-appwrite": { "method": "createMsg91Provider", - "weight": 356, + "weight": 357, "cookies": false, "type": "", "deprecated": false, @@ -14626,7 +14743,7 @@ }, "x-appwrite": { "method": "updateMsg91Provider", - "weight": 369, + "weight": 370, "cookies": false, "type": "", "deprecated": false, @@ -14727,7 +14844,7 @@ }, "x-appwrite": { "method": "createSendgridProvider", - "weight": 354, + "weight": 355, "cookies": false, "type": "", "deprecated": false, @@ -14835,7 +14952,7 @@ }, "x-appwrite": { "method": "updateSendgridProvider", - "weight": 367, + "weight": 368, "cookies": false, "type": "", "deprecated": false, @@ -14946,7 +15063,7 @@ }, "x-appwrite": { "method": "createSmtpProvider", - "weight": 355, + "weight": 356, "cookies": false, "type": "", "deprecated": false, @@ -15092,7 +15209,7 @@ }, "x-appwrite": { "method": "updateSmtpProvider", - "weight": 368, + "weight": 369, "cookies": false, "type": "", "deprecated": false, @@ -15240,7 +15357,7 @@ }, "x-appwrite": { "method": "createTelesignProvider", - "weight": 357, + "weight": 358, "cookies": false, "type": "", "deprecated": false, @@ -15338,7 +15455,7 @@ }, "x-appwrite": { "method": "updateTelesignProvider", - "weight": 370, + "weight": 371, "cookies": false, "type": "", "deprecated": false, @@ -15439,7 +15556,7 @@ }, "x-appwrite": { "method": "createTextmagicProvider", - "weight": 358, + "weight": 359, "cookies": false, "type": "", "deprecated": false, @@ -15537,7 +15654,7 @@ }, "x-appwrite": { "method": "updateTextmagicProvider", - "weight": 371, + "weight": 372, "cookies": false, "type": "", "deprecated": false, @@ -15638,7 +15755,7 @@ }, "x-appwrite": { "method": "createTwilioProvider", - "weight": 359, + "weight": 360, "cookies": false, "type": "", "deprecated": false, @@ -15736,7 +15853,7 @@ }, "x-appwrite": { "method": "updateTwilioProvider", - "weight": 372, + "weight": 373, "cookies": false, "type": "", "deprecated": false, @@ -15837,7 +15954,7 @@ }, "x-appwrite": { "method": "createVonageProvider", - "weight": 360, + "weight": 361, "cookies": false, "type": "", "deprecated": false, @@ -15935,7 +16052,7 @@ }, "x-appwrite": { "method": "updateVonageProvider", - "weight": 373, + "weight": 374, "cookies": false, "type": "", "deprecated": false, @@ -16036,7 +16153,7 @@ }, "x-appwrite": { "method": "getProvider", - "weight": 365, + "weight": 366, "cookies": false, "type": "", "deprecated": false, @@ -16092,7 +16209,7 @@ }, "x-appwrite": { "method": "deleteProvider", - "weight": 376, + "weight": 377, "cookies": false, "type": "", "deprecated": false, @@ -16157,7 +16274,7 @@ }, "x-appwrite": { "method": "listProviderLogs", - "weight": 364, + "weight": 365, "cookies": false, "type": "", "deprecated": false, @@ -16235,7 +16352,7 @@ }, "x-appwrite": { "method": "listSubscriberLogs", - "weight": 385, + "weight": 386, "cookies": false, "type": "", "deprecated": false, @@ -16313,7 +16430,7 @@ }, "x-appwrite": { "method": "listTopics", - "weight": 378, + "weight": 379, "cookies": false, "type": "", "deprecated": false, @@ -16390,7 +16507,7 @@ }, "x-appwrite": { "method": "createTopic", - "weight": 377, + "weight": 378, "cookies": false, "type": "", "deprecated": false, @@ -16476,7 +16593,7 @@ }, "x-appwrite": { "method": "getTopic", - "weight": 380, + "weight": 381, "cookies": false, "type": "", "deprecated": false, @@ -16539,7 +16656,7 @@ }, "x-appwrite": { "method": "updateTopic", - "weight": 381, + "weight": 382, "cookies": false, "type": "", "deprecated": false, @@ -16619,7 +16736,7 @@ }, "x-appwrite": { "method": "deleteTopic", - "weight": 382, + "weight": 383, "cookies": false, "type": "", "deprecated": false, @@ -16684,7 +16801,7 @@ }, "x-appwrite": { "method": "listTopicLogs", - "weight": 379, + "weight": 380, "cookies": false, "type": "", "deprecated": false, @@ -16762,7 +16879,7 @@ }, "x-appwrite": { "method": "listSubscribers", - "weight": 384, + "weight": 385, "cookies": false, "type": "", "deprecated": false, @@ -16849,7 +16966,7 @@ }, "x-appwrite": { "method": "createSubscriber", - "weight": 383, + "weight": 384, "cookies": false, "type": "", "deprecated": false, @@ -16943,7 +17060,7 @@ }, "x-appwrite": { "method": "getSubscriber", - "weight": 386, + "weight": 387, "cookies": false, "type": "", "deprecated": false, @@ -17009,7 +17126,7 @@ }, "x-appwrite": { "method": "deleteSubscriber", - "weight": 387, + "weight": 388, "cookies": false, "type": "", "deprecated": false, @@ -17088,7 +17205,7 @@ }, "x-appwrite": { "method": "listBuckets", - "weight": 204, + "weight": 205, "cookies": false, "type": "", "deprecated": false, @@ -17164,7 +17281,7 @@ }, "x-appwrite": { "method": "createBucket", - "weight": 203, + "weight": 204, "cookies": false, "type": "", "deprecated": false, @@ -17294,7 +17411,7 @@ }, "x-appwrite": { "method": "getBucket", - "weight": 205, + "weight": 206, "cookies": false, "type": "", "deprecated": false, @@ -17356,7 +17473,7 @@ }, "x-appwrite": { "method": "updateBucket", - "weight": 206, + "weight": 207, "cookies": false, "type": "", "deprecated": false, @@ -17483,7 +17600,7 @@ }, "x-appwrite": { "method": "deleteBucket", - "weight": 207, + "weight": 208, "cookies": false, "type": "", "deprecated": false, @@ -17547,7 +17664,7 @@ }, "x-appwrite": { "method": "listFiles", - "weight": 209, + "weight": 210, "cookies": false, "type": "", "deprecated": false, @@ -17637,7 +17754,7 @@ }, "x-appwrite": { "method": "createFile", - "weight": 208, + "weight": 209, "cookies": false, "type": "upload", "deprecated": false, @@ -17739,7 +17856,7 @@ }, "x-appwrite": { "method": "getFile", - "weight": 210, + "weight": 211, "cookies": false, "type": "", "deprecated": false, @@ -17815,7 +17932,7 @@ }, "x-appwrite": { "method": "updateFile", - "weight": 215, + "weight": 216, "cookies": false, "type": "", "deprecated": false, @@ -17908,7 +18025,7 @@ }, "x-appwrite": { "method": "deleteFile", - "weight": 216, + "weight": 217, "cookies": false, "type": "", "deprecated": false, @@ -17979,7 +18096,7 @@ }, "x-appwrite": { "method": "getFileDownload", - "weight": 212, + "weight": 213, "cookies": false, "type": "location", "deprecated": false, @@ -18050,7 +18167,7 @@ }, "x-appwrite": { "method": "getFilePreview", - "weight": 211, + "weight": 212, "cookies": false, "type": "location", "deprecated": false, @@ -18270,7 +18387,7 @@ }, "x-appwrite": { "method": "getFileView", - "weight": 213, + "weight": 214, "cookies": false, "type": "location", "deprecated": false, @@ -18348,7 +18465,7 @@ }, "x-appwrite": { "method": "list", - "weight": 220, + "weight": 221, "cookies": false, "type": "", "deprecated": false, @@ -18428,7 +18545,7 @@ }, "x-appwrite": { "method": "create", - "weight": 219, + "weight": 220, "cookies": false, "type": "", "deprecated": false, @@ -18517,7 +18634,7 @@ }, "x-appwrite": { "method": "get", - "weight": 221, + "weight": 222, "cookies": false, "type": "", "deprecated": false, @@ -18583,7 +18700,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 223, + "weight": 224, "cookies": false, "type": "", "deprecated": false, @@ -18661,7 +18778,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 225, + "weight": 226, "cookies": false, "type": "", "deprecated": false, @@ -18729,7 +18846,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 227, + "weight": 228, "cookies": false, "type": "", "deprecated": false, @@ -18819,7 +18936,7 @@ }, "x-appwrite": { "method": "createMembership", - "weight": 226, + "weight": 227, "cookies": false, "type": "", "deprecated": false, @@ -18934,7 +19051,7 @@ }, "x-appwrite": { "method": "getMembership", - "weight": 228, + "weight": 229, "cookies": false, "type": "", "deprecated": false, @@ -19010,7 +19127,7 @@ }, "x-appwrite": { "method": "updateMembership", - "weight": 229, + "weight": 230, "cookies": false, "type": "", "deprecated": false, @@ -19101,7 +19218,7 @@ }, "x-appwrite": { "method": "deleteMembership", - "weight": 231, + "weight": 232, "cookies": false, "type": "", "deprecated": false, @@ -19179,7 +19296,7 @@ }, "x-appwrite": { "method": "updateMembershipStatus", - "weight": 230, + "weight": 231, "cookies": false, "type": "", "deprecated": false, @@ -19280,7 +19397,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 222, + "weight": 223, "cookies": false, "type": "", "deprecated": false, @@ -19344,7 +19461,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 224, + "weight": 225, "cookies": false, "type": "", "deprecated": false, @@ -19429,7 +19546,7 @@ }, "x-appwrite": { "method": "list", - "weight": 242, + "weight": 243, "cookies": false, "type": "", "deprecated": false, @@ -19505,7 +19622,7 @@ }, "x-appwrite": { "method": "create", - "weight": 233, + "weight": 234, "cookies": false, "type": "", "deprecated": false, @@ -19596,7 +19713,7 @@ }, "x-appwrite": { "method": "createArgon2User", - "weight": 236, + "weight": 237, "cookies": false, "type": "", "deprecated": false, @@ -19684,7 +19801,7 @@ }, "x-appwrite": { "method": "createBcryptUser", - "weight": 234, + "weight": 235, "cookies": false, "type": "", "deprecated": false, @@ -19772,7 +19889,7 @@ }, "x-appwrite": { "method": "listIdentities", - "weight": 250, + "weight": 251, "cookies": false, "type": "", "deprecated": false, @@ -19843,7 +19960,7 @@ }, "x-appwrite": { "method": "deleteIdentity", - "weight": 273, + "weight": 274, "cookies": false, "type": "", "deprecated": false, @@ -19907,7 +20024,7 @@ }, "x-appwrite": { "method": "createMD5User", - "weight": 235, + "weight": 236, "cookies": false, "type": "", "deprecated": false, @@ -19995,7 +20112,7 @@ }, "x-appwrite": { "method": "createPHPassUser", - "weight": 238, + "weight": 239, "cookies": false, "type": "", "deprecated": false, @@ -20083,7 +20200,7 @@ }, "x-appwrite": { "method": "createScryptUser", - "weight": 239, + "weight": 240, "cookies": false, "type": "", "deprecated": false, @@ -20201,7 +20318,7 @@ }, "x-appwrite": { "method": "createScryptModifiedUser", - "weight": 240, + "weight": 241, "cookies": false, "type": "", "deprecated": false, @@ -20307,7 +20424,7 @@ }, "x-appwrite": { "method": "createSHAUser", - "weight": 237, + "weight": 238, "cookies": false, "type": "", "deprecated": false, @@ -20415,7 +20532,7 @@ }, "x-appwrite": { "method": "get", - "weight": 243, + "weight": 244, "cookies": false, "type": "", "deprecated": false, @@ -20470,7 +20587,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 271, + "weight": 272, "cookies": false, "type": "", "deprecated": false, @@ -20534,7 +20651,7 @@ }, "x-appwrite": { "method": "updateEmail", - "weight": 256, + "weight": 257, "cookies": false, "type": "", "deprecated": false, @@ -20617,7 +20734,7 @@ }, "x-appwrite": { "method": "createJWT", - "weight": 274, + "weight": 275, "cookies": false, "type": "", "deprecated": false, @@ -20702,7 +20819,7 @@ }, "x-appwrite": { "method": "updateLabels", - "weight": 252, + "weight": 253, "cookies": false, "type": "", "deprecated": false, @@ -20788,7 +20905,7 @@ }, "x-appwrite": { "method": "listLogs", - "weight": 248, + "weight": 249, "cookies": false, "type": "", "deprecated": false, @@ -20865,7 +20982,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 247, + "weight": 248, "cookies": false, "type": "", "deprecated": false, @@ -20929,7 +21046,7 @@ }, "x-appwrite": { "method": "updateMfa", - "weight": 261, + "weight": 262, "cookies": false, "type": "", "deprecated": false, @@ -21012,7 +21129,7 @@ }, "x-appwrite": { "method": "deleteMfaAuthenticator", - "weight": 266, + "weight": 267, "cookies": false, "type": "", "deprecated": false, @@ -21091,7 +21208,7 @@ }, "x-appwrite": { "method": "listMfaFactors", - "weight": 262, + "weight": 263, "cookies": false, "type": "", "deprecated": false, @@ -21155,7 +21272,7 @@ }, "x-appwrite": { "method": "getMfaRecoveryCodes", - "weight": 263, + "weight": 264, "cookies": false, "type": "", "deprecated": false, @@ -21217,7 +21334,7 @@ }, "x-appwrite": { "method": "updateMfaRecoveryCodes", - "weight": 265, + "weight": 266, "cookies": false, "type": "", "deprecated": false, @@ -21279,7 +21396,7 @@ }, "x-appwrite": { "method": "createMfaRecoveryCodes", - "weight": 264, + "weight": 265, "cookies": false, "type": "", "deprecated": false, @@ -21343,7 +21460,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 254, + "weight": 255, "cookies": false, "type": "", "deprecated": false, @@ -21426,7 +21543,7 @@ }, "x-appwrite": { "method": "updatePassword", - "weight": 255, + "weight": 256, "cookies": false, "type": "", "deprecated": false, @@ -21509,7 +21626,7 @@ }, "x-appwrite": { "method": "updatePhone", - "weight": 257, + "weight": 258, "cookies": false, "type": "", "deprecated": false, @@ -21592,7 +21709,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 244, + "weight": 245, "cookies": false, "type": "", "deprecated": false, @@ -21654,7 +21771,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 259, + "weight": 260, "cookies": false, "type": "", "deprecated": false, @@ -21737,7 +21854,7 @@ }, "x-appwrite": { "method": "listSessions", - "weight": 246, + "weight": 247, "cookies": false, "type": "", "deprecated": false, @@ -21799,7 +21916,7 @@ }, "x-appwrite": { "method": "createSession", - "weight": 267, + "weight": 268, "cookies": false, "type": "", "deprecated": false, @@ -21854,7 +21971,7 @@ }, "x-appwrite": { "method": "deleteSessions", - "weight": 270, + "weight": 271, "cookies": false, "type": "", "deprecated": false, @@ -21911,7 +22028,7 @@ }, "x-appwrite": { "method": "deleteSession", - "weight": 269, + "weight": 270, "cookies": false, "type": "", "deprecated": false, @@ -21985,7 +22102,7 @@ }, "x-appwrite": { "method": "updateStatus", - "weight": 251, + "weight": 252, "cookies": false, "type": "", "deprecated": false, @@ -22068,7 +22185,7 @@ }, "x-appwrite": { "method": "listTargets", - "weight": 249, + "weight": 250, "cookies": false, "type": "", "deprecated": false, @@ -22144,7 +22261,7 @@ }, "x-appwrite": { "method": "createTarget", - "weight": 241, + "weight": 242, "cookies": false, "type": "", "deprecated": false, @@ -22257,7 +22374,7 @@ }, "x-appwrite": { "method": "getTarget", - "weight": 245, + "weight": 246, "cookies": false, "type": "", "deprecated": false, @@ -22330,7 +22447,7 @@ }, "x-appwrite": { "method": "updateTarget", - "weight": 260, + "weight": 261, "cookies": false, "type": "", "deprecated": false, @@ -22422,7 +22539,7 @@ }, "x-appwrite": { "method": "deleteTarget", - "weight": 272, + "weight": 273, "cookies": false, "type": "", "deprecated": false, @@ -22497,7 +22614,7 @@ }, "x-appwrite": { "method": "createToken", - "weight": 268, + "weight": 269, "cookies": false, "type": "", "deprecated": false, @@ -22582,7 +22699,7 @@ }, "x-appwrite": { "method": "updateEmailVerification", - "weight": 258, + "weight": 259, "cookies": false, "type": "", "deprecated": false, @@ -22665,7 +22782,7 @@ }, "x-appwrite": { "method": "updatePhoneVerification", - "weight": 253, + "weight": 254, "cookies": false, "type": "", "deprecated": false, diff --git a/app/config/specs/swagger2-latest-client.json b/app/config/specs/swagger2-latest-client.json index 9efff64f83..7a59bb87ea 100644 --- a/app/config/specs/swagger2-latest-client.json +++ b/app/config/specs/swagger2-latest-client.json @@ -4803,28 +4803,135 @@ } ] }, + "patch": { + "summary": "Update documents", + "operationId": "databasesUpdateDocuments", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update all documents that match your queries, If none are submitted then all documents are updated. Using the patch method you can pass only specific fields that will get updated.", + "responses": { + "200": { + "description": "Documents List", + "schema": { + "$ref": "#\/definitions\/documentList" + } + } + }, + "x-appwrite": { + "method": "updateDocuments", + "weight": 113, + "cookies": false, + "type": "", + "deprecated": false, + "demo": "databases\/update-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-documents.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "client", + "server", + "server" + ], + "packaging": false, + "offline-model": "\/databases\/{databaseId}\/collections\/{collectionId}\/documents", + "offline-key": "", + "offline-response-key": "$id", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "default": [], + "x-example": "{}" + }, + "permissions": { + "type": "array", + "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "default": null, + "x-example": "[\"read(\"any\")\"]", + "items": { + "type": "string" + } + }, + "queries": { + "type": "array", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + } + } + } + } + ] + }, "delete": { "summary": "Delete documents", "operationId": "databasesDeleteDocuments", "consumes": [ "application\/json" ], - "produces": [], + "produces": [ + "application\/json" + ], "tags": [ "databases" ], "description": "Bulk delete documents using queries, if no queries are passed then all documents are deleted.", "responses": { "200": { - "description": "File", + "description": "Documents List", "schema": { - "type": "file" + "$ref": "#\/definitions\/documentList" } } }, "x-appwrite": { "method": "deleteDocuments", - "weight": 114, + "weight": 115, "cookies": false, "type": "", "deprecated": false, @@ -5107,7 +5214,7 @@ }, "x-appwrite": { "method": "deleteDocument", - "weight": 113, + "weight": 114, "cookies": false, "type": "", "deprecated": false, @@ -5189,7 +5296,7 @@ }, "x-appwrite": { "method": "listExecutions", - "weight": 307, + "weight": 308, "cookies": false, "type": "", "deprecated": false, @@ -5274,7 +5381,7 @@ }, "x-appwrite": { "method": "createExecution", - "weight": 306, + "weight": 307, "cookies": false, "type": "", "deprecated": false, @@ -5395,7 +5502,7 @@ }, "x-appwrite": { "method": "getExecution", - "weight": 308, + "weight": 309, "cookies": false, "type": "", "deprecated": false, @@ -5469,7 +5576,7 @@ }, "x-appwrite": { "method": "query", - "weight": 332, + "weight": 333, "cookies": false, "type": "graphql", "deprecated": false, @@ -5545,7 +5652,7 @@ }, "x-appwrite": { "method": "mutation", - "weight": 331, + "weight": 332, "cookies": false, "type": "graphql", "deprecated": false, @@ -5621,7 +5728,7 @@ }, "x-appwrite": { "method": "get", - "weight": 118, + "weight": 119, "cookies": false, "type": "", "deprecated": false, @@ -5677,7 +5784,7 @@ }, "x-appwrite": { "method": "listCodes", - "weight": 119, + "weight": 120, "cookies": false, "type": "", "deprecated": false, @@ -5733,7 +5840,7 @@ }, "x-appwrite": { "method": "listContinents", - "weight": 123, + "weight": 124, "cookies": false, "type": "", "deprecated": false, @@ -5789,7 +5896,7 @@ }, "x-appwrite": { "method": "listCountries", - "weight": 120, + "weight": 121, "cookies": false, "type": "", "deprecated": false, @@ -5845,7 +5952,7 @@ }, "x-appwrite": { "method": "listCountriesEU", - "weight": 121, + "weight": 122, "cookies": false, "type": "", "deprecated": false, @@ -5901,7 +6008,7 @@ }, "x-appwrite": { "method": "listCountriesPhones", - "weight": 122, + "weight": 123, "cookies": false, "type": "", "deprecated": false, @@ -5957,7 +6064,7 @@ }, "x-appwrite": { "method": "listCurrencies", - "weight": 124, + "weight": 125, "cookies": false, "type": "", "deprecated": false, @@ -6013,7 +6120,7 @@ }, "x-appwrite": { "method": "listLanguages", - "weight": 125, + "weight": 126, "cookies": false, "type": "", "deprecated": false, @@ -6069,7 +6176,7 @@ }, "x-appwrite": { "method": "createSubscriber", - "weight": 383, + "weight": 384, "cookies": false, "type": "", "deprecated": false, @@ -6158,7 +6265,7 @@ }, "x-appwrite": { "method": "deleteSubscriber", - "weight": 387, + "weight": 388, "cookies": false, "type": "", "deprecated": false, @@ -6233,7 +6340,7 @@ }, "x-appwrite": { "method": "listFiles", - "weight": 209, + "weight": 210, "cookies": false, "type": "", "deprecated": false, @@ -6318,7 +6425,7 @@ }, "x-appwrite": { "method": "createFile", - "weight": 208, + "weight": 209, "cookies": false, "type": "upload", "deprecated": false, @@ -6412,7 +6519,7 @@ }, "x-appwrite": { "method": "getFile", - "weight": 210, + "weight": 211, "cookies": false, "type": "", "deprecated": false, @@ -6484,7 +6591,7 @@ }, "x-appwrite": { "method": "updateFile", - "weight": 215, + "weight": 216, "cookies": false, "type": "", "deprecated": false, @@ -6575,7 +6682,7 @@ }, "x-appwrite": { "method": "deleteFile", - "weight": 216, + "weight": 217, "cookies": false, "type": "", "deprecated": false, @@ -6649,7 +6756,7 @@ }, "x-appwrite": { "method": "getFileDownload", - "weight": 212, + "weight": 213, "cookies": false, "type": "location", "deprecated": false, @@ -6723,7 +6830,7 @@ }, "x-appwrite": { "method": "getFilePreview", - "weight": 211, + "weight": 212, "cookies": false, "type": "location", "deprecated": false, @@ -6924,7 +7031,7 @@ }, "x-appwrite": { "method": "getFileView", - "weight": 213, + "weight": 214, "cookies": false, "type": "location", "deprecated": false, @@ -6998,7 +7105,7 @@ }, "x-appwrite": { "method": "list", - "weight": 220, + "weight": 221, "cookies": false, "type": "", "deprecated": false, @@ -7075,7 +7182,7 @@ }, "x-appwrite": { "method": "create", - "weight": 219, + "weight": 220, "cookies": false, "type": "", "deprecated": false, @@ -7169,7 +7276,7 @@ }, "x-appwrite": { "method": "get", - "weight": 221, + "weight": 222, "cookies": false, "type": "", "deprecated": false, @@ -7233,7 +7340,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 223, + "weight": 224, "cookies": false, "type": "", "deprecated": false, @@ -7310,7 +7417,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 225, + "weight": 226, "cookies": false, "type": "", "deprecated": false, @@ -7376,7 +7483,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 227, + "weight": 228, "cookies": false, "type": "", "deprecated": false, @@ -7461,7 +7568,7 @@ }, "x-appwrite": { "method": "createMembership", - "weight": 226, + "weight": 227, "cookies": false, "type": "", "deprecated": false, @@ -7578,7 +7685,7 @@ }, "x-appwrite": { "method": "getMembership", - "weight": 228, + "weight": 229, "cookies": false, "type": "", "deprecated": false, @@ -7650,7 +7757,7 @@ }, "x-appwrite": { "method": "updateMembership", - "weight": 229, + "weight": 230, "cookies": false, "type": "", "deprecated": false, @@ -7738,7 +7845,7 @@ }, "x-appwrite": { "method": "deleteMembership", - "weight": 231, + "weight": 232, "cookies": false, "type": "", "deprecated": false, @@ -7812,7 +7919,7 @@ }, "x-appwrite": { "method": "updateMembershipStatus", - "weight": 230, + "weight": 231, "cookies": false, "type": "", "deprecated": false, @@ -7910,7 +8017,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 222, + "weight": 223, "cookies": false, "type": "", "deprecated": false, @@ -7973,7 +8080,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 224, + "weight": 225, "cookies": false, "type": "", "deprecated": false, diff --git a/app/config/specs/swagger2-latest-console.json b/app/config/specs/swagger2-latest-console.json index 6d7724e07b..52473c5538 100644 --- a/app/config/specs/swagger2-latest-console.json +++ b/app/config/specs/swagger2-latest-console.json @@ -4659,7 +4659,7 @@ }, "x-appwrite": { "method": "chat", - "weight": 334, + "weight": 335, "cookies": false, "type": "", "deprecated": false, @@ -4731,7 +4731,7 @@ }, "x-appwrite": { "method": "variables", - "weight": 333, + "weight": 334, "cookies": false, "type": "", "deprecated": false, @@ -4943,7 +4943,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 115, + "weight": 116, "cookies": false, "type": "", "deprecated": false, @@ -8359,28 +8359,135 @@ } ] }, + "patch": { + "summary": "Update documents", + "operationId": "databasesUpdateDocuments", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update all documents that match your queries, If none are submitted then all documents are updated. Using the patch method you can pass only specific fields that will get updated.", + "responses": { + "200": { + "description": "Documents List", + "schema": { + "$ref": "#\/definitions\/documentList" + } + } + }, + "x-appwrite": { + "method": "updateDocuments", + "weight": 113, + "cookies": false, + "type": "", + "deprecated": false, + "demo": "databases\/update-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-documents.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "client", + "server", + "server" + ], + "packaging": false, + "offline-model": "\/databases\/{databaseId}\/collections\/{collectionId}\/documents", + "offline-key": "", + "offline-response-key": "$id", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "default": [], + "x-example": "{}" + }, + "permissions": { + "type": "array", + "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "default": null, + "x-example": "[\"read(\"any\")\"]", + "items": { + "type": "string" + } + }, + "queries": { + "type": "array", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + } + } + } + } + ] + }, "delete": { "summary": "Delete documents", "operationId": "databasesDeleteDocuments", "consumes": [ "application\/json" ], - "produces": [], + "produces": [ + "application\/json" + ], "tags": [ "databases" ], "description": "Bulk delete documents using queries, if no queries are passed then all documents are deleted.", "responses": { "200": { - "description": "File", + "description": "Documents List", "schema": { - "type": "file" + "$ref": "#\/definitions\/documentList" } } }, "x-appwrite": { "method": "deleteDocuments", - "weight": 114, + "weight": 115, "cookies": false, "type": "", "deprecated": false, @@ -8663,7 +8770,7 @@ }, "x-appwrite": { "method": "deleteDocument", - "weight": 113, + "weight": 114, "cookies": false, "type": "", "deprecated": false, @@ -9269,7 +9376,7 @@ }, "x-appwrite": { "method": "getCollectionUsage", - "weight": 117, + "weight": 118, "cookies": false, "type": "", "deprecated": false, @@ -9433,7 +9540,7 @@ }, "x-appwrite": { "method": "getDatabaseUsage", - "weight": 116, + "weight": 117, "cookies": false, "type": "", "deprecated": false, @@ -9515,7 +9622,7 @@ }, "x-appwrite": { "method": "list", - "weight": 290, + "weight": 291, "cookies": false, "type": "", "deprecated": false, @@ -9589,7 +9696,7 @@ }, "x-appwrite": { "method": "create", - "weight": 289, + "weight": 290, "cookies": false, "type": "", "deprecated": false, @@ -9698,7 +9805,8 @@ "bun-1.0", "bun-1.1", "go-1.23", - "static-1" + "static-1", + "flutter-3.24" ], "x-enum-name": null, "x-enum-keys": [] @@ -9861,7 +9969,7 @@ }, "x-appwrite": { "method": "listRuntimes", - "weight": 291, + "weight": 292, "cookies": false, "type": "", "deprecated": false, @@ -9914,7 +10022,7 @@ }, "x-appwrite": { "method": "listSpecifications", - "weight": 292, + "weight": 293, "cookies": false, "type": "", "deprecated": false, @@ -9968,7 +10076,7 @@ }, "x-appwrite": { "method": "listTemplates", - "weight": 315, + "weight": 316, "cookies": false, "type": "", "deprecated": false, @@ -10066,7 +10174,7 @@ }, "x-appwrite": { "method": "getTemplate", - "weight": 316, + "weight": 317, "cookies": false, "type": "", "deprecated": false, @@ -10128,7 +10236,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 295, + "weight": 296, "cookies": false, "type": "", "deprecated": false, @@ -10202,7 +10310,7 @@ }, "x-appwrite": { "method": "get", - "weight": 293, + "weight": 294, "cookies": false, "type": "", "deprecated": false, @@ -10263,7 +10371,7 @@ }, "x-appwrite": { "method": "update", - "weight": 296, + "weight": 297, "cookies": false, "type": "", "deprecated": false, @@ -10374,7 +10482,8 @@ "bun-1.0", "bun-1.1", "go-1.23", - "static-1" + "static-1", + "flutter-3.24" ], "x-enum-name": null, "x-enum-keys": [] @@ -10505,7 +10614,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 299, + "weight": 300, "cookies": false, "type": "", "deprecated": false, @@ -10568,7 +10677,7 @@ }, "x-appwrite": { "method": "listDeployments", - "weight": 301, + "weight": 302, "cookies": false, "type": "", "deprecated": false, @@ -10650,7 +10759,7 @@ }, "x-appwrite": { "method": "createDeployment", - "weight": 300, + "weight": 301, "cookies": false, "type": "upload", "deprecated": false, @@ -10744,7 +10853,7 @@ }, "x-appwrite": { "method": "getDeployment", - "weight": 302, + "weight": 303, "cookies": false, "type": "", "deprecated": false, @@ -10813,7 +10922,7 @@ }, "x-appwrite": { "method": "updateDeployment", - "weight": 298, + "weight": 299, "cookies": false, "type": "", "deprecated": false, @@ -10877,7 +10986,7 @@ }, "x-appwrite": { "method": "deleteDeployment", - "weight": 303, + "weight": 304, "cookies": false, "type": "", "deprecated": false, @@ -10943,7 +11052,7 @@ }, "x-appwrite": { "method": "createBuild", - "weight": 304, + "weight": 305, "cookies": false, "type": "", "deprecated": false, @@ -11027,7 +11136,7 @@ }, "x-appwrite": { "method": "updateDeploymentBuild", - "weight": 305, + "weight": 306, "cookies": false, "type": "", "deprecated": false, @@ -11098,7 +11207,7 @@ }, "x-appwrite": { "method": "getDeploymentDownload", - "weight": 297, + "weight": 298, "cookies": false, "type": "location", "deprecated": false, @@ -11171,7 +11280,7 @@ }, "x-appwrite": { "method": "listExecutions", - "weight": 307, + "weight": 308, "cookies": false, "type": "", "deprecated": false, @@ -11256,7 +11365,7 @@ }, "x-appwrite": { "method": "createExecution", - "weight": 306, + "weight": 307, "cookies": false, "type": "", "deprecated": false, @@ -11377,7 +11486,7 @@ }, "x-appwrite": { "method": "getExecution", - "weight": 308, + "weight": 309, "cookies": false, "type": "", "deprecated": false, @@ -11444,7 +11553,7 @@ }, "x-appwrite": { "method": "deleteExecution", - "weight": 309, + "weight": 310, "cookies": false, "type": "", "deprecated": false, @@ -11515,7 +11624,7 @@ }, "x-appwrite": { "method": "getFunctionUsage", - "weight": 294, + "weight": 295, "cookies": false, "type": "", "deprecated": false, @@ -11597,7 +11706,7 @@ }, "x-appwrite": { "method": "listVariables", - "weight": 311, + "weight": 312, "cookies": false, "type": "", "deprecated": false, @@ -11658,7 +11767,7 @@ }, "x-appwrite": { "method": "createVariable", - "weight": 310, + "weight": 311, "cookies": false, "type": "", "deprecated": false, @@ -11746,7 +11855,7 @@ }, "x-appwrite": { "method": "getVariable", - "weight": 312, + "weight": 313, "cookies": false, "type": "", "deprecated": false, @@ -11815,7 +11924,7 @@ }, "x-appwrite": { "method": "updateVariable", - "weight": 313, + "weight": 314, "cookies": false, "type": "", "deprecated": false, @@ -11903,7 +12012,7 @@ }, "x-appwrite": { "method": "deleteVariable", - "weight": 314, + "weight": 315, "cookies": false, "type": "", "deprecated": false, @@ -11974,7 +12083,7 @@ }, "x-appwrite": { "method": "query", - "weight": 332, + "weight": 333, "cookies": false, "type": "graphql", "deprecated": false, @@ -12050,7 +12159,7 @@ }, "x-appwrite": { "method": "mutation", - "weight": 331, + "weight": 332, "cookies": false, "type": "graphql", "deprecated": false, @@ -12126,7 +12235,7 @@ }, "x-appwrite": { "method": "get", - "weight": 126, + "weight": 127, "cookies": false, "type": "", "deprecated": false, @@ -12179,7 +12288,7 @@ }, "x-appwrite": { "method": "getAntivirus", - "weight": 148, + "weight": 149, "cookies": false, "type": "", "deprecated": false, @@ -12232,7 +12341,7 @@ }, "x-appwrite": { "method": "getCache", - "weight": 129, + "weight": 130, "cookies": false, "type": "", "deprecated": false, @@ -12285,7 +12394,7 @@ }, "x-appwrite": { "method": "getCertificate", - "weight": 135, + "weight": 136, "cookies": false, "type": "", "deprecated": false, @@ -12347,7 +12456,7 @@ }, "x-appwrite": { "method": "getDB", - "weight": 128, + "weight": 129, "cookies": false, "type": "", "deprecated": false, @@ -12400,7 +12509,7 @@ }, "x-appwrite": { "method": "getPubSub", - "weight": 131, + "weight": 132, "cookies": false, "type": "", "deprecated": false, @@ -12453,7 +12562,7 @@ }, "x-appwrite": { "method": "getQueue", - "weight": 130, + "weight": 131, "cookies": false, "type": "", "deprecated": false, @@ -12506,7 +12615,7 @@ }, "x-appwrite": { "method": "getQueueBuilds", - "weight": 137, + "weight": 138, "cookies": false, "type": "", "deprecated": false, @@ -12570,7 +12679,7 @@ }, "x-appwrite": { "method": "getQueueCertificates", - "weight": 136, + "weight": 137, "cookies": false, "type": "", "deprecated": false, @@ -12634,7 +12743,7 @@ }, "x-appwrite": { "method": "getQueueDatabases", - "weight": 138, + "weight": 139, "cookies": false, "type": "", "deprecated": false, @@ -12707,7 +12816,7 @@ }, "x-appwrite": { "method": "getQueueDeletes", - "weight": 139, + "weight": 140, "cookies": false, "type": "", "deprecated": false, @@ -12771,7 +12880,7 @@ }, "x-appwrite": { "method": "getFailedJobs", - "weight": 149, + "weight": 150, "cookies": false, "type": "", "deprecated": false, @@ -12859,7 +12968,7 @@ }, "x-appwrite": { "method": "getQueueFunctions", - "weight": 143, + "weight": 144, "cookies": false, "type": "", "deprecated": false, @@ -12923,7 +13032,7 @@ }, "x-appwrite": { "method": "getQueueLogs", - "weight": 134, + "weight": 135, "cookies": false, "type": "", "deprecated": false, @@ -12987,7 +13096,7 @@ }, "x-appwrite": { "method": "getQueueMails", - "weight": 140, + "weight": 141, "cookies": false, "type": "", "deprecated": false, @@ -13051,7 +13160,7 @@ }, "x-appwrite": { "method": "getQueueMessaging", - "weight": 141, + "weight": 142, "cookies": false, "type": "", "deprecated": false, @@ -13115,7 +13224,7 @@ }, "x-appwrite": { "method": "getQueueMigrations", - "weight": 142, + "weight": 143, "cookies": false, "type": "", "deprecated": false, @@ -13179,7 +13288,7 @@ }, "x-appwrite": { "method": "getQueueUsage", - "weight": 144, + "weight": 145, "cookies": false, "type": "", "deprecated": false, @@ -13243,7 +13352,7 @@ }, "x-appwrite": { "method": "getQueueUsageDump", - "weight": 145, + "weight": 146, "cookies": false, "type": "", "deprecated": false, @@ -13307,7 +13416,7 @@ }, "x-appwrite": { "method": "getQueueWebhooks", - "weight": 133, + "weight": 134, "cookies": false, "type": "", "deprecated": false, @@ -13371,7 +13480,7 @@ }, "x-appwrite": { "method": "getStorage", - "weight": 147, + "weight": 148, "cookies": false, "type": "", "deprecated": false, @@ -13424,7 +13533,7 @@ }, "x-appwrite": { "method": "getStorageLocal", - "weight": 146, + "weight": 147, "cookies": false, "type": "", "deprecated": false, @@ -13477,7 +13586,7 @@ }, "x-appwrite": { "method": "getTime", - "weight": 132, + "weight": 133, "cookies": false, "type": "", "deprecated": false, @@ -13530,7 +13639,7 @@ }, "x-appwrite": { "method": "get", - "weight": 118, + "weight": 119, "cookies": false, "type": "", "deprecated": false, @@ -13586,7 +13695,7 @@ }, "x-appwrite": { "method": "listCodes", - "weight": 119, + "weight": 120, "cookies": false, "type": "", "deprecated": false, @@ -13642,7 +13751,7 @@ }, "x-appwrite": { "method": "listContinents", - "weight": 123, + "weight": 124, "cookies": false, "type": "", "deprecated": false, @@ -13698,7 +13807,7 @@ }, "x-appwrite": { "method": "listCountries", - "weight": 120, + "weight": 121, "cookies": false, "type": "", "deprecated": false, @@ -13754,7 +13863,7 @@ }, "x-appwrite": { "method": "listCountriesEU", - "weight": 121, + "weight": 122, "cookies": false, "type": "", "deprecated": false, @@ -13810,7 +13919,7 @@ }, "x-appwrite": { "method": "listCountriesPhones", - "weight": 122, + "weight": 123, "cookies": false, "type": "", "deprecated": false, @@ -13866,7 +13975,7 @@ }, "x-appwrite": { "method": "listCurrencies", - "weight": 124, + "weight": 125, "cookies": false, "type": "", "deprecated": false, @@ -13922,7 +14031,7 @@ }, "x-appwrite": { "method": "listLanguages", - "weight": 125, + "weight": 126, "cookies": false, "type": "", "deprecated": false, @@ -13978,7 +14087,7 @@ }, "x-appwrite": { "method": "listMessages", - "weight": 391, + "weight": 392, "cookies": false, "type": "", "deprecated": false, @@ -14055,7 +14164,7 @@ }, "x-appwrite": { "method": "createEmail", - "weight": 388, + "weight": 389, "cookies": false, "type": "", "deprecated": false, @@ -14215,7 +14324,7 @@ }, "x-appwrite": { "method": "updateEmail", - "weight": 395, + "weight": 396, "cookies": false, "type": "", "deprecated": false, @@ -14372,7 +14481,7 @@ }, "x-appwrite": { "method": "createPush", - "weight": 390, + "weight": 391, "cookies": false, "type": "", "deprecated": false, @@ -14547,7 +14656,7 @@ }, "x-appwrite": { "method": "updatePush", - "weight": 397, + "weight": 398, "cookies": false, "type": "", "deprecated": false, @@ -14719,7 +14828,7 @@ }, "x-appwrite": { "method": "createSms", - "weight": 389, + "weight": 390, "cookies": false, "type": "", "deprecated": false, @@ -14839,7 +14948,7 @@ }, "x-appwrite": { "method": "updateSms", - "weight": 396, + "weight": 397, "cookies": false, "type": "", "deprecated": false, @@ -14957,7 +15066,7 @@ }, "x-appwrite": { "method": "getMessage", - "weight": 394, + "weight": 395, "cookies": false, "type": "", "deprecated": false, @@ -15016,7 +15125,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 398, + "weight": 399, "cookies": false, "type": "", "deprecated": false, @@ -15080,7 +15189,7 @@ }, "x-appwrite": { "method": "listMessageLogs", - "weight": 392, + "weight": 393, "cookies": false, "type": "", "deprecated": false, @@ -15156,7 +15265,7 @@ }, "x-appwrite": { "method": "listTargets", - "weight": 393, + "weight": 394, "cookies": false, "type": "", "deprecated": false, @@ -15232,7 +15341,7 @@ }, "x-appwrite": { "method": "listProviders", - "weight": 363, + "weight": 364, "cookies": false, "type": "", "deprecated": false, @@ -15309,7 +15418,7 @@ }, "x-appwrite": { "method": "createApnsProvider", - "weight": 362, + "weight": 363, "cookies": false, "type": "", "deprecated": false, @@ -15426,7 +15535,7 @@ }, "x-appwrite": { "method": "updateApnsProvider", - "weight": 375, + "weight": 376, "cookies": false, "type": "", "deprecated": false, @@ -15541,7 +15650,7 @@ }, "x-appwrite": { "method": "createFcmProvider", - "weight": 361, + "weight": 362, "cookies": false, "type": "", "deprecated": false, @@ -15634,7 +15743,7 @@ }, "x-appwrite": { "method": "updateFcmProvider", - "weight": 374, + "weight": 375, "cookies": false, "type": "", "deprecated": false, @@ -15725,7 +15834,7 @@ }, "x-appwrite": { "method": "createMailgunProvider", - "weight": 353, + "weight": 354, "cookies": false, "type": "", "deprecated": false, @@ -15854,7 +15963,7 @@ }, "x-appwrite": { "method": "updateMailgunProvider", - "weight": 366, + "weight": 367, "cookies": false, "type": "", "deprecated": false, @@ -15981,7 +16090,7 @@ }, "x-appwrite": { "method": "createMsg91Provider", - "weight": 356, + "weight": 357, "cookies": false, "type": "", "deprecated": false, @@ -16086,7 +16195,7 @@ }, "x-appwrite": { "method": "updateMsg91Provider", - "weight": 369, + "weight": 370, "cookies": false, "type": "", "deprecated": false, @@ -16189,7 +16298,7 @@ }, "x-appwrite": { "method": "createSendgridProvider", - "weight": 354, + "weight": 355, "cookies": false, "type": "", "deprecated": false, @@ -16306,7 +16415,7 @@ }, "x-appwrite": { "method": "updateSendgridProvider", - "weight": 367, + "weight": 368, "cookies": false, "type": "", "deprecated": false, @@ -16421,7 +16530,7 @@ }, "x-appwrite": { "method": "createSmtpProvider", - "weight": 355, + "weight": 356, "cookies": false, "type": "", "deprecated": false, @@ -16582,7 +16691,7 @@ }, "x-appwrite": { "method": "updateSmtpProvider", - "weight": 368, + "weight": 369, "cookies": false, "type": "", "deprecated": false, @@ -16740,7 +16849,7 @@ }, "x-appwrite": { "method": "createTelesignProvider", - "weight": 357, + "weight": 358, "cookies": false, "type": "", "deprecated": false, @@ -16845,7 +16954,7 @@ }, "x-appwrite": { "method": "updateTelesignProvider", - "weight": 370, + "weight": 371, "cookies": false, "type": "", "deprecated": false, @@ -16948,7 +17057,7 @@ }, "x-appwrite": { "method": "createTextmagicProvider", - "weight": 358, + "weight": 359, "cookies": false, "type": "", "deprecated": false, @@ -17053,7 +17162,7 @@ }, "x-appwrite": { "method": "updateTextmagicProvider", - "weight": 371, + "weight": 372, "cookies": false, "type": "", "deprecated": false, @@ -17156,7 +17265,7 @@ }, "x-appwrite": { "method": "createTwilioProvider", - "weight": 359, + "weight": 360, "cookies": false, "type": "", "deprecated": false, @@ -17261,7 +17370,7 @@ }, "x-appwrite": { "method": "updateTwilioProvider", - "weight": 372, + "weight": 373, "cookies": false, "type": "", "deprecated": false, @@ -17364,7 +17473,7 @@ }, "x-appwrite": { "method": "createVonageProvider", - "weight": 360, + "weight": 361, "cookies": false, "type": "", "deprecated": false, @@ -17469,7 +17578,7 @@ }, "x-appwrite": { "method": "updateVonageProvider", - "weight": 373, + "weight": 374, "cookies": false, "type": "", "deprecated": false, @@ -17572,7 +17681,7 @@ }, "x-appwrite": { "method": "getProvider", - "weight": 365, + "weight": 366, "cookies": false, "type": "", "deprecated": false, @@ -17631,7 +17740,7 @@ }, "x-appwrite": { "method": "deleteProvider", - "weight": 376, + "weight": 377, "cookies": false, "type": "", "deprecated": false, @@ -17695,7 +17804,7 @@ }, "x-appwrite": { "method": "listProviderLogs", - "weight": 364, + "weight": 365, "cookies": false, "type": "", "deprecated": false, @@ -17771,7 +17880,7 @@ }, "x-appwrite": { "method": "listSubscriberLogs", - "weight": 385, + "weight": 386, "cookies": false, "type": "", "deprecated": false, @@ -17847,7 +17956,7 @@ }, "x-appwrite": { "method": "listTopics", - "weight": 378, + "weight": 379, "cookies": false, "type": "", "deprecated": false, @@ -17922,7 +18031,7 @@ }, "x-appwrite": { "method": "createTopic", - "weight": 377, + "weight": 378, "cookies": false, "type": "", "deprecated": false, @@ -18014,7 +18123,7 @@ }, "x-appwrite": { "method": "getTopic", - "weight": 380, + "weight": 381, "cookies": false, "type": "", "deprecated": false, @@ -18076,7 +18185,7 @@ }, "x-appwrite": { "method": "updateTopic", - "weight": 381, + "weight": 382, "cookies": false, "type": "", "deprecated": false, @@ -18159,7 +18268,7 @@ }, "x-appwrite": { "method": "deleteTopic", - "weight": 382, + "weight": 383, "cookies": false, "type": "", "deprecated": false, @@ -18223,7 +18332,7 @@ }, "x-appwrite": { "method": "listTopicLogs", - "weight": 379, + "weight": 380, "cookies": false, "type": "", "deprecated": false, @@ -18299,7 +18408,7 @@ }, "x-appwrite": { "method": "listSubscribers", - "weight": 384, + "weight": 385, "cookies": false, "type": "", "deprecated": false, @@ -18382,7 +18491,7 @@ }, "x-appwrite": { "method": "createSubscriber", - "weight": 383, + "weight": 384, "cookies": false, "type": "", "deprecated": false, @@ -18474,7 +18583,7 @@ }, "x-appwrite": { "method": "getSubscriber", - "weight": 386, + "weight": 387, "cookies": false, "type": "", "deprecated": false, @@ -18541,7 +18650,7 @@ }, "x-appwrite": { "method": "deleteSubscriber", - "weight": 387, + "weight": 388, "cookies": false, "type": "", "deprecated": false, @@ -18616,7 +18725,7 @@ }, "x-appwrite": { "method": "list", - "weight": 340, + "weight": 341, "cookies": false, "type": "", "deprecated": false, @@ -18691,7 +18800,7 @@ }, "x-appwrite": { "method": "createAppwriteMigration", - "weight": 335, + "weight": 336, "cookies": false, "type": "", "deprecated": false, @@ -18787,7 +18896,7 @@ }, "x-appwrite": { "method": "getAppwriteReport", - "weight": 342, + "weight": 343, "cookies": false, "type": "", "deprecated": false, @@ -18877,7 +18986,7 @@ }, "x-appwrite": { "method": "createFirebaseMigration", - "weight": 337, + "weight": 338, "cookies": false, "type": "", "deprecated": false, @@ -18959,7 +19068,7 @@ }, "x-appwrite": { "method": "deleteFirebaseAuth", - "weight": 348, + "weight": 349, "cookies": false, "type": "", "deprecated": false, @@ -19011,7 +19120,7 @@ }, "x-appwrite": { "method": "createFirebaseOAuthMigration", - "weight": 336, + "weight": 337, "cookies": false, "type": "", "deprecated": false, @@ -19093,7 +19202,7 @@ }, "x-appwrite": { "method": "listFirebaseProjects", - "weight": 347, + "weight": 348, "cookies": false, "type": "", "deprecated": false, @@ -19145,7 +19254,7 @@ }, "x-appwrite": { "method": "getFirebaseReport", - "weight": 343, + "weight": 344, "cookies": false, "type": "", "deprecated": false, @@ -19218,7 +19327,7 @@ }, "x-appwrite": { "method": "getFirebaseReportOAuth", - "weight": 344, + "weight": 345, "cookies": false, "type": "", "deprecated": false, @@ -19291,7 +19400,7 @@ }, "x-appwrite": { "method": "createNHostMigration", - "weight": 339, + "weight": 340, "cookies": false, "type": "", "deprecated": false, @@ -19414,7 +19523,7 @@ }, "x-appwrite": { "method": "getNHostReport", - "weight": 350, + "weight": 351, "cookies": false, "type": "", "deprecated": false, @@ -19536,7 +19645,7 @@ }, "x-appwrite": { "method": "createSupabaseMigration", - "weight": 338, + "weight": 339, "cookies": false, "type": "", "deprecated": false, @@ -19652,7 +19761,7 @@ }, "x-appwrite": { "method": "getSupabaseReport", - "weight": 349, + "weight": 350, "cookies": false, "type": "", "deprecated": false, @@ -19767,7 +19876,7 @@ }, "x-appwrite": { "method": "get", - "weight": 341, + "weight": 342, "cookies": false, "type": "", "deprecated": false, @@ -19827,7 +19936,7 @@ }, "x-appwrite": { "method": "retry", - "weight": 351, + "weight": 352, "cookies": false, "type": "", "deprecated": false, @@ -19882,7 +19991,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 352, + "weight": 353, "cookies": false, "type": "", "deprecated": false, @@ -19944,7 +20053,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 197, + "weight": 198, "cookies": false, "type": "", "deprecated": false, @@ -20030,7 +20139,7 @@ }, "x-appwrite": { "method": "listVariables", - "weight": 199, + "weight": 200, "cookies": false, "type": "", "deprecated": false, @@ -20080,7 +20189,7 @@ }, "x-appwrite": { "method": "createVariable", - "weight": 198, + "weight": 199, "cookies": false, "type": "", "deprecated": false, @@ -20159,7 +20268,7 @@ }, "x-appwrite": { "method": "getVariable", - "weight": 200, + "weight": 201, "cookies": false, "type": "", "deprecated": false, @@ -20219,7 +20328,7 @@ }, "x-appwrite": { "method": "updateVariable", - "weight": 201, + "weight": 202, "cookies": false, "type": "", "deprecated": false, @@ -20298,7 +20407,7 @@ }, "x-appwrite": { "method": "deleteVariable", - "weight": 202, + "weight": 203, "cookies": false, "type": "", "deprecated": false, @@ -20360,7 +20469,7 @@ }, "x-appwrite": { "method": "list", - "weight": 152, + "weight": 153, "cookies": false, "type": "", "deprecated": false, @@ -20433,7 +20542,7 @@ }, "x-appwrite": { "method": "create", - "weight": 151, + "weight": 152, "cookies": false, "type": "", "deprecated": false, @@ -20585,7 +20694,7 @@ }, "x-appwrite": { "method": "get", - "weight": 153, + "weight": 154, "cookies": false, "type": "", "deprecated": false, @@ -20645,7 +20754,7 @@ }, "x-appwrite": { "method": "update", - "weight": 154, + "weight": 155, "cookies": false, "type": "", "deprecated": false, @@ -20772,7 +20881,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 171, + "weight": 172, "cookies": false, "type": "", "deprecated": false, @@ -20834,7 +20943,7 @@ }, "x-appwrite": { "method": "updateApiStatus", - "weight": 158, + "weight": 159, "cookies": false, "type": "", "deprecated": false, @@ -20928,7 +21037,7 @@ }, "x-appwrite": { "method": "updateApiStatusAll", - "weight": 159, + "weight": 160, "cookies": false, "type": "", "deprecated": false, @@ -21008,7 +21117,7 @@ }, "x-appwrite": { "method": "updateAuthDuration", - "weight": 164, + "weight": 165, "cookies": false, "type": "", "deprecated": false, @@ -21088,7 +21197,7 @@ }, "x-appwrite": { "method": "updateAuthLimit", - "weight": 163, + "weight": 164, "cookies": false, "type": "", "deprecated": false, @@ -21168,7 +21277,7 @@ }, "x-appwrite": { "method": "updateAuthSessionsLimit", - "weight": 169, + "weight": 170, "cookies": false, "type": "", "deprecated": false, @@ -21248,7 +21357,7 @@ }, "x-appwrite": { "method": "updateMembershipsPrivacy", - "weight": 162, + "weight": 163, "cookies": false, "type": "", "deprecated": false, @@ -21342,7 +21451,7 @@ }, "x-appwrite": { "method": "updateMockNumbers", - "weight": 170, + "weight": 171, "cookies": false, "type": "", "deprecated": false, @@ -21425,7 +21534,7 @@ }, "x-appwrite": { "method": "updateAuthPasswordDictionary", - "weight": 167, + "weight": 168, "cookies": false, "type": "", "deprecated": false, @@ -21505,7 +21614,7 @@ }, "x-appwrite": { "method": "updateAuthPasswordHistory", - "weight": 166, + "weight": 167, "cookies": false, "type": "", "deprecated": false, @@ -21585,7 +21694,7 @@ }, "x-appwrite": { "method": "updatePersonalDataCheck", - "weight": 168, + "weight": 169, "cookies": false, "type": "", "deprecated": false, @@ -21665,7 +21774,7 @@ }, "x-appwrite": { "method": "updateSessionAlerts", - "weight": 161, + "weight": 162, "cookies": false, "type": "", "deprecated": false, @@ -21745,7 +21854,7 @@ }, "x-appwrite": { "method": "updateAuthStatus", - "weight": 165, + "weight": 166, "cookies": false, "type": "", "deprecated": false, @@ -21844,7 +21953,7 @@ }, "x-appwrite": { "method": "createJWT", - "weight": 183, + "weight": 184, "cookies": false, "type": "", "deprecated": false, @@ -21933,7 +22042,7 @@ }, "x-appwrite": { "method": "listKeys", - "weight": 179, + "weight": 180, "cookies": false, "type": "", "deprecated": false, @@ -21993,7 +22102,7 @@ }, "x-appwrite": { "method": "createKey", - "weight": 178, + "weight": 179, "cookies": false, "type": "", "deprecated": false, @@ -22089,7 +22198,7 @@ }, "x-appwrite": { "method": "getKey", - "weight": 180, + "weight": 181, "cookies": false, "type": "", "deprecated": false, @@ -22157,7 +22266,7 @@ }, "x-appwrite": { "method": "updateKey", - "weight": 181, + "weight": 182, "cookies": false, "type": "", "deprecated": false, @@ -22254,7 +22363,7 @@ }, "x-appwrite": { "method": "deleteKey", - "weight": 182, + "weight": 183, "cookies": false, "type": "", "deprecated": false, @@ -22324,7 +22433,7 @@ }, "x-appwrite": { "method": "updateOAuth2", - "weight": 160, + "weight": 161, "cookies": false, "type": "", "deprecated": false, @@ -22465,7 +22574,7 @@ }, "x-appwrite": { "method": "listPlatforms", - "weight": 185, + "weight": 186, "cookies": false, "type": "", "deprecated": false, @@ -22525,7 +22634,7 @@ }, "x-appwrite": { "method": "createPlatform", - "weight": 184, + "weight": 185, "cookies": false, "type": "", "deprecated": false, @@ -22649,7 +22758,7 @@ }, "x-appwrite": { "method": "getPlatform", - "weight": 186, + "weight": 187, "cookies": false, "type": "", "deprecated": false, @@ -22717,7 +22826,7 @@ }, "x-appwrite": { "method": "updatePlatform", - "weight": 187, + "weight": 188, "cookies": false, "type": "", "deprecated": false, @@ -22816,7 +22925,7 @@ }, "x-appwrite": { "method": "deletePlatform", - "weight": 188, + "weight": 189, "cookies": false, "type": "", "deprecated": false, @@ -22886,7 +22995,7 @@ }, "x-appwrite": { "method": "updateServiceStatus", - "weight": 156, + "weight": 157, "cookies": false, "type": "", "deprecated": false, @@ -22988,7 +23097,7 @@ }, "x-appwrite": { "method": "updateServiceStatusAll", - "weight": 157, + "weight": 158, "cookies": false, "type": "", "deprecated": false, @@ -23068,7 +23177,7 @@ }, "x-appwrite": { "method": "updateSmtp", - "weight": 189, + "weight": 190, "cookies": false, "type": "", "deprecated": false, @@ -23197,7 +23306,7 @@ }, "x-appwrite": { "method": "createSmtpTest", - "weight": 190, + "weight": 191, "cookies": false, "type": "", "deprecated": false, @@ -23337,7 +23446,7 @@ }, "x-appwrite": { "method": "updateTeam", - "weight": 155, + "weight": 156, "cookies": false, "type": "", "deprecated": false, @@ -23417,7 +23526,7 @@ }, "x-appwrite": { "method": "getEmailTemplate", - "weight": 192, + "weight": 193, "cookies": false, "type": "", "deprecated": false, @@ -23639,7 +23748,7 @@ }, "x-appwrite": { "method": "updateEmailTemplate", - "weight": 194, + "weight": 195, "cookies": false, "type": "", "deprecated": false, @@ -23904,7 +24013,7 @@ }, "x-appwrite": { "method": "deleteEmailTemplate", - "weight": 196, + "weight": 197, "cookies": false, "type": "", "deprecated": false, @@ -24128,7 +24237,7 @@ }, "x-appwrite": { "method": "getSmsTemplate", - "weight": 191, + "weight": 192, "cookies": false, "type": "", "deprecated": false, @@ -24347,7 +24456,7 @@ }, "x-appwrite": { "method": "updateSmsTemplate", - "weight": 193, + "weight": 194, "cookies": false, "type": "", "deprecated": false, @@ -24584,7 +24693,7 @@ }, "x-appwrite": { "method": "deleteSmsTemplate", - "weight": 195, + "weight": 196, "cookies": false, "type": "", "deprecated": false, @@ -24805,7 +24914,7 @@ }, "x-appwrite": { "method": "listWebhooks", - "weight": 173, + "weight": 174, "cookies": false, "type": "", "deprecated": false, @@ -24865,7 +24974,7 @@ }, "x-appwrite": { "method": "createWebhook", - "weight": 172, + "weight": 173, "cookies": false, "type": "", "deprecated": false, @@ -24987,7 +25096,7 @@ }, "x-appwrite": { "method": "getWebhook", - "weight": 174, + "weight": 175, "cookies": false, "type": "", "deprecated": false, @@ -25055,7 +25164,7 @@ }, "x-appwrite": { "method": "updateWebhook", - "weight": 175, + "weight": 176, "cookies": false, "type": "", "deprecated": false, @@ -25178,7 +25287,7 @@ }, "x-appwrite": { "method": "deleteWebhook", - "weight": 177, + "weight": 178, "cookies": false, "type": "", "deprecated": false, @@ -25248,7 +25357,7 @@ }, "x-appwrite": { "method": "updateWebhookSignature", - "weight": 176, + "weight": 177, "cookies": false, "type": "", "deprecated": false, @@ -25318,7 +25427,7 @@ }, "x-appwrite": { "method": "listRules", - "weight": 318, + "weight": 319, "cookies": false, "type": "", "deprecated": false, @@ -25391,7 +25500,7 @@ }, "x-appwrite": { "method": "createRule", - "weight": 317, + "weight": 318, "cookies": false, "type": "", "deprecated": false, @@ -25482,7 +25591,7 @@ }, "x-appwrite": { "method": "getRule", - "weight": 319, + "weight": 320, "cookies": false, "type": "", "deprecated": false, @@ -25537,7 +25646,7 @@ }, "x-appwrite": { "method": "deleteRule", - "weight": 320, + "weight": 321, "cookies": false, "type": "", "deprecated": false, @@ -25599,7 +25708,7 @@ }, "x-appwrite": { "method": "updateRuleVerification", - "weight": 321, + "weight": 322, "cookies": false, "type": "", "deprecated": false, @@ -25661,7 +25770,7 @@ }, "x-appwrite": { "method": "listBuckets", - "weight": 204, + "weight": 205, "cookies": false, "type": "", "deprecated": false, @@ -25735,7 +25844,7 @@ }, "x-appwrite": { "method": "createBucket", - "weight": 203, + "weight": 204, "cookies": false, "type": "", "deprecated": false, @@ -25876,7 +25985,7 @@ }, "x-appwrite": { "method": "getBucket", - "weight": 205, + "weight": 206, "cookies": false, "type": "", "deprecated": false, @@ -25937,7 +26046,7 @@ }, "x-appwrite": { "method": "updateBucket", - "weight": 206, + "weight": 207, "cookies": false, "type": "", "deprecated": false, @@ -26072,7 +26181,7 @@ }, "x-appwrite": { "method": "deleteBucket", - "weight": 207, + "weight": 208, "cookies": false, "type": "", "deprecated": false, @@ -26135,7 +26244,7 @@ }, "x-appwrite": { "method": "listFiles", - "weight": 209, + "weight": 210, "cookies": false, "type": "", "deprecated": false, @@ -26220,7 +26329,7 @@ }, "x-appwrite": { "method": "createFile", - "weight": 208, + "weight": 209, "cookies": false, "type": "upload", "deprecated": false, @@ -26314,7 +26423,7 @@ }, "x-appwrite": { "method": "getFile", - "weight": 210, + "weight": 211, "cookies": false, "type": "", "deprecated": false, @@ -26386,7 +26495,7 @@ }, "x-appwrite": { "method": "updateFile", - "weight": 215, + "weight": 216, "cookies": false, "type": "", "deprecated": false, @@ -26477,7 +26586,7 @@ }, "x-appwrite": { "method": "deleteFile", - "weight": 216, + "weight": 217, "cookies": false, "type": "", "deprecated": false, @@ -26551,7 +26660,7 @@ }, "x-appwrite": { "method": "getFileDownload", - "weight": 212, + "weight": 213, "cookies": false, "type": "location", "deprecated": false, @@ -26625,7 +26734,7 @@ }, "x-appwrite": { "method": "getFilePreview", - "weight": 211, + "weight": 212, "cookies": false, "type": "location", "deprecated": false, @@ -26826,7 +26935,7 @@ }, "x-appwrite": { "method": "getFileView", - "weight": 213, + "weight": 214, "cookies": false, "type": "location", "deprecated": false, @@ -26900,7 +27009,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 217, + "weight": 218, "cookies": false, "type": "", "deprecated": false, @@ -26974,7 +27083,7 @@ }, "x-appwrite": { "method": "getBucketUsage", - "weight": 218, + "weight": 219, "cookies": false, "type": "", "deprecated": false, @@ -27056,7 +27165,7 @@ }, "x-appwrite": { "method": "list", - "weight": 220, + "weight": 221, "cookies": false, "type": "", "deprecated": false, @@ -27133,7 +27242,7 @@ }, "x-appwrite": { "method": "create", - "weight": 219, + "weight": 220, "cookies": false, "type": "", "deprecated": false, @@ -27227,7 +27336,7 @@ }, "x-appwrite": { "method": "get", - "weight": 221, + "weight": 222, "cookies": false, "type": "", "deprecated": false, @@ -27291,7 +27400,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 223, + "weight": 224, "cookies": false, "type": "", "deprecated": false, @@ -27368,7 +27477,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 225, + "weight": 226, "cookies": false, "type": "", "deprecated": false, @@ -27434,7 +27543,7 @@ }, "x-appwrite": { "method": "listLogs", - "weight": 232, + "weight": 233, "cookies": false, "type": "", "deprecated": false, @@ -27508,7 +27617,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 227, + "weight": 228, "cookies": false, "type": "", "deprecated": false, @@ -27593,7 +27702,7 @@ }, "x-appwrite": { "method": "createMembership", - "weight": 226, + "weight": 227, "cookies": false, "type": "", "deprecated": false, @@ -27710,7 +27819,7 @@ }, "x-appwrite": { "method": "getMembership", - "weight": 228, + "weight": 229, "cookies": false, "type": "", "deprecated": false, @@ -27782,7 +27891,7 @@ }, "x-appwrite": { "method": "updateMembership", - "weight": 229, + "weight": 230, "cookies": false, "type": "", "deprecated": false, @@ -27870,7 +27979,7 @@ }, "x-appwrite": { "method": "deleteMembership", - "weight": 231, + "weight": 232, "cookies": false, "type": "", "deprecated": false, @@ -27944,7 +28053,7 @@ }, "x-appwrite": { "method": "updateMembershipStatus", - "weight": 230, + "weight": 231, "cookies": false, "type": "", "deprecated": false, @@ -28041,7 +28150,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 222, + "weight": 223, "cookies": false, "type": "", "deprecated": false, @@ -28103,7 +28212,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 224, + "weight": 225, "cookies": false, "type": "", "deprecated": false, @@ -28185,7 +28294,7 @@ }, "x-appwrite": { "method": "list", - "weight": 242, + "weight": 243, "cookies": false, "type": "", "deprecated": false, @@ -28259,7 +28368,7 @@ }, "x-appwrite": { "method": "create", - "weight": 233, + "weight": 234, "cookies": false, "type": "", "deprecated": false, @@ -28356,7 +28465,7 @@ }, "x-appwrite": { "method": "createArgon2User", - "weight": 236, + "weight": 237, "cookies": false, "type": "", "deprecated": false, @@ -28449,7 +28558,7 @@ }, "x-appwrite": { "method": "createBcryptUser", - "weight": 234, + "weight": 235, "cookies": false, "type": "", "deprecated": false, @@ -28542,7 +28651,7 @@ }, "x-appwrite": { "method": "listIdentities", - "weight": 250, + "weight": 251, "cookies": false, "type": "", "deprecated": false, @@ -28613,7 +28722,7 @@ }, "x-appwrite": { "method": "deleteIdentity", - "weight": 273, + "weight": 274, "cookies": false, "type": "", "deprecated": false, @@ -28676,7 +28785,7 @@ }, "x-appwrite": { "method": "createMD5User", - "weight": 235, + "weight": 236, "cookies": false, "type": "", "deprecated": false, @@ -28769,7 +28878,7 @@ }, "x-appwrite": { "method": "createPHPassUser", - "weight": 238, + "weight": 239, "cookies": false, "type": "", "deprecated": false, @@ -28862,7 +28971,7 @@ }, "x-appwrite": { "method": "createScryptUser", - "weight": 239, + "weight": 240, "cookies": false, "type": "", "deprecated": false, @@ -28990,7 +29099,7 @@ }, "x-appwrite": { "method": "createScryptModifiedUser", - "weight": 240, + "weight": 241, "cookies": false, "type": "", "deprecated": false, @@ -29104,7 +29213,7 @@ }, "x-appwrite": { "method": "createSHAUser", - "weight": 237, + "weight": 238, "cookies": false, "type": "", "deprecated": false, @@ -29218,7 +29327,7 @@ }, "x-appwrite": { "method": "getUsage", - "weight": 275, + "weight": 276, "cookies": false, "type": "", "deprecated": false, @@ -29292,7 +29401,7 @@ }, "x-appwrite": { "method": "get", - "weight": 243, + "weight": 244, "cookies": false, "type": "", "deprecated": false, @@ -29348,7 +29457,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 271, + "weight": 272, "cookies": false, "type": "", "deprecated": false, @@ -29411,7 +29520,7 @@ }, "x-appwrite": { "method": "updateEmail", - "weight": 256, + "weight": 257, "cookies": false, "type": "", "deprecated": false, @@ -29492,7 +29601,7 @@ }, "x-appwrite": { "method": "createJWT", - "weight": 274, + "weight": 275, "cookies": false, "type": "", "deprecated": false, @@ -29576,7 +29685,7 @@ }, "x-appwrite": { "method": "updateLabels", - "weight": 252, + "weight": 253, "cookies": false, "type": "", "deprecated": false, @@ -29660,7 +29769,7 @@ }, "x-appwrite": { "method": "listLogs", - "weight": 248, + "weight": 249, "cookies": false, "type": "", "deprecated": false, @@ -29735,7 +29844,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 247, + "weight": 248, "cookies": false, "type": "", "deprecated": false, @@ -29798,7 +29907,7 @@ }, "x-appwrite": { "method": "updateMfa", - "weight": 261, + "weight": 262, "cookies": false, "type": "", "deprecated": false, @@ -29879,7 +29988,7 @@ }, "x-appwrite": { "method": "deleteMfaAuthenticator", - "weight": 266, + "weight": 267, "cookies": false, "type": "", "deprecated": false, @@ -29955,7 +30064,7 @@ }, "x-appwrite": { "method": "listMfaFactors", - "weight": 262, + "weight": 263, "cookies": false, "type": "", "deprecated": false, @@ -30018,7 +30127,7 @@ }, "x-appwrite": { "method": "getMfaRecoveryCodes", - "weight": 263, + "weight": 264, "cookies": false, "type": "", "deprecated": false, @@ -30079,7 +30188,7 @@ }, "x-appwrite": { "method": "updateMfaRecoveryCodes", - "weight": 265, + "weight": 266, "cookies": false, "type": "", "deprecated": false, @@ -30140,7 +30249,7 @@ }, "x-appwrite": { "method": "createMfaRecoveryCodes", - "weight": 264, + "weight": 265, "cookies": false, "type": "", "deprecated": false, @@ -30203,7 +30312,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 254, + "weight": 255, "cookies": false, "type": "", "deprecated": false, @@ -30284,7 +30393,7 @@ }, "x-appwrite": { "method": "updatePassword", - "weight": 255, + "weight": 256, "cookies": false, "type": "", "deprecated": false, @@ -30365,7 +30474,7 @@ }, "x-appwrite": { "method": "updatePhone", - "weight": 257, + "weight": 258, "cookies": false, "type": "", "deprecated": false, @@ -30446,7 +30555,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 244, + "weight": 245, "cookies": false, "type": "", "deprecated": false, @@ -30507,7 +30616,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 259, + "weight": 260, "cookies": false, "type": "", "deprecated": false, @@ -30588,7 +30697,7 @@ }, "x-appwrite": { "method": "listSessions", - "weight": 246, + "weight": 247, "cookies": false, "type": "", "deprecated": false, @@ -30649,7 +30758,7 @@ }, "x-appwrite": { "method": "createSession", - "weight": 267, + "weight": 268, "cookies": false, "type": "", "deprecated": false, @@ -30705,7 +30814,7 @@ }, "x-appwrite": { "method": "deleteSessions", - "weight": 270, + "weight": 271, "cookies": false, "type": "", "deprecated": false, @@ -30763,7 +30872,7 @@ }, "x-appwrite": { "method": "deleteSession", - "weight": 269, + "weight": 270, "cookies": false, "type": "", "deprecated": false, @@ -30834,7 +30943,7 @@ }, "x-appwrite": { "method": "updateStatus", - "weight": 251, + "weight": 252, "cookies": false, "type": "", "deprecated": false, @@ -30915,7 +31024,7 @@ }, "x-appwrite": { "method": "listTargets", - "weight": 249, + "weight": 250, "cookies": false, "type": "", "deprecated": false, @@ -30989,7 +31098,7 @@ }, "x-appwrite": { "method": "createTarget", - "weight": 241, + "weight": 242, "cookies": false, "type": "", "deprecated": false, @@ -31104,7 +31213,7 @@ }, "x-appwrite": { "method": "getTarget", - "weight": 245, + "weight": 246, "cookies": false, "type": "", "deprecated": false, @@ -31174,7 +31283,7 @@ }, "x-appwrite": { "method": "updateTarget", - "weight": 260, + "weight": 261, "cookies": false, "type": "", "deprecated": false, @@ -31268,7 +31377,7 @@ }, "x-appwrite": { "method": "deleteTarget", - "weight": 272, + "weight": 273, "cookies": false, "type": "", "deprecated": false, @@ -31340,7 +31449,7 @@ }, "x-appwrite": { "method": "createToken", - "weight": 268, + "weight": 269, "cookies": false, "type": "", "deprecated": false, @@ -31424,7 +31533,7 @@ }, "x-appwrite": { "method": "updateEmailVerification", - "weight": 258, + "weight": 259, "cookies": false, "type": "", "deprecated": false, @@ -31505,7 +31614,7 @@ }, "x-appwrite": { "method": "updatePhoneVerification", - "weight": 253, + "weight": 254, "cookies": false, "type": "", "deprecated": false, @@ -31586,7 +31695,7 @@ }, "x-appwrite": { "method": "listRepositories", - "weight": 280, + "weight": 281, "cookies": false, "type": "", "deprecated": false, @@ -31655,7 +31764,7 @@ }, "x-appwrite": { "method": "createRepository", - "weight": 281, + "weight": 282, "cookies": false, "type": "", "deprecated": false, @@ -31742,7 +31851,7 @@ }, "x-appwrite": { "method": "getRepository", - "weight": 282, + "weight": 283, "cookies": false, "type": "", "deprecated": false, @@ -31812,7 +31921,7 @@ }, "x-appwrite": { "method": "listRepositoryBranches", - "weight": 283, + "weight": 284, "cookies": false, "type": "", "deprecated": false, @@ -31882,7 +31991,7 @@ }, "x-appwrite": { "method": "getRepositoryContents", - "weight": 278, + "weight": 279, "cookies": false, "type": "", "deprecated": false, @@ -31961,7 +32070,7 @@ }, "x-appwrite": { "method": "createRepositoryDetection", - "weight": 279, + "weight": 280, "cookies": false, "type": "", "deprecated": false, @@ -32041,7 +32150,7 @@ }, "x-appwrite": { "method": "updateExternalDeployments", - "weight": 288, + "weight": 289, "cookies": false, "type": "", "deprecated": false, @@ -32129,7 +32238,7 @@ }, "x-appwrite": { "method": "listInstallations", - "weight": 285, + "weight": 286, "cookies": false, "type": "", "deprecated": false, @@ -32204,7 +32313,7 @@ }, "x-appwrite": { "method": "getInstallation", - "weight": 286, + "weight": 287, "cookies": false, "type": "", "deprecated": false, @@ -32259,7 +32368,7 @@ }, "x-appwrite": { "method": "deleteInstallation", - "weight": 287, + "weight": 288, "cookies": false, "type": "", "deprecated": false, diff --git a/app/config/specs/swagger2-latest-server.json b/app/config/specs/swagger2-latest-server.json index 09aad57d90..b9c2e86451 100644 --- a/app/config/specs/swagger2-latest-server.json +++ b/app/config/specs/swagger2-latest-server.json @@ -7875,28 +7875,137 @@ } ] }, + "patch": { + "summary": "Update documents", + "operationId": "databasesUpdateDocuments", + "consumes": [ + "application\/json" + ], + "produces": [ + "application\/json" + ], + "tags": [ + "databases" + ], + "description": "Update all documents that match your queries, If none are submitted then all documents are updated. Using the patch method you can pass only specific fields that will get updated.", + "responses": { + "200": { + "description": "Documents List", + "schema": { + "$ref": "#\/definitions\/documentList" + } + } + }, + "x-appwrite": { + "method": "updateDocuments", + "weight": 113, + "cookies": false, + "type": "", + "deprecated": false, + "demo": "databases\/update-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-documents.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "client", + "server", + "server" + ], + "packaging": false, + "offline-model": "\/databases\/{databaseId}\/collections\/{collectionId}\/documents", + "offline-key": "", + "offline-response-key": "$id", + "auth": { + "Project": [], + "Session": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "type": "string", + "x-example": "", + "in": "path" + }, + { + "name": "payload", + "in": "body", + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "default": [], + "x-example": "{}" + }, + "permissions": { + "type": "array", + "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "default": null, + "x-example": "[\"read(\"any\")\"]", + "items": { + "type": "string" + } + }, + "queries": { + "type": "array", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + } + } + } + } + ] + }, "delete": { "summary": "Delete documents", "operationId": "databasesDeleteDocuments", "consumes": [ "application\/json" ], - "produces": [], + "produces": [ + "application\/json" + ], "tags": [ "databases" ], "description": "Bulk delete documents using queries, if no queries are passed then all documents are deleted.", "responses": { "200": { - "description": "File", + "description": "Documents List", "schema": { - "type": "file" + "$ref": "#\/definitions\/documentList" } } }, "x-appwrite": { "method": "deleteDocuments", - "weight": 114, + "weight": 115, "cookies": false, "type": "", "deprecated": false, @@ -8185,7 +8294,7 @@ }, "x-appwrite": { "method": "deleteDocument", - "weight": 113, + "weight": 114, "cookies": false, "type": "", "deprecated": false, @@ -8625,7 +8734,7 @@ }, "x-appwrite": { "method": "list", - "weight": 290, + "weight": 291, "cookies": false, "type": "", "deprecated": false, @@ -8700,7 +8809,7 @@ }, "x-appwrite": { "method": "create", - "weight": 289, + "weight": 290, "cookies": false, "type": "", "deprecated": false, @@ -8810,7 +8919,8 @@ "bun-1.0", "bun-1.1", "go-1.23", - "static-1" + "static-1", + "flutter-3.24" ], "x-enum-name": null, "x-enum-keys": [] @@ -8973,7 +9083,7 @@ }, "x-appwrite": { "method": "listRuntimes", - "weight": 291, + "weight": 292, "cookies": false, "type": "", "deprecated": false, @@ -9027,7 +9137,7 @@ }, "x-appwrite": { "method": "listSpecifications", - "weight": 292, + "weight": 293, "cookies": false, "type": "", "deprecated": false, @@ -9082,7 +9192,7 @@ }, "x-appwrite": { "method": "get", - "weight": 293, + "weight": 294, "cookies": false, "type": "", "deprecated": false, @@ -9144,7 +9254,7 @@ }, "x-appwrite": { "method": "update", - "weight": 296, + "weight": 297, "cookies": false, "type": "", "deprecated": false, @@ -9256,7 +9366,8 @@ "bun-1.0", "bun-1.1", "go-1.23", - "static-1" + "static-1", + "flutter-3.24" ], "x-enum-name": null, "x-enum-keys": [] @@ -9387,7 +9498,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 299, + "weight": 300, "cookies": false, "type": "", "deprecated": false, @@ -9451,7 +9562,7 @@ }, "x-appwrite": { "method": "listDeployments", - "weight": 301, + "weight": 302, "cookies": false, "type": "", "deprecated": false, @@ -9534,7 +9645,7 @@ }, "x-appwrite": { "method": "createDeployment", - "weight": 300, + "weight": 301, "cookies": false, "type": "upload", "deprecated": false, @@ -9629,7 +9740,7 @@ }, "x-appwrite": { "method": "getDeployment", - "weight": 302, + "weight": 303, "cookies": false, "type": "", "deprecated": false, @@ -9699,7 +9810,7 @@ }, "x-appwrite": { "method": "updateDeployment", - "weight": 298, + "weight": 299, "cookies": false, "type": "", "deprecated": false, @@ -9764,7 +9875,7 @@ }, "x-appwrite": { "method": "deleteDeployment", - "weight": 303, + "weight": 304, "cookies": false, "type": "", "deprecated": false, @@ -9831,7 +9942,7 @@ }, "x-appwrite": { "method": "createBuild", - "weight": 304, + "weight": 305, "cookies": false, "type": "", "deprecated": false, @@ -9916,7 +10027,7 @@ }, "x-appwrite": { "method": "updateDeploymentBuild", - "weight": 305, + "weight": 306, "cookies": false, "type": "", "deprecated": false, @@ -9988,7 +10099,7 @@ }, "x-appwrite": { "method": "getDeploymentDownload", - "weight": 297, + "weight": 298, "cookies": false, "type": "location", "deprecated": false, @@ -10062,7 +10173,7 @@ }, "x-appwrite": { "method": "listExecutions", - "weight": 307, + "weight": 308, "cookies": false, "type": "", "deprecated": false, @@ -10149,7 +10260,7 @@ }, "x-appwrite": { "method": "createExecution", - "weight": 306, + "weight": 307, "cookies": false, "type": "", "deprecated": false, @@ -10272,7 +10383,7 @@ }, "x-appwrite": { "method": "getExecution", - "weight": 308, + "weight": 309, "cookies": false, "type": "", "deprecated": false, @@ -10341,7 +10452,7 @@ }, "x-appwrite": { "method": "deleteExecution", - "weight": 309, + "weight": 310, "cookies": false, "type": "", "deprecated": false, @@ -10413,7 +10524,7 @@ }, "x-appwrite": { "method": "listVariables", - "weight": 311, + "weight": 312, "cookies": false, "type": "", "deprecated": false, @@ -10475,7 +10586,7 @@ }, "x-appwrite": { "method": "createVariable", - "weight": 310, + "weight": 311, "cookies": false, "type": "", "deprecated": false, @@ -10564,7 +10675,7 @@ }, "x-appwrite": { "method": "getVariable", - "weight": 312, + "weight": 313, "cookies": false, "type": "", "deprecated": false, @@ -10634,7 +10745,7 @@ }, "x-appwrite": { "method": "updateVariable", - "weight": 313, + "weight": 314, "cookies": false, "type": "", "deprecated": false, @@ -10723,7 +10834,7 @@ }, "x-appwrite": { "method": "deleteVariable", - "weight": 314, + "weight": 315, "cookies": false, "type": "", "deprecated": false, @@ -10795,7 +10906,7 @@ }, "x-appwrite": { "method": "query", - "weight": 332, + "weight": 333, "cookies": false, "type": "graphql", "deprecated": false, @@ -10873,7 +10984,7 @@ }, "x-appwrite": { "method": "mutation", - "weight": 331, + "weight": 332, "cookies": false, "type": "graphql", "deprecated": false, @@ -10951,7 +11062,7 @@ }, "x-appwrite": { "method": "get", - "weight": 126, + "weight": 127, "cookies": false, "type": "", "deprecated": false, @@ -11005,7 +11116,7 @@ }, "x-appwrite": { "method": "getAntivirus", - "weight": 148, + "weight": 149, "cookies": false, "type": "", "deprecated": false, @@ -11059,7 +11170,7 @@ }, "x-appwrite": { "method": "getCache", - "weight": 129, + "weight": 130, "cookies": false, "type": "", "deprecated": false, @@ -11113,7 +11224,7 @@ }, "x-appwrite": { "method": "getCertificate", - "weight": 135, + "weight": 136, "cookies": false, "type": "", "deprecated": false, @@ -11176,7 +11287,7 @@ }, "x-appwrite": { "method": "getDB", - "weight": 128, + "weight": 129, "cookies": false, "type": "", "deprecated": false, @@ -11230,7 +11341,7 @@ }, "x-appwrite": { "method": "getPubSub", - "weight": 131, + "weight": 132, "cookies": false, "type": "", "deprecated": false, @@ -11284,7 +11395,7 @@ }, "x-appwrite": { "method": "getQueue", - "weight": 130, + "weight": 131, "cookies": false, "type": "", "deprecated": false, @@ -11338,7 +11449,7 @@ }, "x-appwrite": { "method": "getQueueBuilds", - "weight": 137, + "weight": 138, "cookies": false, "type": "", "deprecated": false, @@ -11403,7 +11514,7 @@ }, "x-appwrite": { "method": "getQueueCertificates", - "weight": 136, + "weight": 137, "cookies": false, "type": "", "deprecated": false, @@ -11468,7 +11579,7 @@ }, "x-appwrite": { "method": "getQueueDatabases", - "weight": 138, + "weight": 139, "cookies": false, "type": "", "deprecated": false, @@ -11542,7 +11653,7 @@ }, "x-appwrite": { "method": "getQueueDeletes", - "weight": 139, + "weight": 140, "cookies": false, "type": "", "deprecated": false, @@ -11607,7 +11718,7 @@ }, "x-appwrite": { "method": "getFailedJobs", - "weight": 149, + "weight": 150, "cookies": false, "type": "", "deprecated": false, @@ -11696,7 +11807,7 @@ }, "x-appwrite": { "method": "getQueueFunctions", - "weight": 143, + "weight": 144, "cookies": false, "type": "", "deprecated": false, @@ -11761,7 +11872,7 @@ }, "x-appwrite": { "method": "getQueueLogs", - "weight": 134, + "weight": 135, "cookies": false, "type": "", "deprecated": false, @@ -11826,7 +11937,7 @@ }, "x-appwrite": { "method": "getQueueMails", - "weight": 140, + "weight": 141, "cookies": false, "type": "", "deprecated": false, @@ -11891,7 +12002,7 @@ }, "x-appwrite": { "method": "getQueueMessaging", - "weight": 141, + "weight": 142, "cookies": false, "type": "", "deprecated": false, @@ -11956,7 +12067,7 @@ }, "x-appwrite": { "method": "getQueueMigrations", - "weight": 142, + "weight": 143, "cookies": false, "type": "", "deprecated": false, @@ -12021,7 +12132,7 @@ }, "x-appwrite": { "method": "getQueueUsage", - "weight": 144, + "weight": 145, "cookies": false, "type": "", "deprecated": false, @@ -12086,7 +12197,7 @@ }, "x-appwrite": { "method": "getQueueUsageDump", - "weight": 145, + "weight": 146, "cookies": false, "type": "", "deprecated": false, @@ -12151,7 +12262,7 @@ }, "x-appwrite": { "method": "getQueueWebhooks", - "weight": 133, + "weight": 134, "cookies": false, "type": "", "deprecated": false, @@ -12216,7 +12327,7 @@ }, "x-appwrite": { "method": "getStorage", - "weight": 147, + "weight": 148, "cookies": false, "type": "", "deprecated": false, @@ -12270,7 +12381,7 @@ }, "x-appwrite": { "method": "getStorageLocal", - "weight": 146, + "weight": 147, "cookies": false, "type": "", "deprecated": false, @@ -12324,7 +12435,7 @@ }, "x-appwrite": { "method": "getTime", - "weight": 132, + "weight": 133, "cookies": false, "type": "", "deprecated": false, @@ -12378,7 +12489,7 @@ }, "x-appwrite": { "method": "get", - "weight": 118, + "weight": 119, "cookies": false, "type": "", "deprecated": false, @@ -12436,7 +12547,7 @@ }, "x-appwrite": { "method": "listCodes", - "weight": 119, + "weight": 120, "cookies": false, "type": "", "deprecated": false, @@ -12494,7 +12605,7 @@ }, "x-appwrite": { "method": "listContinents", - "weight": 123, + "weight": 124, "cookies": false, "type": "", "deprecated": false, @@ -12552,7 +12663,7 @@ }, "x-appwrite": { "method": "listCountries", - "weight": 120, + "weight": 121, "cookies": false, "type": "", "deprecated": false, @@ -12610,7 +12721,7 @@ }, "x-appwrite": { "method": "listCountriesEU", - "weight": 121, + "weight": 122, "cookies": false, "type": "", "deprecated": false, @@ -12668,7 +12779,7 @@ }, "x-appwrite": { "method": "listCountriesPhones", - "weight": 122, + "weight": 123, "cookies": false, "type": "", "deprecated": false, @@ -12726,7 +12837,7 @@ }, "x-appwrite": { "method": "listCurrencies", - "weight": 124, + "weight": 125, "cookies": false, "type": "", "deprecated": false, @@ -12784,7 +12895,7 @@ }, "x-appwrite": { "method": "listLanguages", - "weight": 125, + "weight": 126, "cookies": false, "type": "", "deprecated": false, @@ -12842,7 +12953,7 @@ }, "x-appwrite": { "method": "listMessages", - "weight": 391, + "weight": 392, "cookies": false, "type": "", "deprecated": false, @@ -12920,7 +13031,7 @@ }, "x-appwrite": { "method": "createEmail", - "weight": 388, + "weight": 389, "cookies": false, "type": "", "deprecated": false, @@ -13081,7 +13192,7 @@ }, "x-appwrite": { "method": "updateEmail", - "weight": 395, + "weight": 396, "cookies": false, "type": "", "deprecated": false, @@ -13239,7 +13350,7 @@ }, "x-appwrite": { "method": "createPush", - "weight": 390, + "weight": 391, "cookies": false, "type": "", "deprecated": false, @@ -13415,7 +13526,7 @@ }, "x-appwrite": { "method": "updatePush", - "weight": 397, + "weight": 398, "cookies": false, "type": "", "deprecated": false, @@ -13588,7 +13699,7 @@ }, "x-appwrite": { "method": "createSms", - "weight": 389, + "weight": 390, "cookies": false, "type": "", "deprecated": false, @@ -13709,7 +13820,7 @@ }, "x-appwrite": { "method": "updateSms", - "weight": 396, + "weight": 397, "cookies": false, "type": "", "deprecated": false, @@ -13828,7 +13939,7 @@ }, "x-appwrite": { "method": "getMessage", - "weight": 394, + "weight": 395, "cookies": false, "type": "", "deprecated": false, @@ -13888,7 +13999,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 398, + "weight": 399, "cookies": false, "type": "", "deprecated": false, @@ -13953,7 +14064,7 @@ }, "x-appwrite": { "method": "listMessageLogs", - "weight": 392, + "weight": 393, "cookies": false, "type": "", "deprecated": false, @@ -14030,7 +14141,7 @@ }, "x-appwrite": { "method": "listTargets", - "weight": 393, + "weight": 394, "cookies": false, "type": "", "deprecated": false, @@ -14107,7 +14218,7 @@ }, "x-appwrite": { "method": "listProviders", - "weight": 363, + "weight": 364, "cookies": false, "type": "", "deprecated": false, @@ -14185,7 +14296,7 @@ }, "x-appwrite": { "method": "createApnsProvider", - "weight": 362, + "weight": 363, "cookies": false, "type": "", "deprecated": false, @@ -14303,7 +14414,7 @@ }, "x-appwrite": { "method": "updateApnsProvider", - "weight": 375, + "weight": 376, "cookies": false, "type": "", "deprecated": false, @@ -14419,7 +14530,7 @@ }, "x-appwrite": { "method": "createFcmProvider", - "weight": 361, + "weight": 362, "cookies": false, "type": "", "deprecated": false, @@ -14513,7 +14624,7 @@ }, "x-appwrite": { "method": "updateFcmProvider", - "weight": 374, + "weight": 375, "cookies": false, "type": "", "deprecated": false, @@ -14605,7 +14716,7 @@ }, "x-appwrite": { "method": "createMailgunProvider", - "weight": 353, + "weight": 354, "cookies": false, "type": "", "deprecated": false, @@ -14735,7 +14846,7 @@ }, "x-appwrite": { "method": "updateMailgunProvider", - "weight": 366, + "weight": 367, "cookies": false, "type": "", "deprecated": false, @@ -14863,7 +14974,7 @@ }, "x-appwrite": { "method": "createMsg91Provider", - "weight": 356, + "weight": 357, "cookies": false, "type": "", "deprecated": false, @@ -14969,7 +15080,7 @@ }, "x-appwrite": { "method": "updateMsg91Provider", - "weight": 369, + "weight": 370, "cookies": false, "type": "", "deprecated": false, @@ -15073,7 +15184,7 @@ }, "x-appwrite": { "method": "createSendgridProvider", - "weight": 354, + "weight": 355, "cookies": false, "type": "", "deprecated": false, @@ -15191,7 +15302,7 @@ }, "x-appwrite": { "method": "updateSendgridProvider", - "weight": 367, + "weight": 368, "cookies": false, "type": "", "deprecated": false, @@ -15307,7 +15418,7 @@ }, "x-appwrite": { "method": "createSmtpProvider", - "weight": 355, + "weight": 356, "cookies": false, "type": "", "deprecated": false, @@ -15469,7 +15580,7 @@ }, "x-appwrite": { "method": "updateSmtpProvider", - "weight": 368, + "weight": 369, "cookies": false, "type": "", "deprecated": false, @@ -15628,7 +15739,7 @@ }, "x-appwrite": { "method": "createTelesignProvider", - "weight": 357, + "weight": 358, "cookies": false, "type": "", "deprecated": false, @@ -15734,7 +15845,7 @@ }, "x-appwrite": { "method": "updateTelesignProvider", - "weight": 370, + "weight": 371, "cookies": false, "type": "", "deprecated": false, @@ -15838,7 +15949,7 @@ }, "x-appwrite": { "method": "createTextmagicProvider", - "weight": 358, + "weight": 359, "cookies": false, "type": "", "deprecated": false, @@ -15944,7 +16055,7 @@ }, "x-appwrite": { "method": "updateTextmagicProvider", - "weight": 371, + "weight": 372, "cookies": false, "type": "", "deprecated": false, @@ -16048,7 +16159,7 @@ }, "x-appwrite": { "method": "createTwilioProvider", - "weight": 359, + "weight": 360, "cookies": false, "type": "", "deprecated": false, @@ -16154,7 +16265,7 @@ }, "x-appwrite": { "method": "updateTwilioProvider", - "weight": 372, + "weight": 373, "cookies": false, "type": "", "deprecated": false, @@ -16258,7 +16369,7 @@ }, "x-appwrite": { "method": "createVonageProvider", - "weight": 360, + "weight": 361, "cookies": false, "type": "", "deprecated": false, @@ -16364,7 +16475,7 @@ }, "x-appwrite": { "method": "updateVonageProvider", - "weight": 373, + "weight": 374, "cookies": false, "type": "", "deprecated": false, @@ -16468,7 +16579,7 @@ }, "x-appwrite": { "method": "getProvider", - "weight": 365, + "weight": 366, "cookies": false, "type": "", "deprecated": false, @@ -16528,7 +16639,7 @@ }, "x-appwrite": { "method": "deleteProvider", - "weight": 376, + "weight": 377, "cookies": false, "type": "", "deprecated": false, @@ -16593,7 +16704,7 @@ }, "x-appwrite": { "method": "listProviderLogs", - "weight": 364, + "weight": 365, "cookies": false, "type": "", "deprecated": false, @@ -16670,7 +16781,7 @@ }, "x-appwrite": { "method": "listSubscriberLogs", - "weight": 385, + "weight": 386, "cookies": false, "type": "", "deprecated": false, @@ -16747,7 +16858,7 @@ }, "x-appwrite": { "method": "listTopics", - "weight": 378, + "weight": 379, "cookies": false, "type": "", "deprecated": false, @@ -16823,7 +16934,7 @@ }, "x-appwrite": { "method": "createTopic", - "weight": 377, + "weight": 378, "cookies": false, "type": "", "deprecated": false, @@ -16916,7 +17027,7 @@ }, "x-appwrite": { "method": "getTopic", - "weight": 380, + "weight": 381, "cookies": false, "type": "", "deprecated": false, @@ -16979,7 +17090,7 @@ }, "x-appwrite": { "method": "updateTopic", - "weight": 381, + "weight": 382, "cookies": false, "type": "", "deprecated": false, @@ -17063,7 +17174,7 @@ }, "x-appwrite": { "method": "deleteTopic", - "weight": 382, + "weight": 383, "cookies": false, "type": "", "deprecated": false, @@ -17128,7 +17239,7 @@ }, "x-appwrite": { "method": "listTopicLogs", - "weight": 379, + "weight": 380, "cookies": false, "type": "", "deprecated": false, @@ -17205,7 +17316,7 @@ }, "x-appwrite": { "method": "listSubscribers", - "weight": 384, + "weight": 385, "cookies": false, "type": "", "deprecated": false, @@ -17289,7 +17400,7 @@ }, "x-appwrite": { "method": "createSubscriber", - "weight": 383, + "weight": 384, "cookies": false, "type": "", "deprecated": false, @@ -17383,7 +17494,7 @@ }, "x-appwrite": { "method": "getSubscriber", - "weight": 386, + "weight": 387, "cookies": false, "type": "", "deprecated": false, @@ -17451,7 +17562,7 @@ }, "x-appwrite": { "method": "deleteSubscriber", - "weight": 387, + "weight": 388, "cookies": false, "type": "", "deprecated": false, @@ -17528,7 +17639,7 @@ }, "x-appwrite": { "method": "listBuckets", - "weight": 204, + "weight": 205, "cookies": false, "type": "", "deprecated": false, @@ -17603,7 +17714,7 @@ }, "x-appwrite": { "method": "createBucket", - "weight": 203, + "weight": 204, "cookies": false, "type": "", "deprecated": false, @@ -17745,7 +17856,7 @@ }, "x-appwrite": { "method": "getBucket", - "weight": 205, + "weight": 206, "cookies": false, "type": "", "deprecated": false, @@ -17807,7 +17918,7 @@ }, "x-appwrite": { "method": "updateBucket", - "weight": 206, + "weight": 207, "cookies": false, "type": "", "deprecated": false, @@ -17943,7 +18054,7 @@ }, "x-appwrite": { "method": "deleteBucket", - "weight": 207, + "weight": 208, "cookies": false, "type": "", "deprecated": false, @@ -18007,7 +18118,7 @@ }, "x-appwrite": { "method": "listFiles", - "weight": 209, + "weight": 210, "cookies": false, "type": "", "deprecated": false, @@ -18094,7 +18205,7 @@ }, "x-appwrite": { "method": "createFile", - "weight": 208, + "weight": 209, "cookies": false, "type": "upload", "deprecated": false, @@ -18190,7 +18301,7 @@ }, "x-appwrite": { "method": "getFile", - "weight": 210, + "weight": 211, "cookies": false, "type": "", "deprecated": false, @@ -18264,7 +18375,7 @@ }, "x-appwrite": { "method": "updateFile", - "weight": 215, + "weight": 216, "cookies": false, "type": "", "deprecated": false, @@ -18357,7 +18468,7 @@ }, "x-appwrite": { "method": "deleteFile", - "weight": 216, + "weight": 217, "cookies": false, "type": "", "deprecated": false, @@ -18433,7 +18544,7 @@ }, "x-appwrite": { "method": "getFileDownload", - "weight": 212, + "weight": 213, "cookies": false, "type": "location", "deprecated": false, @@ -18509,7 +18620,7 @@ }, "x-appwrite": { "method": "getFilePreview", - "weight": 211, + "weight": 212, "cookies": false, "type": "location", "deprecated": false, @@ -18712,7 +18823,7 @@ }, "x-appwrite": { "method": "getFileView", - "weight": 213, + "weight": 214, "cookies": false, "type": "location", "deprecated": false, @@ -18788,7 +18899,7 @@ }, "x-appwrite": { "method": "list", - "weight": 220, + "weight": 221, "cookies": false, "type": "", "deprecated": false, @@ -18867,7 +18978,7 @@ }, "x-appwrite": { "method": "create", - "weight": 219, + "weight": 220, "cookies": false, "type": "", "deprecated": false, @@ -18963,7 +19074,7 @@ }, "x-appwrite": { "method": "get", - "weight": 221, + "weight": 222, "cookies": false, "type": "", "deprecated": false, @@ -19029,7 +19140,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 223, + "weight": 224, "cookies": false, "type": "", "deprecated": false, @@ -19108,7 +19219,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 225, + "weight": 226, "cookies": false, "type": "", "deprecated": false, @@ -19176,7 +19287,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 227, + "weight": 228, "cookies": false, "type": "", "deprecated": false, @@ -19263,7 +19374,7 @@ }, "x-appwrite": { "method": "createMembership", - "weight": 226, + "weight": 227, "cookies": false, "type": "", "deprecated": false, @@ -19382,7 +19493,7 @@ }, "x-appwrite": { "method": "getMembership", - "weight": 228, + "weight": 229, "cookies": false, "type": "", "deprecated": false, @@ -19456,7 +19567,7 @@ }, "x-appwrite": { "method": "updateMembership", - "weight": 229, + "weight": 230, "cookies": false, "type": "", "deprecated": false, @@ -19546,7 +19657,7 @@ }, "x-appwrite": { "method": "deleteMembership", - "weight": 231, + "weight": 232, "cookies": false, "type": "", "deprecated": false, @@ -19622,7 +19733,7 @@ }, "x-appwrite": { "method": "updateMembershipStatus", - "weight": 230, + "weight": 231, "cookies": false, "type": "", "deprecated": false, @@ -19721,7 +19832,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 222, + "weight": 223, "cookies": false, "type": "", "deprecated": false, @@ -19785,7 +19896,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 224, + "weight": 225, "cookies": false, "type": "", "deprecated": false, @@ -19869,7 +19980,7 @@ }, "x-appwrite": { "method": "list", - "weight": 242, + "weight": 243, "cookies": false, "type": "", "deprecated": false, @@ -19944,7 +20055,7 @@ }, "x-appwrite": { "method": "create", - "weight": 233, + "weight": 234, "cookies": false, "type": "", "deprecated": false, @@ -20042,7 +20153,7 @@ }, "x-appwrite": { "method": "createArgon2User", - "weight": 236, + "weight": 237, "cookies": false, "type": "", "deprecated": false, @@ -20136,7 +20247,7 @@ }, "x-appwrite": { "method": "createBcryptUser", - "weight": 234, + "weight": 235, "cookies": false, "type": "", "deprecated": false, @@ -20230,7 +20341,7 @@ }, "x-appwrite": { "method": "listIdentities", - "weight": 250, + "weight": 251, "cookies": false, "type": "", "deprecated": false, @@ -20302,7 +20413,7 @@ }, "x-appwrite": { "method": "deleteIdentity", - "weight": 273, + "weight": 274, "cookies": false, "type": "", "deprecated": false, @@ -20366,7 +20477,7 @@ }, "x-appwrite": { "method": "createMD5User", - "weight": 235, + "weight": 236, "cookies": false, "type": "", "deprecated": false, @@ -20460,7 +20571,7 @@ }, "x-appwrite": { "method": "createPHPassUser", - "weight": 238, + "weight": 239, "cookies": false, "type": "", "deprecated": false, @@ -20554,7 +20665,7 @@ }, "x-appwrite": { "method": "createScryptUser", - "weight": 239, + "weight": 240, "cookies": false, "type": "", "deprecated": false, @@ -20683,7 +20794,7 @@ }, "x-appwrite": { "method": "createScryptModifiedUser", - "weight": 240, + "weight": 241, "cookies": false, "type": "", "deprecated": false, @@ -20798,7 +20909,7 @@ }, "x-appwrite": { "method": "createSHAUser", - "weight": 237, + "weight": 238, "cookies": false, "type": "", "deprecated": false, @@ -20913,7 +21024,7 @@ }, "x-appwrite": { "method": "get", - "weight": 243, + "weight": 244, "cookies": false, "type": "", "deprecated": false, @@ -20970,7 +21081,7 @@ }, "x-appwrite": { "method": "delete", - "weight": 271, + "weight": 272, "cookies": false, "type": "", "deprecated": false, @@ -21034,7 +21145,7 @@ }, "x-appwrite": { "method": "updateEmail", - "weight": 256, + "weight": 257, "cookies": false, "type": "", "deprecated": false, @@ -21116,7 +21227,7 @@ }, "x-appwrite": { "method": "createJWT", - "weight": 274, + "weight": 275, "cookies": false, "type": "", "deprecated": false, @@ -21201,7 +21312,7 @@ }, "x-appwrite": { "method": "updateLabels", - "weight": 252, + "weight": 253, "cookies": false, "type": "", "deprecated": false, @@ -21286,7 +21397,7 @@ }, "x-appwrite": { "method": "listLogs", - "weight": 248, + "weight": 249, "cookies": false, "type": "", "deprecated": false, @@ -21362,7 +21473,7 @@ }, "x-appwrite": { "method": "listMemberships", - "weight": 247, + "weight": 248, "cookies": false, "type": "", "deprecated": false, @@ -21426,7 +21537,7 @@ }, "x-appwrite": { "method": "updateMfa", - "weight": 261, + "weight": 262, "cookies": false, "type": "", "deprecated": false, @@ -21508,7 +21619,7 @@ }, "x-appwrite": { "method": "deleteMfaAuthenticator", - "weight": 266, + "weight": 267, "cookies": false, "type": "", "deprecated": false, @@ -21585,7 +21696,7 @@ }, "x-appwrite": { "method": "listMfaFactors", - "weight": 262, + "weight": 263, "cookies": false, "type": "", "deprecated": false, @@ -21649,7 +21760,7 @@ }, "x-appwrite": { "method": "getMfaRecoveryCodes", - "weight": 263, + "weight": 264, "cookies": false, "type": "", "deprecated": false, @@ -21711,7 +21822,7 @@ }, "x-appwrite": { "method": "updateMfaRecoveryCodes", - "weight": 265, + "weight": 266, "cookies": false, "type": "", "deprecated": false, @@ -21773,7 +21884,7 @@ }, "x-appwrite": { "method": "createMfaRecoveryCodes", - "weight": 264, + "weight": 265, "cookies": false, "type": "", "deprecated": false, @@ -21837,7 +21948,7 @@ }, "x-appwrite": { "method": "updateName", - "weight": 254, + "weight": 255, "cookies": false, "type": "", "deprecated": false, @@ -21919,7 +22030,7 @@ }, "x-appwrite": { "method": "updatePassword", - "weight": 255, + "weight": 256, "cookies": false, "type": "", "deprecated": false, @@ -22001,7 +22112,7 @@ }, "x-appwrite": { "method": "updatePhone", - "weight": 257, + "weight": 258, "cookies": false, "type": "", "deprecated": false, @@ -22083,7 +22194,7 @@ }, "x-appwrite": { "method": "getPrefs", - "weight": 244, + "weight": 245, "cookies": false, "type": "", "deprecated": false, @@ -22145,7 +22256,7 @@ }, "x-appwrite": { "method": "updatePrefs", - "weight": 259, + "weight": 260, "cookies": false, "type": "", "deprecated": false, @@ -22227,7 +22338,7 @@ }, "x-appwrite": { "method": "listSessions", - "weight": 246, + "weight": 247, "cookies": false, "type": "", "deprecated": false, @@ -22289,7 +22400,7 @@ }, "x-appwrite": { "method": "createSession", - "weight": 267, + "weight": 268, "cookies": false, "type": "", "deprecated": false, @@ -22346,7 +22457,7 @@ }, "x-appwrite": { "method": "deleteSessions", - "weight": 270, + "weight": 271, "cookies": false, "type": "", "deprecated": false, @@ -22405,7 +22516,7 @@ }, "x-appwrite": { "method": "deleteSession", - "weight": 269, + "weight": 270, "cookies": false, "type": "", "deprecated": false, @@ -22477,7 +22588,7 @@ }, "x-appwrite": { "method": "updateStatus", - "weight": 251, + "weight": 252, "cookies": false, "type": "", "deprecated": false, @@ -22559,7 +22670,7 @@ }, "x-appwrite": { "method": "listTargets", - "weight": 249, + "weight": 250, "cookies": false, "type": "", "deprecated": false, @@ -22634,7 +22745,7 @@ }, "x-appwrite": { "method": "createTarget", - "weight": 241, + "weight": 242, "cookies": false, "type": "", "deprecated": false, @@ -22750,7 +22861,7 @@ }, "x-appwrite": { "method": "getTarget", - "weight": 245, + "weight": 246, "cookies": false, "type": "", "deprecated": false, @@ -22821,7 +22932,7 @@ }, "x-appwrite": { "method": "updateTarget", - "weight": 260, + "weight": 261, "cookies": false, "type": "", "deprecated": false, @@ -22916,7 +23027,7 @@ }, "x-appwrite": { "method": "deleteTarget", - "weight": 272, + "weight": 273, "cookies": false, "type": "", "deprecated": false, @@ -22989,7 +23100,7 @@ }, "x-appwrite": { "method": "createToken", - "weight": 268, + "weight": 269, "cookies": false, "type": "", "deprecated": false, @@ -23074,7 +23185,7 @@ }, "x-appwrite": { "method": "updateEmailVerification", - "weight": 258, + "weight": 259, "cookies": false, "type": "", "deprecated": false, @@ -23156,7 +23267,7 @@ }, "x-appwrite": { "method": "updatePhoneVerification", - "weight": 253, + "weight": 254, "cookies": false, "type": "", "deprecated": false, diff --git a/app/controllers/api/databases.php b/app/controllers/api/databases.php index 59b5899c4c..099dfef8a8 100644 --- a/app/controllers/api/databases.php +++ b/app/controllers/api/databases.php @@ -3689,6 +3689,141 @@ App::patch('/v1/databases/:databaseId/collections/:collectionId/documents/:docum ->setPayload($response->getPayload(), sensitive: $relationships); }); +App::patch('/v1/databases/:databaseId/collections/:collectionId/documents') + ->desc('Update documents') + ->groups(['api', 'database']) + ->label('scope', 'documents.write') + ->label('resourceType', RESOURCE_TYPE_DATABASES) + ->label('audits.event', 'documents.update') + ->label('audits.resource', 'database/{request.databaseId}/collection/{request.collectionId}') + ->label('abuse-key', 'ip:{ip},method:{method},url:{url},userId:{userId}') + ->label('abuse-limit', APP_LIMIT_WRITE_RATE_DEFAULT * 2) + ->label('abuse-time', APP_LIMIT_WRITE_RATE_PERIOD_DEFAULT) + ->label('sdk.auth', [APP_AUTH_TYPE_SESSION, APP_AUTH_TYPE_KEY, APP_AUTH_TYPE_JWT]) + ->label('sdk.namespace', 'databases') + ->label('sdk.method', 'updateDocuments') + ->label('sdk.description', '/docs/references/databases/update-documents.md') + ->label('sdk.response.code', Response::STATUS_CODE_OK) + ->label('sdk.response.type', Response::CONTENT_TYPE_JSON) + ->label('sdk.response.model', Response::MODEL_DOCUMENT_LIST) + ->label('sdk.offline.model', '/databases/{databaseId}/collections/{collectionId}/documents') + ->param('databaseId', '', new UID(), 'Database ID.') + ->param('collectionId', '', new UID(), 'Collection ID.') + ->param('data', [], new JSON(), 'Document data as JSON object. Include only attribute and value pairs to be updated.', true) + ->param('permissions', null, new Permissions(APP_LIMIT_ARRAY_PARAMS_SIZE, [Database::PERMISSION_READ, Database::PERMISSION_UPDATE, Database::PERMISSION_DELETE, Database::PERMISSION_WRITE]), 'An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https://appwrite.io/docs/permissions).', true) + ->param('queries', [], new ArrayList(new Text(APP_LIMIT_ARRAY_ELEMENT_SIZE), APP_LIMIT_ARRAY_PARAMS_SIZE), 'Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of ' . APP_LIMIT_ARRAY_PARAMS_SIZE . ' queries are allowed, each ' . APP_LIMIT_ARRAY_ELEMENT_SIZE . ' characters long.', true) + ->inject('requestTimestamp') + ->inject('response') + ->inject('dbForProject') + ->inject('project') + ->action(function (string $databaseId, string $collectionId, string|array $data, ?array $permissions, array $queries, ?\DateTime $requestTimestamp, Response $response, Database $dbForProject, Document $project) { + $data = (\is_string($data)) ? \json_decode($data, true) : $data; // Cast to JSON array + + if (empty($data) && \is_null($permissions)) { + throw new Exception(Exception::DOCUMENT_MISSING_PAYLOAD); + } + + $database = Authorization::skip(fn () => $dbForProject->getDocument('databases', $databaseId)); + + $isAPIKey = Auth::isAppUser(Authorization::getRoles()); + $isPrivilegedUser = Auth::isPrivilegedUser(Authorization::getRoles()); + + if ($database->isEmpty() || (!$database->getAttribute('enabled', false) && !$isAPIKey && !$isPrivilegedUser)) { + throw new Exception(Exception::DATABASE_NOT_FOUND); + } + + $collection = Authorization::skip(fn () => $dbForProject->getDocument('database_' . $database->getInternalId(), $collectionId)); + + if ($collection->isEmpty() || (!$collection->getAttribute('enabled', false) && !$isAPIKey && !$isPrivilegedUser)) { + throw new Exception(Exception::COLLECTION_NOT_FOUND); + } + + $queries = Query::parseQueries($queries); + + // Map aggregate permissions into the multiple permissions they represent. + $permissions = Permission::aggregate($permissions, [ + Database::PERMISSION_READ, + Database::PERMISSION_UPDATE, + Database::PERMISSION_DELETE, + ]); + + // Users can only manage their own roles, API keys and Admin users can manage any + $roles = Authorization::getRoles(); + if (!$isAPIKey && !$isPrivilegedUser && !\is_null($permissions)) { + foreach (Database::PERMISSIONS as $type) { + foreach ($permissions as $permission) { + $permission = Permission::parse($permission); + if ($permission->getPermission() != $type) { + continue; + } + $role = (new Role( + $permission->getRole(), + $permission->getIdentifier(), + $permission->getDimension() + ))->toString(); + if (!Authorization::isRole($role)) { + throw new Exception(Exception::USER_UNAUTHORIZED, 'Permissions must be one of: (' . \implode(', ', $roles) . ')'); + } + } + } + } + + if (!\is_null($permissions)) { + $data['$permissions'] = $permissions; + } + $partialDocument = new Document($data); + + $documents = $dbForProject->withRequestTimestamp( + $requestTimestamp, + fn () => $dbForProject->updateDocuments( + 'database_' . $database->getInternalId() . '_collection_' . $collection->getInternalId(), + $partialDocument, + $queries + ) + ); + + $processDocument = function (Document $collection, Document $document) use (&$processDocument, $dbForProject, $database) { + $document->setAttribute('$databaseId', $database->getId()); + $document->setAttribute('$collectionId', $collection->getId()); + + $relationships = \array_filter( + $collection->getAttribute('attributes', []), + fn ($attribute) => $attribute->getAttribute('type') === Database::VAR_RELATIONSHIP + ); + + foreach ($relationships as $relationship) { + $related = $document->getAttribute($relationship->getAttribute('key')); + + if (empty($related)) { + continue; + } + if (!\is_array($related)) { + $related = [$related]; + } + + $relatedCollectionId = $relationship->getAttribute('relatedCollection'); + $relatedCollection = Authorization::skip( + fn () => $dbForProject->getDocument('database_' . $database->getInternalId(), $relatedCollectionId) + ); + + foreach ($related as $relation) { + if ($relation instanceof Document) { + $processDocument($relatedCollection, $relation); + } + } + } + }; + + foreach ($documents as $document) { + $processDocument($collection, $document); + } + + $response->dynamic(new Document([ + 'total' => \count($documents), + 'documents' => $documents + ]), Response::MODEL_DOCUMENT_LIST); + }); + App::delete('/v1/databases/:databaseId/collections/:collectionId/documents/:documentId') ->alias('/v1/database/collections/:collectionId/documents/:documentId', ['databaseId' => 'default']) ->desc('Delete document') diff --git a/composer.json b/composer.json index 0a81d5d70c..0cd20fc577 100644 --- a/composer.json +++ b/composer.json @@ -96,6 +96,10 @@ "config": { "platform": { "php": "8.3" + }, + "allow-plugins": { + "php-http/discovery": false, + "tbachert/spi": false } } } diff --git a/composer.lock b/composer.lock index be7dd88f82..f5a7dd7906 100644 --- a/composer.lock +++ b/composer.lock @@ -8558,7 +8558,7 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": {}, + "stability-flags": [], "prefer-stable": false, "prefer-lowest": false, "platform": { diff --git a/docs/references/databases/update-documents.md b/docs/references/databases/update-documents.md new file mode 100644 index 0000000000..f04ec420f8 --- /dev/null +++ b/docs/references/databases/update-documents.md @@ -0,0 +1 @@ +Update all documents that match your queries, If none are submitted then all documents are updated. Using the patch method you can pass only specific fields that will get updated. \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000000..6ab33b14fe --- /dev/null +++ b/package-lock.json @@ -0,0 +1,10 @@ +{ + "name": "@appwrite.io/repo", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@appwrite.io/repo" + } + } +} diff --git a/tests/e2e/Services/Databases/DatabasesBase.php b/tests/e2e/Services/Databases/DatabasesBase.php index f2a4728eef..c262abfab1 100644 --- a/tests/e2e/Services/Databases/DatabasesBase.php +++ b/tests/e2e/Services/Databases/DatabasesBase.php @@ -5446,4 +5446,225 @@ trait DatabasesBase $this->assertEquals(200, $collection2docs['headers']['status-code']); $this->assertEquals(0, $collection2docs['body']['total']); } + + public function testBulkUpdates(): void + { + // Create database + $database = $this->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' => 'Bulk Updates' + ]); + + $this->assertNotEmpty($database['body']['$id']); + + $databaseId = $database['body']['$id']; + + $collection = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'collectionId' => ID::unique(), + 'name' => 'Bulk Updates', + 'documentSecurity' => true, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + Permission::delete(Role::any()), + Permission::update(Role::any()), + ], + ]); + + $this->assertEquals(201, $collection['headers']['status-code']); + + $data = [ + '$id' => $collection['body']['$id'], + 'databaseId' => $collection['body']['databaseId'] + ]; + + // Await attribute + $numberAttribute = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $data['$id'] . '/attributes/integer', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'number', + 'required' => true, + ]); + + $this->assertEquals(202, $numberAttribute['headers']['status-code']); + + // wait for database worker to create attributes + sleep(2); + + // Create documents + $createBulkDocuments = function ($amount = 10) use ($data) { + for ($x = 1; $x <= $amount; $x++) { + $doc = $this->client->call(Client::METHOD_POST, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'documentId' => ID::unique(), + 'data' => [ + 'number' => $x, + ], + ]); + + $this->assertEquals(201, $doc['headers']['status-code']); + } + }; + + $createBulkDocuments(); + + // TEST: Update all documents + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'data' => [ + 'number' => 100 + ], + 'permissions' => [ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ] + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertCount(10, $response['body']['documents']); + + $documents = $this->client->call(Client::METHOD_GET, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + Query::equal('number', [100])->toString(), + ]); + + $this->assertEquals(200, $documents['headers']['status-code']); + $this->assertEquals(10, $documents['body']['total']); + + foreach ($documents['body']['documents'] as $document) { + $this->assertEquals([ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ], $document['$permissions']); + $this->assertEquals($collection['body']['$id'], $document['$collectionId']); + $this->assertEquals($data['databaseId'], $document['$databaseId']); + } + + // TEST: Check permissions persist + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'data' => [ + 'number' => 200 + ], + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertCount(10, $response['body']['documents']); + + $documents = $this->client->call(Client::METHOD_GET, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + Query::equal('number', [200])->toString(), + ]); + + $this->assertEquals(200, $documents['headers']['status-code']); + $this->assertEquals(10, $documents['body']['total']); + + foreach ($documents['body']['documents'] as $document) { + $this->assertEquals([ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ], $document['$permissions']); + } + + // TEST: Update documents with limit + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'data' => [ + 'number' => 300 + ], + 'queries' => [ + Query::limit(5)->toString(), + ], + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertCount(5, $response['body']['documents']); + + $documents = $this->client->call(Client::METHOD_GET, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'queries' => [Query::equal('number', [200])->toString()] + ]); + + $this->assertEquals(200, $documents['headers']['status-code']); + $this->assertEquals(5, $documents['body']['total']); + + // TEST: Update documents with offset + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'data' => [ + 'number' => 300 + ], + 'queries' => [ + Query::offset(5)->toString(), + ], + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertCount(5, $response['body']['documents']); + + $documents = $this->client->call(Client::METHOD_GET, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'queries' => [Query::equal('number', [300])->toString()] + ]); + + $this->assertEquals(200, $documents['headers']['status-code']); + $this->assertEquals(10, $documents['body']['total']); + + // TEST: Update documents with equals filter + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'data' => [ + 'number' => 400 + ], + 'queries' => [ + Query::equal('number', [300])->toString(), + ], + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertCount(10, $response['body']['documents']); + + $documents = $this->client->call(Client::METHOD_GET, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'queries' => [Query::equal('number', [400])->toString()] + ]); + + $this->assertEquals(200, $documents['headers']['status-code']); + $this->assertEquals(10, $documents['body']['total']); + } } diff --git a/tests/e2e/Services/Databases/DatabasesCustomClientTest.php b/tests/e2e/Services/Databases/DatabasesCustomClientTest.php index 86d93779e8..12f5c0216d 100644 --- a/tests/e2e/Services/Databases/DatabasesCustomClientTest.php +++ b/tests/e2e/Services/Databases/DatabasesCustomClientTest.php @@ -10,6 +10,7 @@ use Utopia\Database\Database; use Utopia\Database\Helpers\ID; use Utopia\Database\Helpers\Permission; use Utopia\Database\Helpers\Role; +use Utopia\Database\Query; class DatabasesCustomClientTest extends Scope { @@ -891,6 +892,291 @@ class DatabasesCustomClientTest extends Scope $this->assertEquals(200, $response['headers']['status-code']); } + // Bulk Updates + public function testBulkUpdatesPermissions(): void + { + // Create database + $database = $this->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' => 'Bulk Update Perms' + ]); + + $this->assertNotEmpty($database['body']['$id']); + + $databaseId = $database['body']['$id']; + $collection = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'collectionId' => ID::unique(), + 'name' => 'Bulk Updates Perms', + 'documentSecurity' => false, + 'permissions' => [ + Permission::create(Role::user($this->getUser()['$id'])) + ], + ]); + + $this->assertEquals(201, $collection['headers']['status-code']); + + $data = [ + '$id' => $collection['body']['$id'], + 'databaseId' => $collection['body']['databaseId'] + ]; + + // Await attribute + $numberAttribute = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $data['$id'] . '/attributes/integer', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'number', + 'required' => true, + ]); + + $this->assertEquals(202, $numberAttribute['headers']['status-code']); + + sleep(2); + + // TEST: Update all documents with invalid collection level permissions + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'data' => [ + 'number' => 100 + ] + ]); + + $this->assertEquals(401, $response['headers']['status-code']); + + $collection = $this->client->call(Client::METHOD_PUT, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'], array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'name' => 'Bulk Updates Perms', + 'documentSecurity' => true + ]); + + $this->assertEquals(200, $collection['headers']['status-code']); + + // TEST: Make sure we can update only documents we have permissions for + for ($i = 0; $i < 6; $i++) { + $doc = $this->client->call(Client::METHOD_POST, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'documentId' => ID::unique(), + 'data' => [ + 'number' => $i, + ], + 'permissions' => [ + Permission::update(Role::user($this->getUser()['$id'])) + ] + ]); + + $this->assertEquals(201, $doc['headers']['status-code']); + } + + $doc = $this->client->call(Client::METHOD_POST, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'documentId' => ID::unique(), + 'data' => [ + 'number' => 6, + ], + 'permissions' => [ + Permission::update(Role::user('user2')), + Permission::read(Role::user($this->getUser()['$id'])), + ] + ]); + + $this->assertEquals(201, $doc['headers']['status-code']); + + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'data' => [ + 'number' => 100 + ] + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertCount(6, $response['body']['documents']); + + $documents = $this->client->call(Client::METHOD_GET, '/databases/' . $data['databaseId'] . '/collections/' . $data['$id'] . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'] + ], $this->getHeaders()), [ + 'queries' => [Query::notEqual('number', 100)->toString()] + ]); + + $this->assertEquals(200, $documents['headers']['status-code']); + $this->assertEquals(1, $documents['body']['total']); + } + + public function testBulkUpdatesRelationship() + { + $database = $this->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' => 'Bulk Updates' + ]); + + $this->assertNotEmpty($database['body']['$id']); + + $databaseId = $database['body']['$id']; + + $collection1 = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'collectionId' => ID::unique(), + 'name' => 'Collection1', + 'documentSecurity' => false, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + Permission::delete(Role::any()), + Permission::update(Role::any()), + ], + ]); + + $this->assertEquals(201, $collection1['headers']['status-code']); + + $collection2 = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'collectionId' => ID::unique(), + 'name' => 'Collection2', + 'documentSecurity' => false, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + Permission::delete(Role::any()), + Permission::update(Role::any()), + ], + ]); + + $this->assertEquals(201, $collection1['headers']['status-code']); + + $collection1 = $collection1['body']['$id']; + $collection2 = $collection2['body']['$id']; + + $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collection1 . '/attributes/relationship', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'relatedCollectionId' => $collection2, + 'type' => Database::RELATION_ONE_TO_MANY, + 'key' => 'collection2', + 'onDelete' => Database::RELATION_MUTATE_RESTRICT, + 'twoWay' => true, + 'twoWayKey' => 'collection1', + ]); + + $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collection1 . '/attributes/string', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'name', + 'size' => 256, + 'required' => true, + ]); + + $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collection2 . '/attributes/string', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'name', + 'size' => 256, + 'required' => true, + ]); + + sleep(3); + + $document1 = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collection1 . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'] + ], $this->getHeaders()), [ + 'documentId' => ID::unique(), + 'data' => [ + 'name' => 'Document 1', + 'collection2' => [ + [ + 'name' => 'Document 2', + ], + ], + ], + ]); + + $this->assertEquals(201, $document1['headers']['status-code']); + $document1 = $document1['body']['$id']; + + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $databaseId . '/collections/' . $collection1 . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'] + ], $this->getHeaders()), [ + 'data' => [ + 'name' => 'Document 1 Updated', + ] + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertCount(1, $response['body']['documents']); + + $response = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collection2 . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'] + ], $this->getHeaders())); + + $this->assertEquals(200, $response['headers']['status-code']); + + $document2 = $response['body']['documents'][0]; + + $this->assertEquals('Document 2', $document2['name']); + $this->assertEquals('Document 1 Updated', $document2['collection1']['name']); + + $response = $this->client->call(Client::METHOD_PATCH, '/databases/' . $databaseId . '/collections/' . $collection2 . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'] + ], $this->getHeaders()), [ + 'data' => [ + 'name' => 'Document 2 Updated', + ] + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + + $response = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collection1 . '/documents/' . $document1, array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'] + ], $this->getHeaders())); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertEquals('Document 1 Updated', $response['body']['name']); + + $document2 = $response['body']['collection2'][0]; + $this->assertEquals('Document 2 Updated', $document2['name']); + } + public function testBulkDeletesPermissions(): void { // Create database