diff --git a/app/config/locale/translations/en.json b/app/config/locale/translations/en.json index 0500c4c668..c18c7350c3 100644 --- a/app/config/locale/translations/en.json +++ b/app/config/locale/translations/en.json @@ -3,7 +3,7 @@ "settings.locale": "en", "settings.direction": "ltr", "emails.sender": "{{project}} Team", - "emails.verification.subject": "Account Verification", + "emails.verification.subject": "Account Verification for {{project}}", "emails.verification.preview": "Verify your email to activate your {{project}} account.", "emails.verification.heading": "Verify your email to start using {{project}}", "emails.verification.hello": "Hello {{user}},", @@ -49,7 +49,7 @@ "emails.mfaChallenge.clientInfo": "This verification code was requested using {{b}}{{agentClient}}{{/b}} on {{b}}{{agentDevice}}{{/b}} {{b}}{{agentOs}}{{/b}}. If you didn't request the verification code, you can safely ignore this email.", "emails.mfaChallenge.thanks": "Thanks,", "emails.mfaChallenge.signature": "{{project}} team", - "emails.recovery.subject": "Password Reset", + "emails.recovery.subject": "Password Reset for {{project}}", "emails.recovery.preview": "Reset your {{project}} password using the link.", "emails.recovery.hello": "Hello {{user}},", "emails.recovery.body": "Follow this link to reset your {{b}}{{project}}{{/b}} password.", diff --git a/app/config/platforms.php b/app/config/platforms.php index eb6c121f8e..e5a297fb0c 100644 --- a/app/config/platforms.php +++ b/app/config/platforms.php @@ -11,7 +11,7 @@ return [ [ 'key' => 'web', 'name' => 'Web', - 'version' => '19.0.0', + 'version' => '21.0.0', 'url' => 'https://github.com/appwrite/sdk-for-web', 'package' => 'https://www.npmjs.com/package/appwrite', 'enabled' => true, @@ -60,7 +60,7 @@ return [ [ 'key' => 'flutter', 'name' => 'Flutter', - 'version' => '18.0.0', + 'version' => '20.0.0', 'url' => 'https://github.com/appwrite/sdk-for-flutter', 'package' => 'https://pub.dev/packages/appwrite', 'enabled' => true, @@ -79,7 +79,7 @@ return [ [ 'key' => 'apple', 'name' => 'Apple', - 'version' => '11.0.0', + 'version' => '13.0.0', 'url' => 'https://github.com/appwrite/sdk-for-apple', 'package' => 'https://github.com/appwrite/sdk-for-apple', 'enabled' => true, @@ -116,7 +116,7 @@ return [ [ 'key' => 'android', 'name' => 'Android', - 'version' => '9.0.0', + 'version' => '11.0.0', 'url' => 'https://github.com/appwrite/sdk-for-android', 'package' => 'https://search.maven.org/artifact/io.appwrite/sdk-for-android', 'enabled' => true, @@ -139,7 +139,7 @@ return [ [ 'key' => 'react-native', 'name' => 'React Native', - 'version' => '0.12.0', + 'version' => '0.15.0', 'url' => 'https://github.com/appwrite/sdk-for-react-native', 'package' => 'https://npmjs.com/package/react-native-appwrite', 'enabled' => true, @@ -226,7 +226,7 @@ return [ [ 'key' => 'cli', 'name' => 'Command Line', - 'version' => '9.1.0', + 'version' => '10.0.1', 'url' => 'https://github.com/appwrite/sdk-for-cli', 'package' => 'https://www.npmjs.com/package/appwrite-cli', 'enabled' => true, @@ -262,7 +262,7 @@ return [ [ 'key' => 'nodejs', 'name' => 'Node.js', - 'version' => '18.0.0', + 'version' => '20.0.0', 'url' => 'https://github.com/appwrite/sdk-for-node', 'package' => 'https://www.npmjs.com/package/node-appwrite', 'enabled' => true, @@ -281,7 +281,7 @@ return [ [ 'key' => 'php', 'name' => 'PHP', - 'version' => '16.0.0', + 'version' => '17.2.0', 'url' => 'https://github.com/appwrite/sdk-for-php', 'package' => 'https://packagist.org/packages/appwrite/appwrite', 'enabled' => true, @@ -300,7 +300,7 @@ return [ [ 'key' => 'python', 'name' => 'Python', - 'version' => '12.0.0', + 'version' => '13.2.0', 'url' => 'https://github.com/appwrite/sdk-for-python', 'package' => 'https://pypi.org/project/appwrite/', 'enabled' => true, @@ -319,7 +319,7 @@ return [ [ 'key' => 'ruby', 'name' => 'Ruby', - 'version' => '17.0.0', + 'version' => '19.0.0', 'url' => 'https://github.com/appwrite/sdk-for-ruby', 'package' => 'https://rubygems.org/gems/appwrite', 'enabled' => true, @@ -338,7 +338,7 @@ return [ [ 'key' => 'go', 'name' => 'Go', - 'version' => '0.10.0', + 'version' => '0.13.0', 'url' => 'https://github.com/appwrite/sdk-for-go', 'package' => 'https://github.com/appwrite/sdk-for-go', 'enabled' => true, @@ -357,7 +357,7 @@ return [ [ 'key' => 'dotnet', 'name' => '.NET', - 'version' => '0.16.0', + 'version' => '0.19.0', 'url' => 'https://github.com/appwrite/sdk-for-dotnet', 'package' => 'https://www.nuget.org/packages/Appwrite', 'enabled' => true, @@ -376,7 +376,7 @@ return [ [ 'key' => 'dart', 'name' => 'Dart', - 'version' => '17.0.0', + 'version' => '19.0.0', 'url' => 'https://github.com/appwrite/sdk-for-dart', 'package' => 'https://pub.dev/packages/dart_appwrite', 'enabled' => true, @@ -395,7 +395,7 @@ return [ [ 'key' => 'kotlin', 'name' => 'Kotlin', - 'version' => '10.0.0', + 'version' => '12.0.0', 'url' => 'https://github.com/appwrite/sdk-for-kotlin', 'package' => 'https://search.maven.org/artifact/io.appwrite/sdk-for-kotlin', 'enabled' => true, @@ -418,7 +418,7 @@ return [ [ 'key' => 'swift', 'name' => 'Swift', - 'version' => '11.0.0', + 'version' => '13.0.0', 'url' => 'https://github.com/appwrite/sdk-for-swift', 'package' => 'https://github.com/appwrite/sdk-for-swift', 'enabled' => true, diff --git a/app/config/services.php b/app/config/services.php index f02f169b88..5f8651e59f 100644 --- a/app/config/services.php +++ b/app/config/services.php @@ -214,7 +214,7 @@ return [ 'name' => 'Proxy', 'subtitle' => 'The Proxy Service allows you to configure actions for your domains beyond DNS configuration.', 'description' => '/docs/services/proxy.md', - 'controller' => 'api/proxy.php', + 'controller' => '', // Uses modules 'sdk' => true, 'docs' => true, 'docsUrl' => 'https://appwrite.io/docs/proxy', diff --git a/app/config/specs/open-api3-1.8.x-client.json b/app/config/specs/open-api3-1.8.x-client.json index 81530d8ecd..4cb47c7f08 100644 --- a/app/config/specs/open-api3-1.8.x-client.json +++ b/app/config/specs/open-api3-1.8.x-client.json @@ -3464,10 +3464,10 @@ } } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "tags": [ "account" ], @@ -3486,12 +3486,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3502,6 +3502,56 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3535,7 +3585,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "tags": [ "account" ], @@ -3554,12 +3604,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3570,6 +3620,60 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3608,7 +3712,7 @@ } } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4830,7 +4934,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -4919,7 +5023,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -5069,7 +5173,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -5168,7 +5272,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -5316,7 +5420,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -5419,7 +5523,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -5507,7 +5611,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -5626,7 +5730,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -5745,7 +5849,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -5820,7 +5924,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -5936,7 +6040,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -6010,7 +6114,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -6062,7 +6166,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -6530,7 +6634,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -6613,7 +6717,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -7491,7 +7595,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -7533,7 +7637,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "schema": { "type": "string", @@ -7562,7 +7666,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -7579,7 +7683,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -7624,7 +7728,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" } ], @@ -7652,7 +7756,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "schema": { "type": "string", @@ -7687,7 +7791,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "x-example": null, "items": { "type": "object" @@ -7724,7 +7828,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -7766,7 +7870,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -7805,7 +7909,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -7822,7 +7926,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -7866,7 +7970,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -7961,7 +8065,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -8063,7 +8167,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -8105,7 +8209,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -8150,7 +8254,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -8268,7 +8372,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -11393,12 +11497,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -11412,7 +11527,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "$ref": "#\/components\/schemas\/headers" }, diff --git a/app/config/specs/open-api3-1.8.x-console.json b/app/config/specs/open-api3-1.8.x-console.json index 53137becbb..cf85dd57ed 100644 --- a/app/config/specs/open-api3-1.8.x-console.json +++ b/app/config/specs/open-api3-1.8.x-console.json @@ -3473,10 +3473,10 @@ } } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "tags": [ "account" ], @@ -3495,12 +3495,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3511,6 +3511,56 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3543,7 +3593,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "tags": [ "account" ], @@ -3562,12 +3612,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3578,6 +3628,60 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3615,7 +3719,7 @@ } } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4828,7 +4932,7 @@ "x-appwrite": { "method": "chat", "group": "console", - "weight": 256, + "weight": 252, "cookies": false, "type": "", "demo": "assistant\/chat.md", @@ -4888,7 +4992,7 @@ "x-appwrite": { "method": "getResource", "group": null, - "weight": 500, + "weight": 496, "cookies": false, "type": "", "demo": "console\/get-resource.md", @@ -4963,7 +5067,7 @@ "x-appwrite": { "method": "variables", "group": "console", - "weight": 255, + "weight": 251, "cookies": false, "type": "", "demo": "console\/variables.md", @@ -5011,7 +5115,7 @@ "x-appwrite": { "method": "list", "group": "databases", - "weight": 320, + "weight": 316, "cookies": false, "type": "", "demo": "databases\/list.md", @@ -5115,7 +5219,7 @@ "x-appwrite": { "method": "create", "group": "databases", - "weight": 316, + "weight": 312, "cookies": false, "type": "", "demo": "databases\/create.md", @@ -5229,7 +5333,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 323, + "weight": 319, "cookies": false, "type": "", "demo": "databases\/list-usage.md", @@ -5331,7 +5435,7 @@ "x-appwrite": { "method": "get", "group": "databases", - "weight": 317, + "weight": 313, "cookies": false, "type": "", "demo": "databases\/get.md", @@ -5422,7 +5526,7 @@ "x-appwrite": { "method": "update", "group": "databases", - "weight": 318, + "weight": 314, "cookies": false, "type": "", "demo": "databases\/update.md", @@ -5533,7 +5637,7 @@ "x-appwrite": { "method": "delete", "group": "databases", - "weight": 319, + "weight": 315, "cookies": false, "type": "", "demo": "databases\/delete.md", @@ -5625,7 +5729,7 @@ "x-appwrite": { "method": "listCollections", "group": "collections", - "weight": 328, + "weight": 324, "cookies": false, "type": "", "demo": "databases\/list-collections.md", @@ -5712,7 +5816,7 @@ "x-appwrite": { "method": "createCollection", "group": "collections", - "weight": 324, + "weight": 320, "cookies": false, "type": "", "demo": "databases\/create-collection.md", @@ -5820,7 +5924,7 @@ "x-appwrite": { "method": "getCollection", "group": "collections", - "weight": 325, + "weight": 321, "cookies": false, "type": "", "demo": "databases\/get-collection.md", @@ -5893,7 +5997,7 @@ "x-appwrite": { "method": "updateCollection", "group": "collections", - "weight": 326, + "weight": 322, "cookies": false, "type": "", "demo": "databases\/update-collection.md", @@ -5996,7 +6100,7 @@ "x-appwrite": { "method": "deleteCollection", "group": "collections", - "weight": 327, + "weight": 323, "cookies": false, "type": "", "demo": "databases\/delete-collection.md", @@ -6071,7 +6175,7 @@ "x-appwrite": { "method": "listAttributes", "group": "attributes", - "weight": 345, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-attributes.md", @@ -6159,7 +6263,7 @@ "x-appwrite": { "method": "createBooleanAttribute", "group": "attributes", - "weight": 346, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-boolean-attribute.md", @@ -6269,7 +6373,7 @@ "x-appwrite": { "method": "updateBooleanAttribute", "group": "attributes", - "weight": 347, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/update-boolean-attribute.md", @@ -6384,7 +6488,7 @@ "x-appwrite": { "method": "createDatetimeAttribute", "group": "attributes", - "weight": 348, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/create-datetime-attribute.md", @@ -6494,7 +6598,7 @@ "x-appwrite": { "method": "updateDatetimeAttribute", "group": "attributes", - "weight": 349, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/update-datetime-attribute.md", @@ -6609,7 +6713,7 @@ "x-appwrite": { "method": "createEmailAttribute", "group": "attributes", - "weight": 350, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/create-email-attribute.md", @@ -6719,7 +6823,7 @@ "x-appwrite": { "method": "updateEmailAttribute", "group": "attributes", - "weight": 351, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/update-email-attribute.md", @@ -6834,7 +6938,7 @@ "x-appwrite": { "method": "createEnumAttribute", "group": "attributes", - "weight": 352, + "weight": 348, "cookies": false, "type": "", "demo": "databases\/create-enum-attribute.md", @@ -6953,7 +7057,7 @@ "x-appwrite": { "method": "updateEnumAttribute", "group": "attributes", - "weight": 353, + "weight": 349, "cookies": false, "type": "", "demo": "databases\/update-enum-attribute.md", @@ -7077,7 +7181,7 @@ "x-appwrite": { "method": "createFloatAttribute", "group": "attributes", - "weight": 354, + "weight": 350, "cookies": false, "type": "", "demo": "databases\/create-float-attribute.md", @@ -7197,7 +7301,7 @@ "x-appwrite": { "method": "updateFloatAttribute", "group": "attributes", - "weight": 355, + "weight": 351, "cookies": false, "type": "", "demo": "databases\/update-float-attribute.md", @@ -7322,7 +7426,7 @@ "x-appwrite": { "method": "createIntegerAttribute", "group": "attributes", - "weight": 356, + "weight": 352, "cookies": false, "type": "", "demo": "databases\/create-integer-attribute.md", @@ -7442,7 +7546,7 @@ "x-appwrite": { "method": "updateIntegerAttribute", "group": "attributes", - "weight": 357, + "weight": 353, "cookies": false, "type": "", "demo": "databases\/update-integer-attribute.md", @@ -7567,7 +7671,7 @@ "x-appwrite": { "method": "createIpAttribute", "group": "attributes", - "weight": 358, + "weight": 354, "cookies": false, "type": "", "demo": "databases\/create-ip-attribute.md", @@ -7677,7 +7781,7 @@ "x-appwrite": { "method": "updateIpAttribute", "group": "attributes", - "weight": 359, + "weight": 355, "cookies": false, "type": "", "demo": "databases\/update-ip-attribute.md", @@ -7792,7 +7896,7 @@ "x-appwrite": { "method": "createLineAttribute", "group": "attributes", - "weight": 360, + "weight": 356, "cookies": false, "type": "", "demo": "databases\/create-line-attribute.md", @@ -7860,7 +7964,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -7905,7 +8009,7 @@ "x-appwrite": { "method": "updateLineAttribute", "group": "attributes", - "weight": 361, + "weight": 357, "cookies": false, "type": "", "demo": "databases\/update-line-attribute.md", @@ -7977,7 +8081,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -8009,7 +8113,7 @@ "tags": [ "databases" ], - "description": "Create a geometric 2d point attribute.", + "description": "Create a geometric point attribute.", "responses": { "202": { "description": "AttributePoint", @@ -8026,7 +8130,7 @@ "x-appwrite": { "method": "createPointAttribute", "group": "attributes", - "weight": 362, + "weight": 358, "cookies": false, "type": "", "demo": "databases\/create-point-attribute.md", @@ -8094,7 +8198,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -8139,7 +8243,7 @@ "x-appwrite": { "method": "updatePointAttribute", "group": "attributes", - "weight": 363, + "weight": 359, "cookies": false, "type": "", "demo": "databases\/update-point-attribute.md", @@ -8211,7 +8315,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -8260,7 +8364,7 @@ "x-appwrite": { "method": "createPolygonAttribute", "group": "attributes", - "weight": 364, + "weight": 360, "cookies": false, "type": "", "demo": "databases\/create-polygon-attribute.md", @@ -8328,7 +8432,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -8373,7 +8477,7 @@ "x-appwrite": { "method": "updatePolygonAttribute", "group": "attributes", - "weight": 365, + "weight": 361, "cookies": false, "type": "", "demo": "databases\/update-polygon-attribute.md", @@ -8445,7 +8549,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -8494,7 +8598,7 @@ "x-appwrite": { "method": "createRelationshipAttribute", "group": "attributes", - "weight": 366, + "weight": 362, "cookies": false, "type": "", "demo": "databases\/create-relationship-attribute.md", @@ -8629,7 +8733,7 @@ "x-appwrite": { "method": "createStringAttribute", "group": "attributes", - "weight": 368, + "weight": 364, "cookies": false, "type": "", "demo": "databases\/create-string-attribute.md", @@ -8750,7 +8854,7 @@ "x-appwrite": { "method": "updateStringAttribute", "group": "attributes", - "weight": 369, + "weight": 365, "cookies": false, "type": "", "demo": "databases\/update-string-attribute.md", @@ -8870,7 +8974,7 @@ "x-appwrite": { "method": "createUrlAttribute", "group": "attributes", - "weight": 370, + "weight": 366, "cookies": false, "type": "", "demo": "databases\/create-url-attribute.md", @@ -8980,7 +9084,7 @@ "x-appwrite": { "method": "updateUrlAttribute", "group": "attributes", - "weight": 371, + "weight": 367, "cookies": false, "type": "", "demo": "databases\/update-url-attribute.md", @@ -9126,7 +9230,7 @@ "x-appwrite": { "method": "getAttribute", "group": "attributes", - "weight": 343, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-attribute.md", @@ -9201,7 +9305,7 @@ "x-appwrite": { "method": "deleteAttribute", "group": "attributes", - "weight": 344, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-attribute.md", @@ -9285,7 +9389,7 @@ "x-appwrite": { "method": "updateRelationshipAttribute", "group": "attributes", - "weight": 367, + "weight": 363, "cookies": false, "type": "", "demo": "databases\/update-relationship-attribute.md", @@ -9397,7 +9501,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -9486,7 +9590,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -9664,7 +9768,7 @@ "x-appwrite": { "method": "upsertDocuments", "group": "documents", - "weight": 336, + "weight": 332, "cookies": false, "type": "", "demo": "databases\/upsert-documents.md", @@ -9792,7 +9896,7 @@ "x-appwrite": { "method": "updateDocuments", "group": "documents", - "weight": 334, + "weight": 330, "cookies": false, "type": "", "demo": "databases\/update-documents.md", @@ -9890,7 +9994,7 @@ "x-appwrite": { "method": "deleteDocuments", "group": "documents", - "weight": 338, + "weight": 334, "cookies": false, "type": "", "demo": "databases\/delete-documents.md", @@ -9985,7 +10089,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -10084,7 +10188,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -10232,7 +10336,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -10335,7 +10439,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -10423,7 +10527,7 @@ "x-appwrite": { "method": "listDocumentLogs", "group": "logs", - "weight": 340, + "weight": 336, "cookies": false, "type": "", "demo": "databases\/list-document-logs.md", @@ -10520,7 +10624,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -10639,7 +10743,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -10758,7 +10862,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 375, + "weight": 371, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -10844,7 +10948,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 372, + "weight": 368, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -10977,7 +11081,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 373, + "weight": 369, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -11052,7 +11156,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 374, + "weight": 370, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -11136,7 +11240,7 @@ "x-appwrite": { "method": "listCollectionLogs", "group": "collections", - "weight": 329, + "weight": 325, "cookies": false, "type": "", "demo": "databases\/list-collection-logs.md", @@ -11223,7 +11327,7 @@ "x-appwrite": { "method": "getCollectionUsage", "group": null, - "weight": 330, + "weight": 326, "cookies": false, "type": "", "demo": "databases\/get-collection-usage.md", @@ -11319,7 +11423,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 321, + "weight": 317, "cookies": false, "type": "", "demo": "databases\/list-logs.md", @@ -11425,7 +11529,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 322, + "weight": 318, "cookies": false, "type": "", "demo": "databases\/get-usage.md", @@ -11540,7 +11644,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 444, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -11613,7 +11717,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 441, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -11846,7 +11950,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 446, + "weight": 442, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -11895,7 +11999,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 447, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -11945,7 +12049,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 470, + "weight": 466, "cookies": false, "type": "", "demo": "functions\/list-templates.md", @@ -12045,7 +12149,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 469, + "weight": 465, "cookies": false, "type": "", "demo": "functions\/get-template.md", @@ -12105,7 +12209,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 463, + "weight": 459, "cookies": false, "type": "", "demo": "functions\/list-usage.md", @@ -12177,7 +12281,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 442, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -12236,7 +12340,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 443, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -12466,7 +12570,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 445, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -12527,7 +12631,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 450, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -12607,7 +12711,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 451, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -12690,7 +12794,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 448, + "weight": 444, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -12786,7 +12890,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 456, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -12854,7 +12958,7 @@ "tags": [ "functions" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -12871,11 +12975,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 453, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -12974,7 +13078,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 454, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -13071,7 +13175,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 449, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -13133,7 +13237,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 452, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -13197,7 +13301,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 455, + "weight": 451, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -13287,7 +13391,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 457, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -13358,7 +13462,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -13433,7 +13537,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -13549,7 +13653,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -13614,7 +13718,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 461, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -13685,7 +13789,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 462, + "weight": 458, "cookies": false, "type": "", "demo": "functions\/get-usage.md", @@ -13767,7 +13871,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 466, + "weight": 462, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -13826,7 +13930,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 464, + "weight": 460, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -13917,7 +14021,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 465, + "weight": 461, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -13986,7 +14090,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 467, + "weight": 463, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -14077,7 +14181,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 468, + "weight": 464, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -14148,7 +14252,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -14200,7 +14304,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -15963,7 +16067,7 @@ "x-appwrite": { "method": "listMessages", "group": "messages", - "weight": 308, + "weight": 304, "cookies": false, "type": "", "demo": "messaging\/list-messages.md", @@ -16039,7 +16143,7 @@ "x-appwrite": { "method": "createEmail", "group": "messages", - "weight": 305, + "weight": 301, "cookies": false, "type": "", "demo": "messaging\/create-email.md", @@ -16183,7 +16287,7 @@ "x-appwrite": { "method": "updateEmail", "group": "messages", - "weight": 312, + "weight": 308, "cookies": false, "type": "", "demo": "messaging\/update-email.md", @@ -16329,7 +16433,7 @@ "x-appwrite": { "method": "createPush", "group": "messages", - "weight": 307, + "weight": 303, "cookies": false, "type": "", "demo": "messaging\/create-push.md", @@ -16503,7 +16607,7 @@ "x-appwrite": { "method": "updatePush", "group": "messages", - "weight": 314, + "weight": 310, "cookies": false, "type": "", "demo": "messaging\/update-push.md", @@ -16681,7 +16785,7 @@ "x-appwrite": { "method": "createSms", "group": "messages", - "weight": 306, + "weight": 302, "cookies": false, "type": "", "demo": "messaging\/create-sms.md", @@ -16858,7 +16962,7 @@ "x-appwrite": { "method": "updateSms", "group": "messages", - "weight": 313, + "weight": 309, "cookies": false, "type": "", "demo": "messaging\/update-sms.md", @@ -17036,7 +17140,7 @@ "x-appwrite": { "method": "getMessage", "group": "messages", - "weight": 311, + "weight": 307, "cookies": false, "type": "", "demo": "messaging\/get-message.md", @@ -17089,7 +17193,7 @@ "x-appwrite": { "method": "delete", "group": "messages", - "weight": 315, + "weight": 311, "cookies": false, "type": "", "demo": "messaging\/delete.md", @@ -17151,7 +17255,7 @@ "x-appwrite": { "method": "listMessageLogs", "group": "logs", - "weight": 309, + "weight": 305, "cookies": false, "type": "", "demo": "messaging\/list-message-logs.md", @@ -17226,7 +17330,7 @@ "x-appwrite": { "method": "listTargets", "group": "messages", - "weight": 310, + "weight": 306, "cookies": false, "type": "", "demo": "messaging\/list-targets.md", @@ -17301,7 +17405,7 @@ "x-appwrite": { "method": "listProviders", "group": "providers", - "weight": 280, + "weight": 276, "cookies": false, "type": "", "demo": "messaging\/list-providers.md", @@ -17377,7 +17481,7 @@ "x-appwrite": { "method": "createApnsProvider", "group": "providers", - "weight": 279, + "weight": 275, "cookies": false, "type": "", "demo": "messaging\/create-apns-provider.md", @@ -17552,7 +17656,7 @@ "x-appwrite": { "method": "updateApnsProvider", "group": "providers", - "weight": 292, + "weight": 288, "cookies": false, "type": "", "demo": "messaging\/update-apns-provider.md", @@ -17728,7 +17832,7 @@ "x-appwrite": { "method": "createFcmProvider", "group": "providers", - "weight": 278, + "weight": 274, "cookies": false, "type": "", "demo": "messaging\/create-fcm-provider.md", @@ -17875,7 +17979,7 @@ "x-appwrite": { "method": "updateFcmProvider", "group": "providers", - "weight": 291, + "weight": 287, "cookies": false, "type": "", "demo": "messaging\/update-fcm-provider.md", @@ -18023,7 +18127,7 @@ "x-appwrite": { "method": "createMailgunProvider", "group": "providers", - "weight": 270, + "weight": 266, "cookies": false, "type": "", "demo": "messaging\/create-mailgun-provider.md", @@ -18138,7 +18242,7 @@ "x-appwrite": { "method": "updateMailgunProvider", "group": "providers", - "weight": 283, + "weight": 279, "cookies": false, "type": "", "demo": "messaging\/update-mailgun-provider.md", @@ -18256,7 +18360,7 @@ "x-appwrite": { "method": "createMsg91Provider", "group": "providers", - "weight": 273, + "weight": 269, "cookies": false, "type": "", "demo": "messaging\/create-msg-91-provider.md", @@ -18351,7 +18455,7 @@ "x-appwrite": { "method": "updateMsg91Provider", "group": "providers", - "weight": 286, + "weight": 282, "cookies": false, "type": "", "demo": "messaging\/update-msg-91-provider.md", @@ -18449,7 +18553,7 @@ "x-appwrite": { "method": "createSendgridProvider", "group": "providers", - "weight": 271, + "weight": 267, "cookies": false, "type": "", "demo": "messaging\/create-sendgrid-provider.md", @@ -18554,7 +18658,7 @@ "x-appwrite": { "method": "updateSendgridProvider", "group": "providers", - "weight": 284, + "weight": 280, "cookies": false, "type": "", "demo": "messaging\/update-sendgrid-provider.md", @@ -18662,7 +18766,7 @@ "x-appwrite": { "method": "createSmtpProvider", "group": "providers", - "weight": 272, + "weight": 268, "cookies": false, "type": "", "demo": "messaging\/create-smtp-provider.md", @@ -18889,7 +18993,7 @@ "x-appwrite": { "method": "updateSmtpProvider", "group": "providers", - "weight": 285, + "weight": 281, "cookies": false, "type": "", "demo": "messaging\/update-smtp-provider.md", @@ -19114,7 +19218,7 @@ "x-appwrite": { "method": "createTelesignProvider", "group": "providers", - "weight": 274, + "weight": 270, "cookies": false, "type": "", "demo": "messaging\/create-telesign-provider.md", @@ -19209,7 +19313,7 @@ "x-appwrite": { "method": "updateTelesignProvider", "group": "providers", - "weight": 287, + "weight": 283, "cookies": false, "type": "", "demo": "messaging\/update-telesign-provider.md", @@ -19307,7 +19411,7 @@ "x-appwrite": { "method": "createTextmagicProvider", "group": "providers", - "weight": 275, + "weight": 271, "cookies": false, "type": "", "demo": "messaging\/create-textmagic-provider.md", @@ -19402,7 +19506,7 @@ "x-appwrite": { "method": "updateTextmagicProvider", "group": "providers", - "weight": 288, + "weight": 284, "cookies": false, "type": "", "demo": "messaging\/update-textmagic-provider.md", @@ -19500,7 +19604,7 @@ "x-appwrite": { "method": "createTwilioProvider", "group": "providers", - "weight": 276, + "weight": 272, "cookies": false, "type": "", "demo": "messaging\/create-twilio-provider.md", @@ -19595,7 +19699,7 @@ "x-appwrite": { "method": "updateTwilioProvider", "group": "providers", - "weight": 289, + "weight": 285, "cookies": false, "type": "", "demo": "messaging\/update-twilio-provider.md", @@ -19693,7 +19797,7 @@ "x-appwrite": { "method": "createVonageProvider", "group": "providers", - "weight": 277, + "weight": 273, "cookies": false, "type": "", "demo": "messaging\/create-vonage-provider.md", @@ -19788,7 +19892,7 @@ "x-appwrite": { "method": "updateVonageProvider", "group": "providers", - "weight": 290, + "weight": 286, "cookies": false, "type": "", "demo": "messaging\/update-vonage-provider.md", @@ -19886,7 +19990,7 @@ "x-appwrite": { "method": "getProvider", "group": "providers", - "weight": 282, + "weight": 278, "cookies": false, "type": "", "demo": "messaging\/get-provider.md", @@ -19939,7 +20043,7 @@ "x-appwrite": { "method": "deleteProvider", "group": "providers", - "weight": 293, + "weight": 289, "cookies": false, "type": "", "demo": "messaging\/delete-provider.md", @@ -20001,7 +20105,7 @@ "x-appwrite": { "method": "listProviderLogs", "group": "providers", - "weight": 281, + "weight": 277, "cookies": false, "type": "", "demo": "messaging\/list-provider-logs.md", @@ -20076,7 +20180,7 @@ "x-appwrite": { "method": "listSubscriberLogs", "group": "subscribers", - "weight": 302, + "weight": 298, "cookies": false, "type": "", "demo": "messaging\/list-subscriber-logs.md", @@ -20151,7 +20255,7 @@ "x-appwrite": { "method": "listTopics", "group": "topics", - "weight": 295, + "weight": 291, "cookies": false, "type": "", "demo": "messaging\/list-topics.md", @@ -20225,7 +20329,7 @@ "x-appwrite": { "method": "createTopic", "group": "topics", - "weight": 294, + "weight": 290, "cookies": false, "type": "", "demo": "messaging\/create-topic.md", @@ -20308,7 +20412,7 @@ "x-appwrite": { "method": "getTopic", "group": "topics", - "weight": 297, + "weight": 293, "cookies": false, "type": "", "demo": "messaging\/get-topic.md", @@ -20368,7 +20472,7 @@ "x-appwrite": { "method": "updateTopic", "group": "topics", - "weight": 298, + "weight": 294, "cookies": false, "type": "", "demo": "messaging\/update-topic.md", @@ -20445,7 +20549,7 @@ "x-appwrite": { "method": "deleteTopic", "group": "topics", - "weight": 299, + "weight": 295, "cookies": false, "type": "", "demo": "messaging\/delete-topic.md", @@ -20507,7 +20611,7 @@ "x-appwrite": { "method": "listTopicLogs", "group": "topics", - "weight": 296, + "weight": 292, "cookies": false, "type": "", "demo": "messaging\/list-topic-logs.md", @@ -20582,7 +20686,7 @@ "x-appwrite": { "method": "listSubscribers", "group": "subscribers", - "weight": 301, + "weight": 297, "cookies": false, "type": "", "demo": "messaging\/list-subscribers.md", @@ -20666,7 +20770,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -20756,7 +20860,7 @@ "x-appwrite": { "method": "getSubscriber", "group": "subscribers", - "weight": 303, + "weight": 299, "cookies": false, "type": "", "demo": "messaging\/get-subscriber.md", @@ -20819,7 +20923,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -20894,7 +20998,7 @@ "x-appwrite": { "method": "list", "group": null, - "weight": 262, + "weight": 258, "cookies": false, "type": "", "demo": "migrations\/list.md", @@ -20968,7 +21072,7 @@ "x-appwrite": { "method": "createAppwriteMigration", "group": null, - "weight": 257, + "weight": 253, "cookies": false, "type": "", "demo": "migrations\/create-appwrite-migration.md", @@ -21056,7 +21160,7 @@ "x-appwrite": { "method": "getAppwriteReport", "group": null, - "weight": 264, + "weight": 260, "cookies": false, "type": "", "demo": "migrations\/get-appwrite-report.md", @@ -21149,7 +21253,7 @@ "x-appwrite": { "method": "createCsvMigration", "group": null, - "weight": 261, + "weight": 257, "cookies": false, "type": "", "demo": "migrations\/create-csv-migration.md", @@ -21233,7 +21337,7 @@ "x-appwrite": { "method": "createFirebaseMigration", "group": null, - "weight": 258, + "weight": 254, "cookies": false, "type": "", "demo": "migrations\/create-firebase-migration.md", @@ -21309,7 +21413,7 @@ "x-appwrite": { "method": "getFirebaseReport", "group": null, - "weight": 265, + "weight": 261, "cookies": false, "type": "", "demo": "migrations\/get-firebase-report.md", @@ -21381,7 +21485,7 @@ "x-appwrite": { "method": "createNHostMigration", "group": null, - "weight": 260, + "weight": 256, "cookies": false, "type": "", "demo": "migrations\/create-n-host-migration.md", @@ -21492,7 +21596,7 @@ "x-appwrite": { "method": "getNHostReport", "group": null, - "weight": 267, + "weight": 263, "cookies": false, "type": "", "demo": "migrations\/get-n-host-report.md", @@ -21625,7 +21729,7 @@ "x-appwrite": { "method": "createSupabaseMigration", "group": null, - "weight": 259, + "weight": 255, "cookies": false, "type": "", "demo": "migrations\/create-supabase-migration.md", @@ -21730,7 +21834,7 @@ "x-appwrite": { "method": "getSupabaseReport", "group": null, - "weight": 266, + "weight": 262, "cookies": false, "type": "", "demo": "migrations\/get-supabase-report.md", @@ -21854,7 +21958,7 @@ "x-appwrite": { "method": "get", "group": null, - "weight": 263, + "weight": 259, "cookies": false, "type": "", "demo": "migrations\/get.md", @@ -21912,7 +22016,7 @@ "x-appwrite": { "method": "retry", "group": null, - "weight": 268, + "weight": 264, "cookies": false, "type": "", "demo": "migrations\/retry.md", @@ -21963,7 +22067,7 @@ "x-appwrite": { "method": "delete", "group": null, - "weight": 269, + "weight": 265, "cookies": false, "type": "", "demo": "migrations\/delete.md", @@ -22433,7 +22537,7 @@ "x-appwrite": { "method": "list", "group": "projects", - "weight": 440, + "weight": 436, "cookies": false, "type": "", "demo": "projects\/list.md", @@ -24068,7 +24172,7 @@ "x-appwrite": { "method": "listDevKeys", "group": "devKeys", - "weight": 438, + "weight": 434, "cookies": false, "type": "", "demo": "projects\/list-dev-keys.md", @@ -24136,7 +24240,7 @@ "x-appwrite": { "method": "createDevKey", "group": "devKeys", - "weight": 435, + "weight": 431, "cookies": false, "type": "", "demo": "projects\/create-dev-key.md", @@ -24221,7 +24325,7 @@ "x-appwrite": { "method": "getDevKey", "group": "devKeys", - "weight": 437, + "weight": 433, "cookies": false, "type": "", "demo": "projects\/get-dev-key.md", @@ -24289,7 +24393,7 @@ "x-appwrite": { "method": "updateDevKey", "group": "devKeys", - "weight": 436, + "weight": 432, "cookies": false, "type": "", "demo": "projects\/update-dev-key.md", @@ -24375,7 +24479,7 @@ "x-appwrite": { "method": "deleteDevKey", "group": "devKeys", - "weight": 439, + "weight": 435, "cookies": false, "type": "", "demo": "projects\/delete-dev-key.md", @@ -25153,7 +25257,7 @@ "properties": { "type": { "type": "string", - "description": "Platform type.", + "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.", "x-example": "web", "enum": [ "web", @@ -28209,11 +28313,11 @@ "x-appwrite": { "method": "listRules", "group": null, - "weight": 240, + "weight": 502, "cookies": false, "type": "", "demo": "proxy\/list-rules.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/list-rules.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterGet a list of all the proxy rules. You can use the query params to filter your results.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28283,7 +28387,7 @@ "x-appwrite": { "method": "createAPIRule", "group": null, - "weight": 501, + "weight": 497, "cookies": false, "type": "", "demo": "proxy\/create-api-rule.md", @@ -28350,7 +28454,7 @@ "x-appwrite": { "method": "createFunctionRule", "group": null, - "weight": 503, + "weight": 499, "cookies": false, "type": "", "demo": "proxy\/create-function-rule.md", @@ -28428,7 +28532,7 @@ "x-appwrite": { "method": "createRedirectRule", "group": null, - "weight": 504, + "weight": 500, "cookies": false, "type": "", "demo": "proxy\/create-redirect-rule.md", @@ -28541,7 +28645,7 @@ "x-appwrite": { "method": "createSiteRule", "group": null, - "weight": 502, + "weight": 498, "cookies": false, "type": "", "demo": "proxy\/create-site-rule.md", @@ -28619,11 +28723,11 @@ "x-appwrite": { "method": "getRule", "group": null, - "weight": 241, + "weight": 501, "cookies": false, "type": "", "demo": "proxy\/get-rule.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/get-rule.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterGet a proxy rule by its unique ID.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28670,11 +28774,11 @@ "x-appwrite": { "method": "deleteRule", "group": null, - "weight": 242, + "weight": 503, "cookies": false, "type": "", "demo": "proxy\/delete-rule.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/delete-rule.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterDelete a proxy rule by its unique ID.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28730,11 +28834,11 @@ "x-appwrite": { "method": "updateRuleVerification", "group": null, - "weight": 243, + "weight": 504, "cookies": false, "type": "", "demo": "proxy\/update-rule-verification.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/update-rule-verification.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterRetry getting verification process of a proxy rule. This endpoint triggers domain verification by checking DNS records (CNAME) against the configured target domain. If verification is successful, a TLS certificate will be automatically provisioned for the domain.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28790,7 +28894,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 473, + "weight": 469, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -28860,7 +28964,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 471, + "weight": 467, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -29109,7 +29213,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 476, + "weight": 472, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -29158,7 +29262,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 499, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -29208,7 +29312,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 495, + "weight": 491, "cookies": false, "type": "", "demo": "sites\/list-templates.md", @@ -29308,7 +29412,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 496, + "weight": 492, "cookies": false, "type": "", "demo": "sites\/get-template.md", @@ -29368,7 +29472,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 497, + "weight": 493, "cookies": false, "type": "", "demo": "sites\/list-usage.md", @@ -29440,7 +29544,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 472, + "weight": 468, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -29499,7 +29603,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 474, + "weight": 470, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -29744,7 +29848,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 475, + "weight": 471, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -29805,7 +29909,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 482, + "weight": 478, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -29885,7 +29989,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 481, + "weight": 477, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -29968,7 +30072,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 477, + "weight": 473, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -30069,7 +30173,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 485, + "weight": 481, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -30132,7 +30236,7 @@ "tags": [ "sites" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -30149,11 +30253,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 478, + "weight": 474, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -30252,7 +30356,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 479, + "weight": 475, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -30350,7 +30454,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 480, + "weight": 476, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -30412,7 +30516,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 483, + "weight": 479, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -30476,7 +30580,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 484, + "weight": 480, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -30566,7 +30670,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 486, + "weight": 482, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -30637,7 +30741,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 488, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -30708,7 +30812,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 487, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -30770,7 +30874,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 489, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -30841,7 +30945,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 498, + "weight": 494, "cookies": false, "type": "", "demo": "sites\/get-usage.md", @@ -30923,7 +31027,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 492, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -30982,7 +31086,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 490, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -31073,7 +31177,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 491, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -31142,7 +31246,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 493, + "weight": 489, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -31233,7 +31337,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 494, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -32705,7 +32809,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 380, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -32778,7 +32882,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 376, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -32857,7 +32961,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 382, + "weight": 378, "cookies": false, "type": "", "demo": "tablesdb\/list-usage.md", @@ -32954,7 +33058,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 377, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -33013,7 +33117,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 378, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -33089,7 +33193,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 379, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -33150,7 +33254,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 387, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -33219,7 +33323,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Table", @@ -33236,7 +33340,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 383, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -33343,7 +33447,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 384, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -33415,7 +33519,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 385, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -33517,7 +33621,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 386, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -33591,7 +33695,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 392, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -33678,7 +33782,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 393, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -33717,7 +33821,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -33787,7 +33891,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 394, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -33826,7 +33930,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -33901,7 +34005,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 395, + "weight": 391, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -34010,7 +34114,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 396, + "weight": 392, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -34124,7 +34228,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 397, + "weight": 393, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -34233,7 +34337,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 398, + "weight": 394, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -34347,7 +34451,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 399, + "weight": 395, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -34465,7 +34569,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 400, + "weight": 396, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -34588,7 +34692,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 401, + "weight": 397, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -34707,7 +34811,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 402, + "weight": 398, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -34831,7 +34935,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 403, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -34950,7 +35054,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 404, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -35074,7 +35178,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 405, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -35183,7 +35287,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 406, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -35280,7 +35384,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric line attribute.", + "description": "Create a geometric line column.", "responses": { "202": { "description": "ColumnLine", @@ -35297,7 +35401,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 407, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -35336,7 +35440,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35364,7 +35468,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -35392,7 +35496,7 @@ "tags": [ "tablesDB" ], - "description": "Update a line column. Changing the `default` value will not update already existing documents.", + "description": "Update a line column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnLine", @@ -35409,7 +35513,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 408, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -35448,7 +35552,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35480,7 +35584,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -35512,7 +35616,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric point attribute.", + "description": "Create a geometric point column.", "responses": { "202": { "description": "ColumnPoint", @@ -35529,7 +35633,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 409, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -35568,7 +35672,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35596,7 +35700,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -35624,7 +35728,7 @@ "tags": [ "tablesDB" ], - "description": "Update a point column. Changing the `default` value will not update already existing documents.", + "description": "Update a point column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPoint", @@ -35641,7 +35745,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 410, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -35680,7 +35784,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35712,7 +35816,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -35744,7 +35848,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric polygon attribute.", + "description": "Create a geometric polygon column.", "responses": { "202": { "description": "ColumnPolygon", @@ -35761,7 +35865,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 411, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -35800,7 +35904,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35828,7 +35932,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -35856,7 +35960,7 @@ "tags": [ "tablesDB" ], - "description": "Update a polygon column. Changing the `default` value will not update already existing documents.", + "description": "Update a polygon column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPolygon", @@ -35873,7 +35977,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 412, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -35912,7 +36016,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35944,7 +36048,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -35993,7 +36097,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 413, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -36127,7 +36231,7 @@ "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 415, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -36166,7 +36270,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -36247,7 +36351,7 @@ "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 416, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -36286,7 +36390,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -36366,7 +36470,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 417, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -36475,7 +36579,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 418, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -36620,7 +36724,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 390, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -36694,7 +36798,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 391, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -36777,7 +36881,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 414, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -36888,7 +36992,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 422, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -36927,7 +37031,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -36973,7 +37077,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 419, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -37012,7 +37116,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -37105,7 +37209,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 420, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -37144,7 +37248,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -37179,7 +37283,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 421, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -37218,7 +37322,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -37262,7 +37366,7 @@ "x-appwrite": { "method": "listTableLogs", "group": "tables", - "weight": 388, + "weight": 384, "cookies": false, "type": "", "demo": "tablesdb\/list-table-logs.md", @@ -37348,7 +37452,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -37390,7 +37494,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "schema": { "type": "string", @@ -37419,7 +37523,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -37436,7 +37540,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -37481,7 +37585,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" }, { @@ -37507,7 +37611,7 @@ "model": "#\/components\/schemas\/rowList" } ], - "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-rows.md" } ], @@ -37535,7 +37639,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "schema": { "type": "string", @@ -37570,7 +37674,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "x-example": null, "items": { "type": "object" @@ -37588,7 +37692,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "responses": { "201": { "description": "Rows List", @@ -37605,7 +37709,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 428, + "weight": 424, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -37646,7 +37750,7 @@ "model": "#\/components\/schemas\/rowList" } ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "demo": "tablesdb\/upsert-rows.md" } ], @@ -37728,7 +37832,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 426, + "weight": 422, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -37825,7 +37929,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 430, + "weight": 426, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -37865,7 +37969,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -37919,7 +38023,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -37961,7 +38065,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -38000,7 +38104,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -38017,7 +38121,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -38061,7 +38165,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -38156,7 +38260,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -38258,7 +38362,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -38300,7 +38404,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -38345,7 +38449,7 @@ "x-appwrite": { "method": "listRowLogs", "group": "logs", - "weight": 432, + "weight": 428, "cookies": false, "type": "", "demo": "tablesdb\/list-row-logs.md", @@ -38441,7 +38545,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -38559,7 +38663,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -38677,7 +38781,7 @@ "x-appwrite": { "method": "getTableUsage", "group": null, - "weight": 389, + "weight": 385, "cookies": false, "type": "", "demo": "tablesdb\/get-table-usage.md", @@ -38772,7 +38876,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 381, + "weight": 377, "cookies": false, "type": "", "demo": "tablesdb\/get-usage.md", @@ -46223,7 +46327,11 @@ "type": { "type": "string", "description": "Database type.", - "x-example": "legacy" + "x-example": "legacy", + "enum": [ + "legacy", + "tablesdb" + ] } }, "required": [ @@ -46461,7 +46569,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46549,7 +46665,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46639,7 +46763,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46729,7 +46861,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46802,7 +46942,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46882,7 +47030,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46972,7 +47128,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47052,7 +47216,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47132,7 +47304,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47212,7 +47392,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47320,7 +47508,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47399,7 +47595,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47490,7 +47694,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47806,7 +48018,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -47894,7 +48114,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -47984,7 +48212,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48074,7 +48310,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48147,7 +48391,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48227,7 +48479,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48317,7 +48577,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48397,7 +48665,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48477,7 +48753,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48557,7 +48841,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48665,7 +48957,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48744,7 +49044,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48835,7 +49143,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48965,7 +49281,14 @@ "status": { "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ] }, "error": { "type": "string", @@ -52191,7 +52514,14 @@ "status": { "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", and \"failed\".", - "x-example": "ready" + "x-example": "ready", + "enum": [ + "waiting", + "processing", + "building", + "ready", + "failed" + ] }, "buildLogs": { "type": "string", @@ -52219,11 +52549,6 @@ "description": "The url of the vcs provider repository", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function" }, - "providerBranch": { - "type": "string", - "description": "The branch of the vcs repository", - "x-example": "0.7.x" - }, "providerCommitHash": { "type": "string", "description": "The commit hash of the vcs commit", @@ -52249,6 +52574,11 @@ "description": "The url of the vcs commit", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb" }, + "providerBranch": { + "type": "string", + "description": "The branch of the vcs repository", + "x-example": "0.7.x" + }, "providerBranchUrl": { "type": "string", "description": "The branch of the vcs repository", @@ -52276,12 +52606,12 @@ "providerRepositoryName", "providerRepositoryOwner", "providerRepositoryUrl", - "providerBranch", "providerCommitHash", "providerCommitAuthorUrl", "providerCommitAuthor", "providerCommitMessage", "providerCommitUrl", + "providerBranch", "providerBranchUrl" ], "example": { @@ -52305,12 +52635,12 @@ "providerRepositoryName": "database", "providerRepositoryOwner": "utopia", "providerRepositoryUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function", - "providerBranch": "0.7.x", "providerCommitHash": "7c3f25d", "providerCommitAuthorUrl": "https:\/\/github.com\/vermakhushboo", "providerCommitAuthor": "Khushboo Verma", "providerCommitMessage": "Update index.js", "providerCommitUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb", + "providerBranch": "0.7.x", "providerBranchUrl": "https:\/\/github.com\/vermakhushboo\/appwrite\/tree\/0.7.x" } }, @@ -52356,12 +52686,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -52375,7 +52716,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "$ref": "#\/components\/schemas\/headers" }, @@ -53311,8 +53652,25 @@ }, "type": { "type": "string", - "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, ios, android, and unity.", - "x-example": "web" + "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.", + "x-example": "web", + "enum": [ + "web", + "flutter-web", + "flutter-ios", + "flutter-android", + "flutter-linux", + "flutter-macos", + "flutter-windows", + "apple-ios", + "apple-macos", + "apple-watchos", + "apple-tvos", + "android", + "unity", + "react-native-ios", + "react-native-android" + ] }, "key": { "type": "string", @@ -53327,7 +53685,7 @@ "hostname": { "type": "string", "description": "Web app hostname. Empty string for other platforms.", - "x-example": true + "x-example": "app.example.com" }, "httpUser": { "type": "string", @@ -53360,7 +53718,7 @@ "type": "web", "key": "com.company.appname", "store": "", - "hostname": true, + "hostname": "app.example.com", "httpUser": "username", "httpPass": "password" } @@ -53613,8 +53971,13 @@ }, "status": { "type": "string", - "description": "Antivirus status. Possible values can are: `disabled`, `offline`, `online`", - "x-example": "online" + "description": "Antivirus status. Possible values are: `disabled`, `offline`, `online`", + "x-example": "online", + "enum": [ + "disabled", + "offline", + "online" + ] } }, "required": [ @@ -53661,8 +54024,13 @@ }, "status": { "type": "string", - "description": "Service status. Possible values can are: `pass`, `fail`", - "x-example": "pass" + "description": "Service status. Possible values are: `pass`, `fail`", + "x-example": "pass", + "enum": [ + "pass", + "fail" + ], + "x-enum-name": "HealthCheckStatus" } }, "required": [ @@ -55827,7 +56195,11 @@ "deploymentResourceType": { "type": "string", "description": "Type of deployment. Possible values are \"function\", \"site\". Used if rule's type is \"deployment\".", - "x-example": "function" + "x-example": "function", + "enum": [ + "function", + "site" + ] }, "deploymentResourceId": { "type": "string", @@ -55837,12 +56209,18 @@ "deploymentVcsProviderBranch": { "type": "string", "description": "Name of Git branch that updates rule. Used if type is \"deployment\"", - "x-example": "function" + "x-example": "main" }, "status": { "type": "string", "description": "Domain verification status. Possible values are \"created\", \"verifying\", \"verified\" and \"unverified\"", - "x-example": "verified" + "x-example": "verified", + "enum": [ + "created", + "verifying", + "verified", + "unverified" + ] }, "logs": { "type": "string", @@ -55884,7 +56262,7 @@ "deploymentId": "n3u9feiwmf", "deploymentResourceType": "function", "deploymentResourceId": "n3u9feiwmf", - "deploymentVcsProviderBranch": "function", + "deploymentVcsProviderBranch": "main", "status": "verified", "logs": "HTTP challegne failed.", "renewAt": "datetime" @@ -56391,7 +56769,14 @@ "status": { "type": "string", "description": "Status of delivery.", - "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed." + "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.", + "enum": [ + "draft", + "processing", + "scheduled", + "sent", + "failed" + ] } }, "required": [ diff --git a/app/config/specs/open-api3-1.8.x-server.json b/app/config/specs/open-api3-1.8.x-server.json index ee0b6f59ac..16e861ba9f 100644 --- a/app/config/specs/open-api3-1.8.x-server.json +++ b/app/config/specs/open-api3-1.8.x-server.json @@ -3161,10 +3161,10 @@ } } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "tags": [ "account" ], @@ -3183,12 +3183,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3199,6 +3199,58 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [], "Session": [] @@ -3233,7 +3285,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "tags": [ "account" ], @@ -3252,12 +3304,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3268,6 +3320,62 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [], "Session": [] @@ -3307,7 +3415,7 @@ } } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4545,7 +4653,7 @@ "x-appwrite": { "method": "list", "group": "databases", - "weight": 320, + "weight": 316, "cookies": false, "type": "", "demo": "databases\/list.md", @@ -4651,7 +4759,7 @@ "x-appwrite": { "method": "create", "group": "databases", - "weight": 316, + "weight": 312, "cookies": false, "type": "", "demo": "databases\/create.md", @@ -4767,7 +4875,7 @@ "x-appwrite": { "method": "get", "group": "databases", - "weight": 317, + "weight": 313, "cookies": false, "type": "", "demo": "databases\/get.md", @@ -4860,7 +4968,7 @@ "x-appwrite": { "method": "update", "group": "databases", - "weight": 318, + "weight": 314, "cookies": false, "type": "", "demo": "databases\/update.md", @@ -4973,7 +5081,7 @@ "x-appwrite": { "method": "delete", "group": "databases", - "weight": 319, + "weight": 315, "cookies": false, "type": "", "demo": "databases\/delete.md", @@ -5067,7 +5175,7 @@ "x-appwrite": { "method": "listCollections", "group": "collections", - "weight": 328, + "weight": 324, "cookies": false, "type": "", "demo": "databases\/list-collections.md", @@ -5155,7 +5263,7 @@ "x-appwrite": { "method": "createCollection", "group": "collections", - "weight": 324, + "weight": 320, "cookies": false, "type": "", "demo": "databases\/create-collection.md", @@ -5264,7 +5372,7 @@ "x-appwrite": { "method": "getCollection", "group": "collections", - "weight": 325, + "weight": 321, "cookies": false, "type": "", "demo": "databases\/get-collection.md", @@ -5338,7 +5446,7 @@ "x-appwrite": { "method": "updateCollection", "group": "collections", - "weight": 326, + "weight": 322, "cookies": false, "type": "", "demo": "databases\/update-collection.md", @@ -5442,7 +5550,7 @@ "x-appwrite": { "method": "deleteCollection", "group": "collections", - "weight": 327, + "weight": 323, "cookies": false, "type": "", "demo": "databases\/delete-collection.md", @@ -5518,7 +5626,7 @@ "x-appwrite": { "method": "listAttributes", "group": "attributes", - "weight": 345, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-attributes.md", @@ -5607,7 +5715,7 @@ "x-appwrite": { "method": "createBooleanAttribute", "group": "attributes", - "weight": 346, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-boolean-attribute.md", @@ -5718,7 +5826,7 @@ "x-appwrite": { "method": "updateBooleanAttribute", "group": "attributes", - "weight": 347, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/update-boolean-attribute.md", @@ -5834,7 +5942,7 @@ "x-appwrite": { "method": "createDatetimeAttribute", "group": "attributes", - "weight": 348, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/create-datetime-attribute.md", @@ -5945,7 +6053,7 @@ "x-appwrite": { "method": "updateDatetimeAttribute", "group": "attributes", - "weight": 349, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/update-datetime-attribute.md", @@ -6061,7 +6169,7 @@ "x-appwrite": { "method": "createEmailAttribute", "group": "attributes", - "weight": 350, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/create-email-attribute.md", @@ -6172,7 +6280,7 @@ "x-appwrite": { "method": "updateEmailAttribute", "group": "attributes", - "weight": 351, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/update-email-attribute.md", @@ -6288,7 +6396,7 @@ "x-appwrite": { "method": "createEnumAttribute", "group": "attributes", - "weight": 352, + "weight": 348, "cookies": false, "type": "", "demo": "databases\/create-enum-attribute.md", @@ -6408,7 +6516,7 @@ "x-appwrite": { "method": "updateEnumAttribute", "group": "attributes", - "weight": 353, + "weight": 349, "cookies": false, "type": "", "demo": "databases\/update-enum-attribute.md", @@ -6533,7 +6641,7 @@ "x-appwrite": { "method": "createFloatAttribute", "group": "attributes", - "weight": 354, + "weight": 350, "cookies": false, "type": "", "demo": "databases\/create-float-attribute.md", @@ -6654,7 +6762,7 @@ "x-appwrite": { "method": "updateFloatAttribute", "group": "attributes", - "weight": 355, + "weight": 351, "cookies": false, "type": "", "demo": "databases\/update-float-attribute.md", @@ -6780,7 +6888,7 @@ "x-appwrite": { "method": "createIntegerAttribute", "group": "attributes", - "weight": 356, + "weight": 352, "cookies": false, "type": "", "demo": "databases\/create-integer-attribute.md", @@ -6901,7 +7009,7 @@ "x-appwrite": { "method": "updateIntegerAttribute", "group": "attributes", - "weight": 357, + "weight": 353, "cookies": false, "type": "", "demo": "databases\/update-integer-attribute.md", @@ -7027,7 +7135,7 @@ "x-appwrite": { "method": "createIpAttribute", "group": "attributes", - "weight": 358, + "weight": 354, "cookies": false, "type": "", "demo": "databases\/create-ip-attribute.md", @@ -7138,7 +7246,7 @@ "x-appwrite": { "method": "updateIpAttribute", "group": "attributes", - "weight": 359, + "weight": 355, "cookies": false, "type": "", "demo": "databases\/update-ip-attribute.md", @@ -7254,7 +7362,7 @@ "x-appwrite": { "method": "createLineAttribute", "group": "attributes", - "weight": 360, + "weight": 356, "cookies": false, "type": "", "demo": "databases\/create-line-attribute.md", @@ -7323,7 +7431,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -7368,7 +7476,7 @@ "x-appwrite": { "method": "updateLineAttribute", "group": "attributes", - "weight": 361, + "weight": 357, "cookies": false, "type": "", "demo": "databases\/update-line-attribute.md", @@ -7441,7 +7549,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -7473,7 +7581,7 @@ "tags": [ "databases" ], - "description": "Create a geometric 2d point attribute.", + "description": "Create a geometric point attribute.", "responses": { "202": { "description": "AttributePoint", @@ -7490,7 +7598,7 @@ "x-appwrite": { "method": "createPointAttribute", "group": "attributes", - "weight": 362, + "weight": 358, "cookies": false, "type": "", "demo": "databases\/create-point-attribute.md", @@ -7559,7 +7667,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -7604,7 +7712,7 @@ "x-appwrite": { "method": "updatePointAttribute", "group": "attributes", - "weight": 363, + "weight": 359, "cookies": false, "type": "", "demo": "databases\/update-point-attribute.md", @@ -7677,7 +7785,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -7726,7 +7834,7 @@ "x-appwrite": { "method": "createPolygonAttribute", "group": "attributes", - "weight": 364, + "weight": 360, "cookies": false, "type": "", "demo": "databases\/create-polygon-attribute.md", @@ -7795,7 +7903,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -7840,7 +7948,7 @@ "x-appwrite": { "method": "updatePolygonAttribute", "group": "attributes", - "weight": 365, + "weight": 361, "cookies": false, "type": "", "demo": "databases\/update-polygon-attribute.md", @@ -7913,7 +8021,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -7962,7 +8070,7 @@ "x-appwrite": { "method": "createRelationshipAttribute", "group": "attributes", - "weight": 366, + "weight": 362, "cookies": false, "type": "", "demo": "databases\/create-relationship-attribute.md", @@ -8098,7 +8206,7 @@ "x-appwrite": { "method": "createStringAttribute", "group": "attributes", - "weight": 368, + "weight": 364, "cookies": false, "type": "", "demo": "databases\/create-string-attribute.md", @@ -8220,7 +8328,7 @@ "x-appwrite": { "method": "updateStringAttribute", "group": "attributes", - "weight": 369, + "weight": 365, "cookies": false, "type": "", "demo": "databases\/update-string-attribute.md", @@ -8341,7 +8449,7 @@ "x-appwrite": { "method": "createUrlAttribute", "group": "attributes", - "weight": 370, + "weight": 366, "cookies": false, "type": "", "demo": "databases\/create-url-attribute.md", @@ -8452,7 +8560,7 @@ "x-appwrite": { "method": "updateUrlAttribute", "group": "attributes", - "weight": 371, + "weight": 367, "cookies": false, "type": "", "demo": "databases\/update-url-attribute.md", @@ -8599,7 +8707,7 @@ "x-appwrite": { "method": "getAttribute", "group": "attributes", - "weight": 343, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-attribute.md", @@ -8675,7 +8783,7 @@ "x-appwrite": { "method": "deleteAttribute", "group": "attributes", - "weight": 344, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-attribute.md", @@ -8760,7 +8868,7 @@ "x-appwrite": { "method": "updateRelationshipAttribute", "group": "attributes", - "weight": 367, + "weight": 363, "cookies": false, "type": "", "demo": "databases\/update-relationship-attribute.md", @@ -8873,7 +8981,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -8964,7 +9072,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -9146,7 +9254,7 @@ "x-appwrite": { "method": "upsertDocuments", "group": "documents", - "weight": 336, + "weight": 332, "cookies": false, "type": "", "demo": "databases\/upsert-documents.md", @@ -9276,7 +9384,7 @@ "x-appwrite": { "method": "updateDocuments", "group": "documents", - "weight": 334, + "weight": 330, "cookies": false, "type": "", "demo": "databases\/update-documents.md", @@ -9375,7 +9483,7 @@ "x-appwrite": { "method": "deleteDocuments", "group": "documents", - "weight": 338, + "weight": 334, "cookies": false, "type": "", "demo": "databases\/delete-documents.md", @@ -9471,7 +9579,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -9572,7 +9680,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -9723,7 +9831,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -9828,7 +9936,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -9918,7 +10026,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -10039,7 +10147,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -10160,7 +10268,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 375, + "weight": 371, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -10247,7 +10355,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 372, + "weight": 368, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -10381,7 +10489,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 373, + "weight": 369, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -10457,7 +10565,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 374, + "weight": 370, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -10542,7 +10650,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 444, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -10616,7 +10724,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 441, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -10850,7 +10958,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 446, + "weight": 442, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -10900,7 +11008,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 447, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -10951,7 +11059,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 442, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -11011,7 +11119,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 443, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -11242,7 +11350,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 445, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -11304,7 +11412,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 450, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -11385,7 +11493,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 451, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -11469,7 +11577,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 448, + "weight": 444, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -11566,7 +11674,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 456, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -11635,7 +11743,7 @@ "tags": [ "functions" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -11652,11 +11760,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 453, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -11756,7 +11864,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 454, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -11854,7 +11962,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 449, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -11917,7 +12025,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 452, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -11982,7 +12090,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 455, + "weight": 451, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -12073,7 +12181,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 457, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -12145,7 +12253,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -12222,7 +12330,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -12340,7 +12448,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -12407,7 +12515,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 461, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -12479,7 +12587,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 466, + "weight": 462, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -12539,7 +12647,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 464, + "weight": 460, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -12631,7 +12739,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 465, + "weight": 461, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -12701,7 +12809,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 467, + "weight": 463, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -12793,7 +12901,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 468, + "weight": 464, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -12865,7 +12973,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -12919,7 +13027,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -14722,7 +14830,7 @@ "x-appwrite": { "method": "listMessages", "group": "messages", - "weight": 308, + "weight": 304, "cookies": false, "type": "", "demo": "messaging\/list-messages.md", @@ -14799,7 +14907,7 @@ "x-appwrite": { "method": "createEmail", "group": "messages", - "weight": 305, + "weight": 301, "cookies": false, "type": "", "demo": "messaging\/create-email.md", @@ -14944,7 +15052,7 @@ "x-appwrite": { "method": "updateEmail", "group": "messages", - "weight": 312, + "weight": 308, "cookies": false, "type": "", "demo": "messaging\/update-email.md", @@ -15091,7 +15199,7 @@ "x-appwrite": { "method": "createPush", "group": "messages", - "weight": 307, + "weight": 303, "cookies": false, "type": "", "demo": "messaging\/create-push.md", @@ -15266,7 +15374,7 @@ "x-appwrite": { "method": "updatePush", "group": "messages", - "weight": 314, + "weight": 310, "cookies": false, "type": "", "demo": "messaging\/update-push.md", @@ -15445,7 +15553,7 @@ "x-appwrite": { "method": "createSms", "group": "messages", - "weight": 306, + "weight": 302, "cookies": false, "type": "", "demo": "messaging\/create-sms.md", @@ -15625,7 +15733,7 @@ "x-appwrite": { "method": "updateSms", "group": "messages", - "weight": 313, + "weight": 309, "cookies": false, "type": "", "demo": "messaging\/update-sms.md", @@ -15806,7 +15914,7 @@ "x-appwrite": { "method": "getMessage", "group": "messages", - "weight": 311, + "weight": 307, "cookies": false, "type": "", "demo": "messaging\/get-message.md", @@ -15860,7 +15968,7 @@ "x-appwrite": { "method": "delete", "group": "messages", - "weight": 315, + "weight": 311, "cookies": false, "type": "", "demo": "messaging\/delete.md", @@ -15923,7 +16031,7 @@ "x-appwrite": { "method": "listMessageLogs", "group": "logs", - "weight": 309, + "weight": 305, "cookies": false, "type": "", "demo": "messaging\/list-message-logs.md", @@ -15999,7 +16107,7 @@ "x-appwrite": { "method": "listTargets", "group": "messages", - "weight": 310, + "weight": 306, "cookies": false, "type": "", "demo": "messaging\/list-targets.md", @@ -16075,7 +16183,7 @@ "x-appwrite": { "method": "listProviders", "group": "providers", - "weight": 280, + "weight": 276, "cookies": false, "type": "", "demo": "messaging\/list-providers.md", @@ -16152,7 +16260,7 @@ "x-appwrite": { "method": "createApnsProvider", "group": "providers", - "weight": 279, + "weight": 275, "cookies": false, "type": "", "demo": "messaging\/create-apns-provider.md", @@ -16330,7 +16438,7 @@ "x-appwrite": { "method": "updateApnsProvider", "group": "providers", - "weight": 292, + "weight": 288, "cookies": false, "type": "", "demo": "messaging\/update-apns-provider.md", @@ -16509,7 +16617,7 @@ "x-appwrite": { "method": "createFcmProvider", "group": "providers", - "weight": 278, + "weight": 274, "cookies": false, "type": "", "demo": "messaging\/create-fcm-provider.md", @@ -16659,7 +16767,7 @@ "x-appwrite": { "method": "updateFcmProvider", "group": "providers", - "weight": 291, + "weight": 287, "cookies": false, "type": "", "demo": "messaging\/update-fcm-provider.md", @@ -16810,7 +16918,7 @@ "x-appwrite": { "method": "createMailgunProvider", "group": "providers", - "weight": 270, + "weight": 266, "cookies": false, "type": "", "demo": "messaging\/create-mailgun-provider.md", @@ -16926,7 +17034,7 @@ "x-appwrite": { "method": "updateMailgunProvider", "group": "providers", - "weight": 283, + "weight": 279, "cookies": false, "type": "", "demo": "messaging\/update-mailgun-provider.md", @@ -17045,7 +17153,7 @@ "x-appwrite": { "method": "createMsg91Provider", "group": "providers", - "weight": 273, + "weight": 269, "cookies": false, "type": "", "demo": "messaging\/create-msg-91-provider.md", @@ -17141,7 +17249,7 @@ "x-appwrite": { "method": "updateMsg91Provider", "group": "providers", - "weight": 286, + "weight": 282, "cookies": false, "type": "", "demo": "messaging\/update-msg-91-provider.md", @@ -17240,7 +17348,7 @@ "x-appwrite": { "method": "createSendgridProvider", "group": "providers", - "weight": 271, + "weight": 267, "cookies": false, "type": "", "demo": "messaging\/create-sendgrid-provider.md", @@ -17346,7 +17454,7 @@ "x-appwrite": { "method": "updateSendgridProvider", "group": "providers", - "weight": 284, + "weight": 280, "cookies": false, "type": "", "demo": "messaging\/update-sendgrid-provider.md", @@ -17455,7 +17563,7 @@ "x-appwrite": { "method": "createSmtpProvider", "group": "providers", - "weight": 272, + "weight": 268, "cookies": false, "type": "", "demo": "messaging\/create-smtp-provider.md", @@ -17685,7 +17793,7 @@ "x-appwrite": { "method": "updateSmtpProvider", "group": "providers", - "weight": 285, + "weight": 281, "cookies": false, "type": "", "demo": "messaging\/update-smtp-provider.md", @@ -17913,7 +18021,7 @@ "x-appwrite": { "method": "createTelesignProvider", "group": "providers", - "weight": 274, + "weight": 270, "cookies": false, "type": "", "demo": "messaging\/create-telesign-provider.md", @@ -18009,7 +18117,7 @@ "x-appwrite": { "method": "updateTelesignProvider", "group": "providers", - "weight": 287, + "weight": 283, "cookies": false, "type": "", "demo": "messaging\/update-telesign-provider.md", @@ -18108,7 +18216,7 @@ "x-appwrite": { "method": "createTextmagicProvider", "group": "providers", - "weight": 275, + "weight": 271, "cookies": false, "type": "", "demo": "messaging\/create-textmagic-provider.md", @@ -18204,7 +18312,7 @@ "x-appwrite": { "method": "updateTextmagicProvider", "group": "providers", - "weight": 288, + "weight": 284, "cookies": false, "type": "", "demo": "messaging\/update-textmagic-provider.md", @@ -18303,7 +18411,7 @@ "x-appwrite": { "method": "createTwilioProvider", "group": "providers", - "weight": 276, + "weight": 272, "cookies": false, "type": "", "demo": "messaging\/create-twilio-provider.md", @@ -18399,7 +18507,7 @@ "x-appwrite": { "method": "updateTwilioProvider", "group": "providers", - "weight": 289, + "weight": 285, "cookies": false, "type": "", "demo": "messaging\/update-twilio-provider.md", @@ -18498,7 +18606,7 @@ "x-appwrite": { "method": "createVonageProvider", "group": "providers", - "weight": 277, + "weight": 273, "cookies": false, "type": "", "demo": "messaging\/create-vonage-provider.md", @@ -18594,7 +18702,7 @@ "x-appwrite": { "method": "updateVonageProvider", "group": "providers", - "weight": 290, + "weight": 286, "cookies": false, "type": "", "demo": "messaging\/update-vonage-provider.md", @@ -18693,7 +18801,7 @@ "x-appwrite": { "method": "getProvider", "group": "providers", - "weight": 282, + "weight": 278, "cookies": false, "type": "", "demo": "messaging\/get-provider.md", @@ -18747,7 +18855,7 @@ "x-appwrite": { "method": "deleteProvider", "group": "providers", - "weight": 293, + "weight": 289, "cookies": false, "type": "", "demo": "messaging\/delete-provider.md", @@ -18810,7 +18918,7 @@ "x-appwrite": { "method": "listProviderLogs", "group": "providers", - "weight": 281, + "weight": 277, "cookies": false, "type": "", "demo": "messaging\/list-provider-logs.md", @@ -18886,7 +18994,7 @@ "x-appwrite": { "method": "listSubscriberLogs", "group": "subscribers", - "weight": 302, + "weight": 298, "cookies": false, "type": "", "demo": "messaging\/list-subscriber-logs.md", @@ -18962,7 +19070,7 @@ "x-appwrite": { "method": "listTopics", "group": "topics", - "weight": 295, + "weight": 291, "cookies": false, "type": "", "demo": "messaging\/list-topics.md", @@ -19037,7 +19145,7 @@ "x-appwrite": { "method": "createTopic", "group": "topics", - "weight": 294, + "weight": 290, "cookies": false, "type": "", "demo": "messaging\/create-topic.md", @@ -19121,7 +19229,7 @@ "x-appwrite": { "method": "getTopic", "group": "topics", - "weight": 297, + "weight": 293, "cookies": false, "type": "", "demo": "messaging\/get-topic.md", @@ -19182,7 +19290,7 @@ "x-appwrite": { "method": "updateTopic", "group": "topics", - "weight": 298, + "weight": 294, "cookies": false, "type": "", "demo": "messaging\/update-topic.md", @@ -19260,7 +19368,7 @@ "x-appwrite": { "method": "deleteTopic", "group": "topics", - "weight": 299, + "weight": 295, "cookies": false, "type": "", "demo": "messaging\/delete-topic.md", @@ -19323,7 +19431,7 @@ "x-appwrite": { "method": "listTopicLogs", "group": "topics", - "weight": 296, + "weight": 292, "cookies": false, "type": "", "demo": "messaging\/list-topic-logs.md", @@ -19399,7 +19507,7 @@ "x-appwrite": { "method": "listSubscribers", "group": "subscribers", - "weight": 301, + "weight": 297, "cookies": false, "type": "", "demo": "messaging\/list-subscribers.md", @@ -19484,7 +19592,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -19576,7 +19684,7 @@ "x-appwrite": { "method": "getSubscriber", "group": "subscribers", - "weight": 303, + "weight": 299, "cookies": false, "type": "", "demo": "messaging\/get-subscriber.md", @@ -19640,7 +19748,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -19717,7 +19825,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 473, + "weight": 469, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -19788,7 +19896,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 471, + "weight": 467, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -20038,7 +20146,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 476, + "weight": 472, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -20088,7 +20196,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 499, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -20139,7 +20247,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 472, + "weight": 468, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -20199,7 +20307,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 474, + "weight": 470, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -20445,7 +20553,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 475, + "weight": 471, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -20507,7 +20615,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 482, + "weight": 478, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -20588,7 +20696,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 481, + "weight": 477, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -20672,7 +20780,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 477, + "weight": 473, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -20774,7 +20882,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 485, + "weight": 481, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -20838,7 +20946,7 @@ "tags": [ "sites" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -20855,11 +20963,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 478, + "weight": 474, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -20959,7 +21067,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 479, + "weight": 475, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -21058,7 +21166,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 480, + "weight": 476, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -21121,7 +21229,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 483, + "weight": 479, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -21186,7 +21294,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 484, + "weight": 480, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -21277,7 +21385,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 486, + "weight": 482, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -21349,7 +21457,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 488, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -21421,7 +21529,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 487, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -21484,7 +21592,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 489, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -21556,7 +21664,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 492, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -21616,7 +21724,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 490, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -21708,7 +21816,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 491, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -21778,7 +21886,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 493, + "weight": 489, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -21870,7 +21978,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 494, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -23210,7 +23318,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 380, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -23284,7 +23392,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 376, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -23364,7 +23472,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 377, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -23424,7 +23532,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 378, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -23501,7 +23609,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 379, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -23563,7 +23671,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 387, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -23633,7 +23741,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Table", @@ -23650,7 +23758,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 383, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -23758,7 +23866,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 384, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -23831,7 +23939,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 385, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -23934,7 +24042,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 386, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -24009,7 +24117,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 392, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -24097,7 +24205,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 393, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -24137,7 +24245,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -24207,7 +24315,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 394, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -24247,7 +24355,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -24322,7 +24430,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 395, + "weight": 391, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -24432,7 +24540,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 396, + "weight": 392, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -24547,7 +24655,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 397, + "weight": 393, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -24657,7 +24765,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 398, + "weight": 394, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -24772,7 +24880,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 399, + "weight": 395, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -24891,7 +24999,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 400, + "weight": 396, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -25015,7 +25123,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 401, + "weight": 397, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -25135,7 +25243,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 402, + "weight": 398, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -25260,7 +25368,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 403, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -25380,7 +25488,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 404, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -25505,7 +25613,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 405, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -25615,7 +25723,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 406, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -25713,7 +25821,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric line attribute.", + "description": "Create a geometric line column.", "responses": { "202": { "description": "ColumnLine", @@ -25730,7 +25838,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 407, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -25770,7 +25878,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -25798,7 +25906,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -25826,7 +25934,7 @@ "tags": [ "tablesDB" ], - "description": "Update a line column. Changing the `default` value will not update already existing documents.", + "description": "Update a line column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnLine", @@ -25843,7 +25951,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 408, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -25883,7 +25991,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -25915,7 +26023,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -25947,7 +26055,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric point attribute.", + "description": "Create a geometric point column.", "responses": { "202": { "description": "ColumnPoint", @@ -25964,7 +26072,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 409, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -26004,7 +26112,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26032,7 +26140,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -26060,7 +26168,7 @@ "tags": [ "tablesDB" ], - "description": "Update a point column. Changing the `default` value will not update already existing documents.", + "description": "Update a point column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPoint", @@ -26077,7 +26185,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 410, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -26117,7 +26225,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26149,7 +26257,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -26181,7 +26289,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric polygon attribute.", + "description": "Create a geometric polygon column.", "responses": { "202": { "description": "ColumnPolygon", @@ -26198,7 +26306,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 411, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -26238,7 +26346,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26266,7 +26374,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -26294,7 +26402,7 @@ "tags": [ "tablesDB" ], - "description": "Update a polygon column. Changing the `default` value will not update already existing documents.", + "description": "Update a polygon column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPolygon", @@ -26311,7 +26419,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 412, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -26351,7 +26459,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26383,7 +26491,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -26432,7 +26540,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 413, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -26567,7 +26675,7 @@ "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 415, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -26607,7 +26715,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26688,7 +26796,7 @@ "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 416, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -26728,7 +26836,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26808,7 +26916,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 417, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -26918,7 +27026,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 418, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -27064,7 +27172,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 390, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -27139,7 +27247,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 391, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -27223,7 +27331,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 414, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -27335,7 +27443,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 422, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -27375,7 +27483,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -27421,7 +27529,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 419, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -27461,7 +27569,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -27554,7 +27662,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 420, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -27594,7 +27702,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -27629,7 +27737,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 421, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -27669,7 +27777,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -27713,7 +27821,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -27757,7 +27865,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "schema": { "type": "string", @@ -27786,7 +27894,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -27803,7 +27911,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -27849,7 +27957,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" }, { @@ -27876,7 +27984,7 @@ "model": "#\/components\/schemas\/rowList" } ], - "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-rows.md" } ], @@ -27906,7 +28014,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "schema": { "type": "string", @@ -27941,7 +28049,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "x-example": null, "items": { "type": "object" @@ -27959,7 +28067,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "responses": { "201": { "description": "Rows List", @@ -27976,7 +28084,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 428, + "weight": 424, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -28018,7 +28126,7 @@ "model": "#\/components\/schemas\/rowList" } ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "demo": "tablesdb\/upsert-rows.md" } ], @@ -28101,7 +28209,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 426, + "weight": 422, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -28199,7 +28307,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 430, + "weight": 426, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -28240,7 +28348,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -28294,7 +28402,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -28338,7 +28446,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -28377,7 +28485,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -28394,7 +28502,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -28439,7 +28547,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -28536,7 +28644,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -28640,7 +28748,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -28684,7 +28792,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -28729,7 +28837,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -28849,7 +28957,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -35093,7 +35201,11 @@ "type": { "type": "string", "description": "Database type.", - "x-example": "legacy" + "x-example": "legacy", + "enum": [ + "legacy", + "tablesdb" + ] } }, "required": [ @@ -35331,7 +35443,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35419,7 +35539,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35509,7 +35637,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35599,7 +35735,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35672,7 +35816,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35752,7 +35904,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35842,7 +36002,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35922,7 +36090,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36002,7 +36178,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36082,7 +36266,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36190,7 +36382,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36269,7 +36469,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36360,7 +36568,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36676,7 +36892,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36764,7 +36988,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36854,7 +37086,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36944,7 +37184,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37017,7 +37265,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37097,7 +37353,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37187,7 +37451,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37267,7 +37539,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37347,7 +37627,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37427,7 +37715,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37535,7 +37831,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37614,7 +37918,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37705,7 +38017,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37835,7 +38155,14 @@ "status": { "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ] }, "error": { "type": "string", @@ -40272,7 +40599,14 @@ "status": { "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", and \"failed\".", - "x-example": "ready" + "x-example": "ready", + "enum": [ + "waiting", + "processing", + "building", + "ready", + "failed" + ] }, "buildLogs": { "type": "string", @@ -40300,11 +40634,6 @@ "description": "The url of the vcs provider repository", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function" }, - "providerBranch": { - "type": "string", - "description": "The branch of the vcs repository", - "x-example": "0.7.x" - }, "providerCommitHash": { "type": "string", "description": "The commit hash of the vcs commit", @@ -40330,6 +40659,11 @@ "description": "The url of the vcs commit", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb" }, + "providerBranch": { + "type": "string", + "description": "The branch of the vcs repository", + "x-example": "0.7.x" + }, "providerBranchUrl": { "type": "string", "description": "The branch of the vcs repository", @@ -40357,12 +40691,12 @@ "providerRepositoryName", "providerRepositoryOwner", "providerRepositoryUrl", - "providerBranch", "providerCommitHash", "providerCommitAuthorUrl", "providerCommitAuthor", "providerCommitMessage", "providerCommitUrl", + "providerBranch", "providerBranchUrl" ], "example": { @@ -40386,12 +40720,12 @@ "providerRepositoryName": "database", "providerRepositoryOwner": "utopia", "providerRepositoryUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function", - "providerBranch": "0.7.x", "providerCommitHash": "7c3f25d", "providerCommitAuthorUrl": "https:\/\/github.com\/vermakhushboo", "providerCommitAuthor": "Khushboo Verma", "providerCommitMessage": "Update index.js", "providerCommitUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb", + "providerBranch": "0.7.x", "providerBranchUrl": "https:\/\/github.com\/vermakhushboo\/appwrite\/tree\/0.7.x" } }, @@ -40437,12 +40771,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -40456,7 +40801,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "$ref": "#\/components\/schemas\/headers" }, @@ -40810,8 +41155,13 @@ }, "status": { "type": "string", - "description": "Antivirus status. Possible values can are: `disabled`, `offline`, `online`", - "x-example": "online" + "description": "Antivirus status. Possible values are: `disabled`, `offline`, `online`", + "x-example": "online", + "enum": [ + "disabled", + "offline", + "online" + ] } }, "required": [ @@ -40858,8 +41208,13 @@ }, "status": { "type": "string", - "description": "Service status. Possible values can are: `pass`, `fail`", - "x-example": "pass" + "description": "Service status. Possible values are: `pass`, `fail`", + "x-example": "pass", + "enum": [ + "pass", + "fail" + ], + "x-enum-name": "HealthCheckStatus" } }, "required": [ @@ -41324,7 +41679,14 @@ "status": { "type": "string", "description": "Status of delivery.", - "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed." + "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.", + "enum": [ + "draft", + "processing", + "scheduled", + "sent", + "failed" + ] } }, "required": [ diff --git a/app/config/specs/open-api3-latest-client.json b/app/config/specs/open-api3-latest-client.json index 81530d8ecd..4cb47c7f08 100644 --- a/app/config/specs/open-api3-latest-client.json +++ b/app/config/specs/open-api3-latest-client.json @@ -3464,10 +3464,10 @@ } } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "tags": [ "account" ], @@ -3486,12 +3486,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3502,6 +3502,56 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3535,7 +3585,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "tags": [ "account" ], @@ -3554,12 +3604,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3570,6 +3620,60 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3608,7 +3712,7 @@ } } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4830,7 +4934,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -4919,7 +5023,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -5069,7 +5173,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -5168,7 +5272,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -5316,7 +5420,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -5419,7 +5523,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -5507,7 +5611,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -5626,7 +5730,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -5745,7 +5849,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -5820,7 +5924,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -5936,7 +6040,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -6010,7 +6114,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -6062,7 +6166,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -6530,7 +6634,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -6613,7 +6717,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -7491,7 +7595,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -7533,7 +7637,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "schema": { "type": "string", @@ -7562,7 +7666,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -7579,7 +7683,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -7624,7 +7728,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" } ], @@ -7652,7 +7756,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "schema": { "type": "string", @@ -7687,7 +7791,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "x-example": null, "items": { "type": "object" @@ -7724,7 +7828,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -7766,7 +7870,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -7805,7 +7909,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -7822,7 +7926,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -7866,7 +7970,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -7961,7 +8065,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -8063,7 +8167,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -8105,7 +8209,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -8150,7 +8254,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -8268,7 +8372,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -11393,12 +11497,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -11412,7 +11527,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "$ref": "#\/components\/schemas\/headers" }, diff --git a/app/config/specs/open-api3-latest-console.json b/app/config/specs/open-api3-latest-console.json index 53137becbb..cf85dd57ed 100644 --- a/app/config/specs/open-api3-latest-console.json +++ b/app/config/specs/open-api3-latest-console.json @@ -3473,10 +3473,10 @@ } } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "tags": [ "account" ], @@ -3495,12 +3495,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3511,6 +3511,56 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3543,7 +3593,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "tags": [ "account" ], @@ -3562,12 +3612,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3578,6 +3628,60 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3615,7 +3719,7 @@ } } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4828,7 +4932,7 @@ "x-appwrite": { "method": "chat", "group": "console", - "weight": 256, + "weight": 252, "cookies": false, "type": "", "demo": "assistant\/chat.md", @@ -4888,7 +4992,7 @@ "x-appwrite": { "method": "getResource", "group": null, - "weight": 500, + "weight": 496, "cookies": false, "type": "", "demo": "console\/get-resource.md", @@ -4963,7 +5067,7 @@ "x-appwrite": { "method": "variables", "group": "console", - "weight": 255, + "weight": 251, "cookies": false, "type": "", "demo": "console\/variables.md", @@ -5011,7 +5115,7 @@ "x-appwrite": { "method": "list", "group": "databases", - "weight": 320, + "weight": 316, "cookies": false, "type": "", "demo": "databases\/list.md", @@ -5115,7 +5219,7 @@ "x-appwrite": { "method": "create", "group": "databases", - "weight": 316, + "weight": 312, "cookies": false, "type": "", "demo": "databases\/create.md", @@ -5229,7 +5333,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 323, + "weight": 319, "cookies": false, "type": "", "demo": "databases\/list-usage.md", @@ -5331,7 +5435,7 @@ "x-appwrite": { "method": "get", "group": "databases", - "weight": 317, + "weight": 313, "cookies": false, "type": "", "demo": "databases\/get.md", @@ -5422,7 +5526,7 @@ "x-appwrite": { "method": "update", "group": "databases", - "weight": 318, + "weight": 314, "cookies": false, "type": "", "demo": "databases\/update.md", @@ -5533,7 +5637,7 @@ "x-appwrite": { "method": "delete", "group": "databases", - "weight": 319, + "weight": 315, "cookies": false, "type": "", "demo": "databases\/delete.md", @@ -5625,7 +5729,7 @@ "x-appwrite": { "method": "listCollections", "group": "collections", - "weight": 328, + "weight": 324, "cookies": false, "type": "", "demo": "databases\/list-collections.md", @@ -5712,7 +5816,7 @@ "x-appwrite": { "method": "createCollection", "group": "collections", - "weight": 324, + "weight": 320, "cookies": false, "type": "", "demo": "databases\/create-collection.md", @@ -5820,7 +5924,7 @@ "x-appwrite": { "method": "getCollection", "group": "collections", - "weight": 325, + "weight": 321, "cookies": false, "type": "", "demo": "databases\/get-collection.md", @@ -5893,7 +5997,7 @@ "x-appwrite": { "method": "updateCollection", "group": "collections", - "weight": 326, + "weight": 322, "cookies": false, "type": "", "demo": "databases\/update-collection.md", @@ -5996,7 +6100,7 @@ "x-appwrite": { "method": "deleteCollection", "group": "collections", - "weight": 327, + "weight": 323, "cookies": false, "type": "", "demo": "databases\/delete-collection.md", @@ -6071,7 +6175,7 @@ "x-appwrite": { "method": "listAttributes", "group": "attributes", - "weight": 345, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-attributes.md", @@ -6159,7 +6263,7 @@ "x-appwrite": { "method": "createBooleanAttribute", "group": "attributes", - "weight": 346, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-boolean-attribute.md", @@ -6269,7 +6373,7 @@ "x-appwrite": { "method": "updateBooleanAttribute", "group": "attributes", - "weight": 347, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/update-boolean-attribute.md", @@ -6384,7 +6488,7 @@ "x-appwrite": { "method": "createDatetimeAttribute", "group": "attributes", - "weight": 348, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/create-datetime-attribute.md", @@ -6494,7 +6598,7 @@ "x-appwrite": { "method": "updateDatetimeAttribute", "group": "attributes", - "weight": 349, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/update-datetime-attribute.md", @@ -6609,7 +6713,7 @@ "x-appwrite": { "method": "createEmailAttribute", "group": "attributes", - "weight": 350, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/create-email-attribute.md", @@ -6719,7 +6823,7 @@ "x-appwrite": { "method": "updateEmailAttribute", "group": "attributes", - "weight": 351, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/update-email-attribute.md", @@ -6834,7 +6938,7 @@ "x-appwrite": { "method": "createEnumAttribute", "group": "attributes", - "weight": 352, + "weight": 348, "cookies": false, "type": "", "demo": "databases\/create-enum-attribute.md", @@ -6953,7 +7057,7 @@ "x-appwrite": { "method": "updateEnumAttribute", "group": "attributes", - "weight": 353, + "weight": 349, "cookies": false, "type": "", "demo": "databases\/update-enum-attribute.md", @@ -7077,7 +7181,7 @@ "x-appwrite": { "method": "createFloatAttribute", "group": "attributes", - "weight": 354, + "weight": 350, "cookies": false, "type": "", "demo": "databases\/create-float-attribute.md", @@ -7197,7 +7301,7 @@ "x-appwrite": { "method": "updateFloatAttribute", "group": "attributes", - "weight": 355, + "weight": 351, "cookies": false, "type": "", "demo": "databases\/update-float-attribute.md", @@ -7322,7 +7426,7 @@ "x-appwrite": { "method": "createIntegerAttribute", "group": "attributes", - "weight": 356, + "weight": 352, "cookies": false, "type": "", "demo": "databases\/create-integer-attribute.md", @@ -7442,7 +7546,7 @@ "x-appwrite": { "method": "updateIntegerAttribute", "group": "attributes", - "weight": 357, + "weight": 353, "cookies": false, "type": "", "demo": "databases\/update-integer-attribute.md", @@ -7567,7 +7671,7 @@ "x-appwrite": { "method": "createIpAttribute", "group": "attributes", - "weight": 358, + "weight": 354, "cookies": false, "type": "", "demo": "databases\/create-ip-attribute.md", @@ -7677,7 +7781,7 @@ "x-appwrite": { "method": "updateIpAttribute", "group": "attributes", - "weight": 359, + "weight": 355, "cookies": false, "type": "", "demo": "databases\/update-ip-attribute.md", @@ -7792,7 +7896,7 @@ "x-appwrite": { "method": "createLineAttribute", "group": "attributes", - "weight": 360, + "weight": 356, "cookies": false, "type": "", "demo": "databases\/create-line-attribute.md", @@ -7860,7 +7964,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -7905,7 +8009,7 @@ "x-appwrite": { "method": "updateLineAttribute", "group": "attributes", - "weight": 361, + "weight": 357, "cookies": false, "type": "", "demo": "databases\/update-line-attribute.md", @@ -7977,7 +8081,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -8009,7 +8113,7 @@ "tags": [ "databases" ], - "description": "Create a geometric 2d point attribute.", + "description": "Create a geometric point attribute.", "responses": { "202": { "description": "AttributePoint", @@ -8026,7 +8130,7 @@ "x-appwrite": { "method": "createPointAttribute", "group": "attributes", - "weight": 362, + "weight": 358, "cookies": false, "type": "", "demo": "databases\/create-point-attribute.md", @@ -8094,7 +8198,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -8139,7 +8243,7 @@ "x-appwrite": { "method": "updatePointAttribute", "group": "attributes", - "weight": 363, + "weight": 359, "cookies": false, "type": "", "demo": "databases\/update-point-attribute.md", @@ -8211,7 +8315,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -8260,7 +8364,7 @@ "x-appwrite": { "method": "createPolygonAttribute", "group": "attributes", - "weight": 364, + "weight": 360, "cookies": false, "type": "", "demo": "databases\/create-polygon-attribute.md", @@ -8328,7 +8432,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -8373,7 +8477,7 @@ "x-appwrite": { "method": "updatePolygonAttribute", "group": "attributes", - "weight": 365, + "weight": 361, "cookies": false, "type": "", "demo": "databases\/update-polygon-attribute.md", @@ -8445,7 +8549,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -8494,7 +8598,7 @@ "x-appwrite": { "method": "createRelationshipAttribute", "group": "attributes", - "weight": 366, + "weight": 362, "cookies": false, "type": "", "demo": "databases\/create-relationship-attribute.md", @@ -8629,7 +8733,7 @@ "x-appwrite": { "method": "createStringAttribute", "group": "attributes", - "weight": 368, + "weight": 364, "cookies": false, "type": "", "demo": "databases\/create-string-attribute.md", @@ -8750,7 +8854,7 @@ "x-appwrite": { "method": "updateStringAttribute", "group": "attributes", - "weight": 369, + "weight": 365, "cookies": false, "type": "", "demo": "databases\/update-string-attribute.md", @@ -8870,7 +8974,7 @@ "x-appwrite": { "method": "createUrlAttribute", "group": "attributes", - "weight": 370, + "weight": 366, "cookies": false, "type": "", "demo": "databases\/create-url-attribute.md", @@ -8980,7 +9084,7 @@ "x-appwrite": { "method": "updateUrlAttribute", "group": "attributes", - "weight": 371, + "weight": 367, "cookies": false, "type": "", "demo": "databases\/update-url-attribute.md", @@ -9126,7 +9230,7 @@ "x-appwrite": { "method": "getAttribute", "group": "attributes", - "weight": 343, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-attribute.md", @@ -9201,7 +9305,7 @@ "x-appwrite": { "method": "deleteAttribute", "group": "attributes", - "weight": 344, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-attribute.md", @@ -9285,7 +9389,7 @@ "x-appwrite": { "method": "updateRelationshipAttribute", "group": "attributes", - "weight": 367, + "weight": 363, "cookies": false, "type": "", "demo": "databases\/update-relationship-attribute.md", @@ -9397,7 +9501,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -9486,7 +9590,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -9664,7 +9768,7 @@ "x-appwrite": { "method": "upsertDocuments", "group": "documents", - "weight": 336, + "weight": 332, "cookies": false, "type": "", "demo": "databases\/upsert-documents.md", @@ -9792,7 +9896,7 @@ "x-appwrite": { "method": "updateDocuments", "group": "documents", - "weight": 334, + "weight": 330, "cookies": false, "type": "", "demo": "databases\/update-documents.md", @@ -9890,7 +9994,7 @@ "x-appwrite": { "method": "deleteDocuments", "group": "documents", - "weight": 338, + "weight": 334, "cookies": false, "type": "", "demo": "databases\/delete-documents.md", @@ -9985,7 +10089,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -10084,7 +10188,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -10232,7 +10336,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -10335,7 +10439,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -10423,7 +10527,7 @@ "x-appwrite": { "method": "listDocumentLogs", "group": "logs", - "weight": 340, + "weight": 336, "cookies": false, "type": "", "demo": "databases\/list-document-logs.md", @@ -10520,7 +10624,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -10639,7 +10743,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -10758,7 +10862,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 375, + "weight": 371, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -10844,7 +10948,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 372, + "weight": 368, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -10977,7 +11081,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 373, + "weight": 369, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -11052,7 +11156,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 374, + "weight": 370, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -11136,7 +11240,7 @@ "x-appwrite": { "method": "listCollectionLogs", "group": "collections", - "weight": 329, + "weight": 325, "cookies": false, "type": "", "demo": "databases\/list-collection-logs.md", @@ -11223,7 +11327,7 @@ "x-appwrite": { "method": "getCollectionUsage", "group": null, - "weight": 330, + "weight": 326, "cookies": false, "type": "", "demo": "databases\/get-collection-usage.md", @@ -11319,7 +11423,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 321, + "weight": 317, "cookies": false, "type": "", "demo": "databases\/list-logs.md", @@ -11425,7 +11529,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 322, + "weight": 318, "cookies": false, "type": "", "demo": "databases\/get-usage.md", @@ -11540,7 +11644,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 444, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -11613,7 +11717,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 441, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -11846,7 +11950,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 446, + "weight": 442, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -11895,7 +11999,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 447, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -11945,7 +12049,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 470, + "weight": 466, "cookies": false, "type": "", "demo": "functions\/list-templates.md", @@ -12045,7 +12149,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 469, + "weight": 465, "cookies": false, "type": "", "demo": "functions\/get-template.md", @@ -12105,7 +12209,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 463, + "weight": 459, "cookies": false, "type": "", "demo": "functions\/list-usage.md", @@ -12177,7 +12281,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 442, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -12236,7 +12340,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 443, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -12466,7 +12570,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 445, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -12527,7 +12631,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 450, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -12607,7 +12711,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 451, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -12690,7 +12794,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 448, + "weight": 444, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -12786,7 +12890,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 456, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -12854,7 +12958,7 @@ "tags": [ "functions" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -12871,11 +12975,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 453, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -12974,7 +13078,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 454, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -13071,7 +13175,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 449, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -13133,7 +13237,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 452, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -13197,7 +13301,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 455, + "weight": 451, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -13287,7 +13391,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 457, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -13358,7 +13462,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -13433,7 +13537,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -13549,7 +13653,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -13614,7 +13718,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 461, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -13685,7 +13789,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 462, + "weight": 458, "cookies": false, "type": "", "demo": "functions\/get-usage.md", @@ -13767,7 +13871,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 466, + "weight": 462, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -13826,7 +13930,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 464, + "weight": 460, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -13917,7 +14021,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 465, + "weight": 461, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -13986,7 +14090,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 467, + "weight": 463, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -14077,7 +14181,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 468, + "weight": 464, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -14148,7 +14252,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -14200,7 +14304,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -15963,7 +16067,7 @@ "x-appwrite": { "method": "listMessages", "group": "messages", - "weight": 308, + "weight": 304, "cookies": false, "type": "", "demo": "messaging\/list-messages.md", @@ -16039,7 +16143,7 @@ "x-appwrite": { "method": "createEmail", "group": "messages", - "weight": 305, + "weight": 301, "cookies": false, "type": "", "demo": "messaging\/create-email.md", @@ -16183,7 +16287,7 @@ "x-appwrite": { "method": "updateEmail", "group": "messages", - "weight": 312, + "weight": 308, "cookies": false, "type": "", "demo": "messaging\/update-email.md", @@ -16329,7 +16433,7 @@ "x-appwrite": { "method": "createPush", "group": "messages", - "weight": 307, + "weight": 303, "cookies": false, "type": "", "demo": "messaging\/create-push.md", @@ -16503,7 +16607,7 @@ "x-appwrite": { "method": "updatePush", "group": "messages", - "weight": 314, + "weight": 310, "cookies": false, "type": "", "demo": "messaging\/update-push.md", @@ -16681,7 +16785,7 @@ "x-appwrite": { "method": "createSms", "group": "messages", - "weight": 306, + "weight": 302, "cookies": false, "type": "", "demo": "messaging\/create-sms.md", @@ -16858,7 +16962,7 @@ "x-appwrite": { "method": "updateSms", "group": "messages", - "weight": 313, + "weight": 309, "cookies": false, "type": "", "demo": "messaging\/update-sms.md", @@ -17036,7 +17140,7 @@ "x-appwrite": { "method": "getMessage", "group": "messages", - "weight": 311, + "weight": 307, "cookies": false, "type": "", "demo": "messaging\/get-message.md", @@ -17089,7 +17193,7 @@ "x-appwrite": { "method": "delete", "group": "messages", - "weight": 315, + "weight": 311, "cookies": false, "type": "", "demo": "messaging\/delete.md", @@ -17151,7 +17255,7 @@ "x-appwrite": { "method": "listMessageLogs", "group": "logs", - "weight": 309, + "weight": 305, "cookies": false, "type": "", "demo": "messaging\/list-message-logs.md", @@ -17226,7 +17330,7 @@ "x-appwrite": { "method": "listTargets", "group": "messages", - "weight": 310, + "weight": 306, "cookies": false, "type": "", "demo": "messaging\/list-targets.md", @@ -17301,7 +17405,7 @@ "x-appwrite": { "method": "listProviders", "group": "providers", - "weight": 280, + "weight": 276, "cookies": false, "type": "", "demo": "messaging\/list-providers.md", @@ -17377,7 +17481,7 @@ "x-appwrite": { "method": "createApnsProvider", "group": "providers", - "weight": 279, + "weight": 275, "cookies": false, "type": "", "demo": "messaging\/create-apns-provider.md", @@ -17552,7 +17656,7 @@ "x-appwrite": { "method": "updateApnsProvider", "group": "providers", - "weight": 292, + "weight": 288, "cookies": false, "type": "", "demo": "messaging\/update-apns-provider.md", @@ -17728,7 +17832,7 @@ "x-appwrite": { "method": "createFcmProvider", "group": "providers", - "weight": 278, + "weight": 274, "cookies": false, "type": "", "demo": "messaging\/create-fcm-provider.md", @@ -17875,7 +17979,7 @@ "x-appwrite": { "method": "updateFcmProvider", "group": "providers", - "weight": 291, + "weight": 287, "cookies": false, "type": "", "demo": "messaging\/update-fcm-provider.md", @@ -18023,7 +18127,7 @@ "x-appwrite": { "method": "createMailgunProvider", "group": "providers", - "weight": 270, + "weight": 266, "cookies": false, "type": "", "demo": "messaging\/create-mailgun-provider.md", @@ -18138,7 +18242,7 @@ "x-appwrite": { "method": "updateMailgunProvider", "group": "providers", - "weight": 283, + "weight": 279, "cookies": false, "type": "", "demo": "messaging\/update-mailgun-provider.md", @@ -18256,7 +18360,7 @@ "x-appwrite": { "method": "createMsg91Provider", "group": "providers", - "weight": 273, + "weight": 269, "cookies": false, "type": "", "demo": "messaging\/create-msg-91-provider.md", @@ -18351,7 +18455,7 @@ "x-appwrite": { "method": "updateMsg91Provider", "group": "providers", - "weight": 286, + "weight": 282, "cookies": false, "type": "", "demo": "messaging\/update-msg-91-provider.md", @@ -18449,7 +18553,7 @@ "x-appwrite": { "method": "createSendgridProvider", "group": "providers", - "weight": 271, + "weight": 267, "cookies": false, "type": "", "demo": "messaging\/create-sendgrid-provider.md", @@ -18554,7 +18658,7 @@ "x-appwrite": { "method": "updateSendgridProvider", "group": "providers", - "weight": 284, + "weight": 280, "cookies": false, "type": "", "demo": "messaging\/update-sendgrid-provider.md", @@ -18662,7 +18766,7 @@ "x-appwrite": { "method": "createSmtpProvider", "group": "providers", - "weight": 272, + "weight": 268, "cookies": false, "type": "", "demo": "messaging\/create-smtp-provider.md", @@ -18889,7 +18993,7 @@ "x-appwrite": { "method": "updateSmtpProvider", "group": "providers", - "weight": 285, + "weight": 281, "cookies": false, "type": "", "demo": "messaging\/update-smtp-provider.md", @@ -19114,7 +19218,7 @@ "x-appwrite": { "method": "createTelesignProvider", "group": "providers", - "weight": 274, + "weight": 270, "cookies": false, "type": "", "demo": "messaging\/create-telesign-provider.md", @@ -19209,7 +19313,7 @@ "x-appwrite": { "method": "updateTelesignProvider", "group": "providers", - "weight": 287, + "weight": 283, "cookies": false, "type": "", "demo": "messaging\/update-telesign-provider.md", @@ -19307,7 +19411,7 @@ "x-appwrite": { "method": "createTextmagicProvider", "group": "providers", - "weight": 275, + "weight": 271, "cookies": false, "type": "", "demo": "messaging\/create-textmagic-provider.md", @@ -19402,7 +19506,7 @@ "x-appwrite": { "method": "updateTextmagicProvider", "group": "providers", - "weight": 288, + "weight": 284, "cookies": false, "type": "", "demo": "messaging\/update-textmagic-provider.md", @@ -19500,7 +19604,7 @@ "x-appwrite": { "method": "createTwilioProvider", "group": "providers", - "weight": 276, + "weight": 272, "cookies": false, "type": "", "demo": "messaging\/create-twilio-provider.md", @@ -19595,7 +19699,7 @@ "x-appwrite": { "method": "updateTwilioProvider", "group": "providers", - "weight": 289, + "weight": 285, "cookies": false, "type": "", "demo": "messaging\/update-twilio-provider.md", @@ -19693,7 +19797,7 @@ "x-appwrite": { "method": "createVonageProvider", "group": "providers", - "weight": 277, + "weight": 273, "cookies": false, "type": "", "demo": "messaging\/create-vonage-provider.md", @@ -19788,7 +19892,7 @@ "x-appwrite": { "method": "updateVonageProvider", "group": "providers", - "weight": 290, + "weight": 286, "cookies": false, "type": "", "demo": "messaging\/update-vonage-provider.md", @@ -19886,7 +19990,7 @@ "x-appwrite": { "method": "getProvider", "group": "providers", - "weight": 282, + "weight": 278, "cookies": false, "type": "", "demo": "messaging\/get-provider.md", @@ -19939,7 +20043,7 @@ "x-appwrite": { "method": "deleteProvider", "group": "providers", - "weight": 293, + "weight": 289, "cookies": false, "type": "", "demo": "messaging\/delete-provider.md", @@ -20001,7 +20105,7 @@ "x-appwrite": { "method": "listProviderLogs", "group": "providers", - "weight": 281, + "weight": 277, "cookies": false, "type": "", "demo": "messaging\/list-provider-logs.md", @@ -20076,7 +20180,7 @@ "x-appwrite": { "method": "listSubscriberLogs", "group": "subscribers", - "weight": 302, + "weight": 298, "cookies": false, "type": "", "demo": "messaging\/list-subscriber-logs.md", @@ -20151,7 +20255,7 @@ "x-appwrite": { "method": "listTopics", "group": "topics", - "weight": 295, + "weight": 291, "cookies": false, "type": "", "demo": "messaging\/list-topics.md", @@ -20225,7 +20329,7 @@ "x-appwrite": { "method": "createTopic", "group": "topics", - "weight": 294, + "weight": 290, "cookies": false, "type": "", "demo": "messaging\/create-topic.md", @@ -20308,7 +20412,7 @@ "x-appwrite": { "method": "getTopic", "group": "topics", - "weight": 297, + "weight": 293, "cookies": false, "type": "", "demo": "messaging\/get-topic.md", @@ -20368,7 +20472,7 @@ "x-appwrite": { "method": "updateTopic", "group": "topics", - "weight": 298, + "weight": 294, "cookies": false, "type": "", "demo": "messaging\/update-topic.md", @@ -20445,7 +20549,7 @@ "x-appwrite": { "method": "deleteTopic", "group": "topics", - "weight": 299, + "weight": 295, "cookies": false, "type": "", "demo": "messaging\/delete-topic.md", @@ -20507,7 +20611,7 @@ "x-appwrite": { "method": "listTopicLogs", "group": "topics", - "weight": 296, + "weight": 292, "cookies": false, "type": "", "demo": "messaging\/list-topic-logs.md", @@ -20582,7 +20686,7 @@ "x-appwrite": { "method": "listSubscribers", "group": "subscribers", - "weight": 301, + "weight": 297, "cookies": false, "type": "", "demo": "messaging\/list-subscribers.md", @@ -20666,7 +20770,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -20756,7 +20860,7 @@ "x-appwrite": { "method": "getSubscriber", "group": "subscribers", - "weight": 303, + "weight": 299, "cookies": false, "type": "", "demo": "messaging\/get-subscriber.md", @@ -20819,7 +20923,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -20894,7 +20998,7 @@ "x-appwrite": { "method": "list", "group": null, - "weight": 262, + "weight": 258, "cookies": false, "type": "", "demo": "migrations\/list.md", @@ -20968,7 +21072,7 @@ "x-appwrite": { "method": "createAppwriteMigration", "group": null, - "weight": 257, + "weight": 253, "cookies": false, "type": "", "demo": "migrations\/create-appwrite-migration.md", @@ -21056,7 +21160,7 @@ "x-appwrite": { "method": "getAppwriteReport", "group": null, - "weight": 264, + "weight": 260, "cookies": false, "type": "", "demo": "migrations\/get-appwrite-report.md", @@ -21149,7 +21253,7 @@ "x-appwrite": { "method": "createCsvMigration", "group": null, - "weight": 261, + "weight": 257, "cookies": false, "type": "", "demo": "migrations\/create-csv-migration.md", @@ -21233,7 +21337,7 @@ "x-appwrite": { "method": "createFirebaseMigration", "group": null, - "weight": 258, + "weight": 254, "cookies": false, "type": "", "demo": "migrations\/create-firebase-migration.md", @@ -21309,7 +21413,7 @@ "x-appwrite": { "method": "getFirebaseReport", "group": null, - "weight": 265, + "weight": 261, "cookies": false, "type": "", "demo": "migrations\/get-firebase-report.md", @@ -21381,7 +21485,7 @@ "x-appwrite": { "method": "createNHostMigration", "group": null, - "weight": 260, + "weight": 256, "cookies": false, "type": "", "demo": "migrations\/create-n-host-migration.md", @@ -21492,7 +21596,7 @@ "x-appwrite": { "method": "getNHostReport", "group": null, - "weight": 267, + "weight": 263, "cookies": false, "type": "", "demo": "migrations\/get-n-host-report.md", @@ -21625,7 +21729,7 @@ "x-appwrite": { "method": "createSupabaseMigration", "group": null, - "weight": 259, + "weight": 255, "cookies": false, "type": "", "demo": "migrations\/create-supabase-migration.md", @@ -21730,7 +21834,7 @@ "x-appwrite": { "method": "getSupabaseReport", "group": null, - "weight": 266, + "weight": 262, "cookies": false, "type": "", "demo": "migrations\/get-supabase-report.md", @@ -21854,7 +21958,7 @@ "x-appwrite": { "method": "get", "group": null, - "weight": 263, + "weight": 259, "cookies": false, "type": "", "demo": "migrations\/get.md", @@ -21912,7 +22016,7 @@ "x-appwrite": { "method": "retry", "group": null, - "weight": 268, + "weight": 264, "cookies": false, "type": "", "demo": "migrations\/retry.md", @@ -21963,7 +22067,7 @@ "x-appwrite": { "method": "delete", "group": null, - "weight": 269, + "weight": 265, "cookies": false, "type": "", "demo": "migrations\/delete.md", @@ -22433,7 +22537,7 @@ "x-appwrite": { "method": "list", "group": "projects", - "weight": 440, + "weight": 436, "cookies": false, "type": "", "demo": "projects\/list.md", @@ -24068,7 +24172,7 @@ "x-appwrite": { "method": "listDevKeys", "group": "devKeys", - "weight": 438, + "weight": 434, "cookies": false, "type": "", "demo": "projects\/list-dev-keys.md", @@ -24136,7 +24240,7 @@ "x-appwrite": { "method": "createDevKey", "group": "devKeys", - "weight": 435, + "weight": 431, "cookies": false, "type": "", "demo": "projects\/create-dev-key.md", @@ -24221,7 +24325,7 @@ "x-appwrite": { "method": "getDevKey", "group": "devKeys", - "weight": 437, + "weight": 433, "cookies": false, "type": "", "demo": "projects\/get-dev-key.md", @@ -24289,7 +24393,7 @@ "x-appwrite": { "method": "updateDevKey", "group": "devKeys", - "weight": 436, + "weight": 432, "cookies": false, "type": "", "demo": "projects\/update-dev-key.md", @@ -24375,7 +24479,7 @@ "x-appwrite": { "method": "deleteDevKey", "group": "devKeys", - "weight": 439, + "weight": 435, "cookies": false, "type": "", "demo": "projects\/delete-dev-key.md", @@ -25153,7 +25257,7 @@ "properties": { "type": { "type": "string", - "description": "Platform type.", + "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.", "x-example": "web", "enum": [ "web", @@ -28209,11 +28313,11 @@ "x-appwrite": { "method": "listRules", "group": null, - "weight": 240, + "weight": 502, "cookies": false, "type": "", "demo": "proxy\/list-rules.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/list-rules.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterGet a list of all the proxy rules. You can use the query params to filter your results.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28283,7 +28387,7 @@ "x-appwrite": { "method": "createAPIRule", "group": null, - "weight": 501, + "weight": 497, "cookies": false, "type": "", "demo": "proxy\/create-api-rule.md", @@ -28350,7 +28454,7 @@ "x-appwrite": { "method": "createFunctionRule", "group": null, - "weight": 503, + "weight": 499, "cookies": false, "type": "", "demo": "proxy\/create-function-rule.md", @@ -28428,7 +28532,7 @@ "x-appwrite": { "method": "createRedirectRule", "group": null, - "weight": 504, + "weight": 500, "cookies": false, "type": "", "demo": "proxy\/create-redirect-rule.md", @@ -28541,7 +28645,7 @@ "x-appwrite": { "method": "createSiteRule", "group": null, - "weight": 502, + "weight": 498, "cookies": false, "type": "", "demo": "proxy\/create-site-rule.md", @@ -28619,11 +28723,11 @@ "x-appwrite": { "method": "getRule", "group": null, - "weight": 241, + "weight": 501, "cookies": false, "type": "", "demo": "proxy\/get-rule.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/get-rule.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterGet a proxy rule by its unique ID.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28670,11 +28774,11 @@ "x-appwrite": { "method": "deleteRule", "group": null, - "weight": 242, + "weight": 503, "cookies": false, "type": "", "demo": "proxy\/delete-rule.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/delete-rule.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterDelete a proxy rule by its unique ID.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28730,11 +28834,11 @@ "x-appwrite": { "method": "updateRuleVerification", "group": null, - "weight": 243, + "weight": 504, "cookies": false, "type": "", "demo": "proxy\/update-rule-verification.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/update-rule-verification.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterRetry getting verification process of a proxy rule. This endpoint triggers domain verification by checking DNS records (CNAME) against the configured target domain. If verification is successful, a TLS certificate will be automatically provisioned for the domain.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28790,7 +28894,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 473, + "weight": 469, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -28860,7 +28964,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 471, + "weight": 467, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -29109,7 +29213,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 476, + "weight": 472, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -29158,7 +29262,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 499, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -29208,7 +29312,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 495, + "weight": 491, "cookies": false, "type": "", "demo": "sites\/list-templates.md", @@ -29308,7 +29412,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 496, + "weight": 492, "cookies": false, "type": "", "demo": "sites\/get-template.md", @@ -29368,7 +29472,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 497, + "weight": 493, "cookies": false, "type": "", "demo": "sites\/list-usage.md", @@ -29440,7 +29544,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 472, + "weight": 468, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -29499,7 +29603,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 474, + "weight": 470, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -29744,7 +29848,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 475, + "weight": 471, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -29805,7 +29909,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 482, + "weight": 478, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -29885,7 +29989,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 481, + "weight": 477, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -29968,7 +30072,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 477, + "weight": 473, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -30069,7 +30173,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 485, + "weight": 481, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -30132,7 +30236,7 @@ "tags": [ "sites" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -30149,11 +30253,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 478, + "weight": 474, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -30252,7 +30356,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 479, + "weight": 475, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -30350,7 +30454,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 480, + "weight": 476, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -30412,7 +30516,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 483, + "weight": 479, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -30476,7 +30580,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 484, + "weight": 480, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -30566,7 +30670,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 486, + "weight": 482, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -30637,7 +30741,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 488, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -30708,7 +30812,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 487, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -30770,7 +30874,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 489, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -30841,7 +30945,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 498, + "weight": 494, "cookies": false, "type": "", "demo": "sites\/get-usage.md", @@ -30923,7 +31027,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 492, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -30982,7 +31086,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 490, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -31073,7 +31177,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 491, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -31142,7 +31246,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 493, + "weight": 489, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -31233,7 +31337,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 494, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -32705,7 +32809,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 380, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -32778,7 +32882,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 376, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -32857,7 +32961,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 382, + "weight": 378, "cookies": false, "type": "", "demo": "tablesdb\/list-usage.md", @@ -32954,7 +33058,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 377, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -33013,7 +33117,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 378, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -33089,7 +33193,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 379, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -33150,7 +33254,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 387, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -33219,7 +33323,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Table", @@ -33236,7 +33340,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 383, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -33343,7 +33447,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 384, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -33415,7 +33519,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 385, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -33517,7 +33621,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 386, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -33591,7 +33695,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 392, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -33678,7 +33782,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 393, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -33717,7 +33821,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -33787,7 +33891,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 394, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -33826,7 +33930,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -33901,7 +34005,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 395, + "weight": 391, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -34010,7 +34114,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 396, + "weight": 392, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -34124,7 +34228,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 397, + "weight": 393, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -34233,7 +34337,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 398, + "weight": 394, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -34347,7 +34451,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 399, + "weight": 395, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -34465,7 +34569,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 400, + "weight": 396, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -34588,7 +34692,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 401, + "weight": 397, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -34707,7 +34811,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 402, + "weight": 398, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -34831,7 +34935,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 403, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -34950,7 +35054,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 404, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -35074,7 +35178,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 405, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -35183,7 +35287,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 406, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -35280,7 +35384,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric line attribute.", + "description": "Create a geometric line column.", "responses": { "202": { "description": "ColumnLine", @@ -35297,7 +35401,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 407, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -35336,7 +35440,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35364,7 +35468,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -35392,7 +35496,7 @@ "tags": [ "tablesDB" ], - "description": "Update a line column. Changing the `default` value will not update already existing documents.", + "description": "Update a line column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnLine", @@ -35409,7 +35513,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 408, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -35448,7 +35552,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35480,7 +35584,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -35512,7 +35616,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric point attribute.", + "description": "Create a geometric point column.", "responses": { "202": { "description": "ColumnPoint", @@ -35529,7 +35633,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 409, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -35568,7 +35672,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35596,7 +35700,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -35624,7 +35728,7 @@ "tags": [ "tablesDB" ], - "description": "Update a point column. Changing the `default` value will not update already existing documents.", + "description": "Update a point column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPoint", @@ -35641,7 +35745,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 410, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -35680,7 +35784,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35712,7 +35816,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -35744,7 +35848,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric polygon attribute.", + "description": "Create a geometric polygon column.", "responses": { "202": { "description": "ColumnPolygon", @@ -35761,7 +35865,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 411, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -35800,7 +35904,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35828,7 +35932,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -35856,7 +35960,7 @@ "tags": [ "tablesDB" ], - "description": "Update a polygon column. Changing the `default` value will not update already existing documents.", + "description": "Update a polygon column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPolygon", @@ -35873,7 +35977,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 412, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -35912,7 +36016,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -35944,7 +36048,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -35993,7 +36097,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 413, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -36127,7 +36231,7 @@ "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 415, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -36166,7 +36270,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -36247,7 +36351,7 @@ "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 416, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -36286,7 +36390,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -36366,7 +36470,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 417, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -36475,7 +36579,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 418, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -36620,7 +36724,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 390, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -36694,7 +36798,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 391, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -36777,7 +36881,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 414, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -36888,7 +36992,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 422, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -36927,7 +37031,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -36973,7 +37077,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 419, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -37012,7 +37116,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -37105,7 +37209,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 420, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -37144,7 +37248,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -37179,7 +37283,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 421, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -37218,7 +37322,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -37262,7 +37366,7 @@ "x-appwrite": { "method": "listTableLogs", "group": "tables", - "weight": 388, + "weight": 384, "cookies": false, "type": "", "demo": "tablesdb\/list-table-logs.md", @@ -37348,7 +37452,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -37390,7 +37494,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "schema": { "type": "string", @@ -37419,7 +37523,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -37436,7 +37540,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -37481,7 +37585,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" }, { @@ -37507,7 +37611,7 @@ "model": "#\/components\/schemas\/rowList" } ], - "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-rows.md" } ], @@ -37535,7 +37639,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "schema": { "type": "string", @@ -37570,7 +37674,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "x-example": null, "items": { "type": "object" @@ -37588,7 +37692,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "responses": { "201": { "description": "Rows List", @@ -37605,7 +37709,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 428, + "weight": 424, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -37646,7 +37750,7 @@ "model": "#\/components\/schemas\/rowList" } ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "demo": "tablesdb\/upsert-rows.md" } ], @@ -37728,7 +37832,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 426, + "weight": 422, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -37825,7 +37929,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 430, + "weight": 426, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -37865,7 +37969,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -37919,7 +38023,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -37961,7 +38065,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -38000,7 +38104,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -38017,7 +38121,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -38061,7 +38165,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -38156,7 +38260,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -38258,7 +38362,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -38300,7 +38404,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -38345,7 +38449,7 @@ "x-appwrite": { "method": "listRowLogs", "group": "logs", - "weight": 432, + "weight": 428, "cookies": false, "type": "", "demo": "tablesdb\/list-row-logs.md", @@ -38441,7 +38545,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -38559,7 +38663,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -38677,7 +38781,7 @@ "x-appwrite": { "method": "getTableUsage", "group": null, - "weight": 389, + "weight": 385, "cookies": false, "type": "", "demo": "tablesdb\/get-table-usage.md", @@ -38772,7 +38876,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 381, + "weight": 377, "cookies": false, "type": "", "demo": "tablesdb\/get-usage.md", @@ -46223,7 +46327,11 @@ "type": { "type": "string", "description": "Database type.", - "x-example": "legacy" + "x-example": "legacy", + "enum": [ + "legacy", + "tablesdb" + ] } }, "required": [ @@ -46461,7 +46569,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46549,7 +46665,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46639,7 +46763,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46729,7 +46861,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46802,7 +46942,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46882,7 +47030,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46972,7 +47128,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47052,7 +47216,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47132,7 +47304,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47212,7 +47392,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47320,7 +47508,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47399,7 +47595,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47490,7 +47694,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47806,7 +48018,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -47894,7 +48114,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -47984,7 +48212,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48074,7 +48310,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48147,7 +48391,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48227,7 +48479,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48317,7 +48577,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48397,7 +48665,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48477,7 +48753,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48557,7 +48841,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48665,7 +48957,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48744,7 +49044,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48835,7 +49143,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48965,7 +49281,14 @@ "status": { "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ] }, "error": { "type": "string", @@ -52191,7 +52514,14 @@ "status": { "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", and \"failed\".", - "x-example": "ready" + "x-example": "ready", + "enum": [ + "waiting", + "processing", + "building", + "ready", + "failed" + ] }, "buildLogs": { "type": "string", @@ -52219,11 +52549,6 @@ "description": "The url of the vcs provider repository", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function" }, - "providerBranch": { - "type": "string", - "description": "The branch of the vcs repository", - "x-example": "0.7.x" - }, "providerCommitHash": { "type": "string", "description": "The commit hash of the vcs commit", @@ -52249,6 +52574,11 @@ "description": "The url of the vcs commit", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb" }, + "providerBranch": { + "type": "string", + "description": "The branch of the vcs repository", + "x-example": "0.7.x" + }, "providerBranchUrl": { "type": "string", "description": "The branch of the vcs repository", @@ -52276,12 +52606,12 @@ "providerRepositoryName", "providerRepositoryOwner", "providerRepositoryUrl", - "providerBranch", "providerCommitHash", "providerCommitAuthorUrl", "providerCommitAuthor", "providerCommitMessage", "providerCommitUrl", + "providerBranch", "providerBranchUrl" ], "example": { @@ -52305,12 +52635,12 @@ "providerRepositoryName": "database", "providerRepositoryOwner": "utopia", "providerRepositoryUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function", - "providerBranch": "0.7.x", "providerCommitHash": "7c3f25d", "providerCommitAuthorUrl": "https:\/\/github.com\/vermakhushboo", "providerCommitAuthor": "Khushboo Verma", "providerCommitMessage": "Update index.js", "providerCommitUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb", + "providerBranch": "0.7.x", "providerBranchUrl": "https:\/\/github.com\/vermakhushboo\/appwrite\/tree\/0.7.x" } }, @@ -52356,12 +52686,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -52375,7 +52716,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "$ref": "#\/components\/schemas\/headers" }, @@ -53311,8 +53652,25 @@ }, "type": { "type": "string", - "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, ios, android, and unity.", - "x-example": "web" + "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.", + "x-example": "web", + "enum": [ + "web", + "flutter-web", + "flutter-ios", + "flutter-android", + "flutter-linux", + "flutter-macos", + "flutter-windows", + "apple-ios", + "apple-macos", + "apple-watchos", + "apple-tvos", + "android", + "unity", + "react-native-ios", + "react-native-android" + ] }, "key": { "type": "string", @@ -53327,7 +53685,7 @@ "hostname": { "type": "string", "description": "Web app hostname. Empty string for other platforms.", - "x-example": true + "x-example": "app.example.com" }, "httpUser": { "type": "string", @@ -53360,7 +53718,7 @@ "type": "web", "key": "com.company.appname", "store": "", - "hostname": true, + "hostname": "app.example.com", "httpUser": "username", "httpPass": "password" } @@ -53613,8 +53971,13 @@ }, "status": { "type": "string", - "description": "Antivirus status. Possible values can are: `disabled`, `offline`, `online`", - "x-example": "online" + "description": "Antivirus status. Possible values are: `disabled`, `offline`, `online`", + "x-example": "online", + "enum": [ + "disabled", + "offline", + "online" + ] } }, "required": [ @@ -53661,8 +54024,13 @@ }, "status": { "type": "string", - "description": "Service status. Possible values can are: `pass`, `fail`", - "x-example": "pass" + "description": "Service status. Possible values are: `pass`, `fail`", + "x-example": "pass", + "enum": [ + "pass", + "fail" + ], + "x-enum-name": "HealthCheckStatus" } }, "required": [ @@ -55827,7 +56195,11 @@ "deploymentResourceType": { "type": "string", "description": "Type of deployment. Possible values are \"function\", \"site\". Used if rule's type is \"deployment\".", - "x-example": "function" + "x-example": "function", + "enum": [ + "function", + "site" + ] }, "deploymentResourceId": { "type": "string", @@ -55837,12 +56209,18 @@ "deploymentVcsProviderBranch": { "type": "string", "description": "Name of Git branch that updates rule. Used if type is \"deployment\"", - "x-example": "function" + "x-example": "main" }, "status": { "type": "string", "description": "Domain verification status. Possible values are \"created\", \"verifying\", \"verified\" and \"unverified\"", - "x-example": "verified" + "x-example": "verified", + "enum": [ + "created", + "verifying", + "verified", + "unverified" + ] }, "logs": { "type": "string", @@ -55884,7 +56262,7 @@ "deploymentId": "n3u9feiwmf", "deploymentResourceType": "function", "deploymentResourceId": "n3u9feiwmf", - "deploymentVcsProviderBranch": "function", + "deploymentVcsProviderBranch": "main", "status": "verified", "logs": "HTTP challegne failed.", "renewAt": "datetime" @@ -56391,7 +56769,14 @@ "status": { "type": "string", "description": "Status of delivery.", - "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed." + "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.", + "enum": [ + "draft", + "processing", + "scheduled", + "sent", + "failed" + ] } }, "required": [ diff --git a/app/config/specs/open-api3-latest-server.json b/app/config/specs/open-api3-latest-server.json index ee0b6f59ac..16e861ba9f 100644 --- a/app/config/specs/open-api3-latest-server.json +++ b/app/config/specs/open-api3-latest-server.json @@ -3161,10 +3161,10 @@ } } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "tags": [ "account" ], @@ -3183,12 +3183,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3199,6 +3199,58 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [], "Session": [] @@ -3233,7 +3285,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "tags": [ "account" ], @@ -3252,12 +3304,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3268,6 +3320,62 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [], "Session": [] @@ -3307,7 +3415,7 @@ } } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4545,7 +4653,7 @@ "x-appwrite": { "method": "list", "group": "databases", - "weight": 320, + "weight": 316, "cookies": false, "type": "", "demo": "databases\/list.md", @@ -4651,7 +4759,7 @@ "x-appwrite": { "method": "create", "group": "databases", - "weight": 316, + "weight": 312, "cookies": false, "type": "", "demo": "databases\/create.md", @@ -4767,7 +4875,7 @@ "x-appwrite": { "method": "get", "group": "databases", - "weight": 317, + "weight": 313, "cookies": false, "type": "", "demo": "databases\/get.md", @@ -4860,7 +4968,7 @@ "x-appwrite": { "method": "update", "group": "databases", - "weight": 318, + "weight": 314, "cookies": false, "type": "", "demo": "databases\/update.md", @@ -4973,7 +5081,7 @@ "x-appwrite": { "method": "delete", "group": "databases", - "weight": 319, + "weight": 315, "cookies": false, "type": "", "demo": "databases\/delete.md", @@ -5067,7 +5175,7 @@ "x-appwrite": { "method": "listCollections", "group": "collections", - "weight": 328, + "weight": 324, "cookies": false, "type": "", "demo": "databases\/list-collections.md", @@ -5155,7 +5263,7 @@ "x-appwrite": { "method": "createCollection", "group": "collections", - "weight": 324, + "weight": 320, "cookies": false, "type": "", "demo": "databases\/create-collection.md", @@ -5264,7 +5372,7 @@ "x-appwrite": { "method": "getCollection", "group": "collections", - "weight": 325, + "weight": 321, "cookies": false, "type": "", "demo": "databases\/get-collection.md", @@ -5338,7 +5446,7 @@ "x-appwrite": { "method": "updateCollection", "group": "collections", - "weight": 326, + "weight": 322, "cookies": false, "type": "", "demo": "databases\/update-collection.md", @@ -5442,7 +5550,7 @@ "x-appwrite": { "method": "deleteCollection", "group": "collections", - "weight": 327, + "weight": 323, "cookies": false, "type": "", "demo": "databases\/delete-collection.md", @@ -5518,7 +5626,7 @@ "x-appwrite": { "method": "listAttributes", "group": "attributes", - "weight": 345, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-attributes.md", @@ -5607,7 +5715,7 @@ "x-appwrite": { "method": "createBooleanAttribute", "group": "attributes", - "weight": 346, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-boolean-attribute.md", @@ -5718,7 +5826,7 @@ "x-appwrite": { "method": "updateBooleanAttribute", "group": "attributes", - "weight": 347, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/update-boolean-attribute.md", @@ -5834,7 +5942,7 @@ "x-appwrite": { "method": "createDatetimeAttribute", "group": "attributes", - "weight": 348, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/create-datetime-attribute.md", @@ -5945,7 +6053,7 @@ "x-appwrite": { "method": "updateDatetimeAttribute", "group": "attributes", - "weight": 349, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/update-datetime-attribute.md", @@ -6061,7 +6169,7 @@ "x-appwrite": { "method": "createEmailAttribute", "group": "attributes", - "weight": 350, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/create-email-attribute.md", @@ -6172,7 +6280,7 @@ "x-appwrite": { "method": "updateEmailAttribute", "group": "attributes", - "weight": 351, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/update-email-attribute.md", @@ -6288,7 +6396,7 @@ "x-appwrite": { "method": "createEnumAttribute", "group": "attributes", - "weight": 352, + "weight": 348, "cookies": false, "type": "", "demo": "databases\/create-enum-attribute.md", @@ -6408,7 +6516,7 @@ "x-appwrite": { "method": "updateEnumAttribute", "group": "attributes", - "weight": 353, + "weight": 349, "cookies": false, "type": "", "demo": "databases\/update-enum-attribute.md", @@ -6533,7 +6641,7 @@ "x-appwrite": { "method": "createFloatAttribute", "group": "attributes", - "weight": 354, + "weight": 350, "cookies": false, "type": "", "demo": "databases\/create-float-attribute.md", @@ -6654,7 +6762,7 @@ "x-appwrite": { "method": "updateFloatAttribute", "group": "attributes", - "weight": 355, + "weight": 351, "cookies": false, "type": "", "demo": "databases\/update-float-attribute.md", @@ -6780,7 +6888,7 @@ "x-appwrite": { "method": "createIntegerAttribute", "group": "attributes", - "weight": 356, + "weight": 352, "cookies": false, "type": "", "demo": "databases\/create-integer-attribute.md", @@ -6901,7 +7009,7 @@ "x-appwrite": { "method": "updateIntegerAttribute", "group": "attributes", - "weight": 357, + "weight": 353, "cookies": false, "type": "", "demo": "databases\/update-integer-attribute.md", @@ -7027,7 +7135,7 @@ "x-appwrite": { "method": "createIpAttribute", "group": "attributes", - "weight": 358, + "weight": 354, "cookies": false, "type": "", "demo": "databases\/create-ip-attribute.md", @@ -7138,7 +7246,7 @@ "x-appwrite": { "method": "updateIpAttribute", "group": "attributes", - "weight": 359, + "weight": 355, "cookies": false, "type": "", "demo": "databases\/update-ip-attribute.md", @@ -7254,7 +7362,7 @@ "x-appwrite": { "method": "createLineAttribute", "group": "attributes", - "weight": 360, + "weight": 356, "cookies": false, "type": "", "demo": "databases\/create-line-attribute.md", @@ -7323,7 +7431,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -7368,7 +7476,7 @@ "x-appwrite": { "method": "updateLineAttribute", "group": "attributes", - "weight": 361, + "weight": 357, "cookies": false, "type": "", "demo": "databases\/update-line-attribute.md", @@ -7441,7 +7549,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -7473,7 +7581,7 @@ "tags": [ "databases" ], - "description": "Create a geometric 2d point attribute.", + "description": "Create a geometric point attribute.", "responses": { "202": { "description": "AttributePoint", @@ -7490,7 +7598,7 @@ "x-appwrite": { "method": "createPointAttribute", "group": "attributes", - "weight": 362, + "weight": 358, "cookies": false, "type": "", "demo": "databases\/create-point-attribute.md", @@ -7559,7 +7667,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -7604,7 +7712,7 @@ "x-appwrite": { "method": "updatePointAttribute", "group": "attributes", - "weight": 363, + "weight": 359, "cookies": false, "type": "", "demo": "databases\/update-point-attribute.md", @@ -7677,7 +7785,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -7726,7 +7834,7 @@ "x-appwrite": { "method": "createPolygonAttribute", "group": "attributes", - "weight": 364, + "weight": 360, "cookies": false, "type": "", "demo": "databases\/create-polygon-attribute.md", @@ -7795,7 +7903,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -7840,7 +7948,7 @@ "x-appwrite": { "method": "updatePolygonAttribute", "group": "attributes", - "weight": 365, + "weight": 361, "cookies": false, "type": "", "demo": "databases\/update-polygon-attribute.md", @@ -7913,7 +8021,7 @@ "default": { "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -7962,7 +8070,7 @@ "x-appwrite": { "method": "createRelationshipAttribute", "group": "attributes", - "weight": 366, + "weight": 362, "cookies": false, "type": "", "demo": "databases\/create-relationship-attribute.md", @@ -8098,7 +8206,7 @@ "x-appwrite": { "method": "createStringAttribute", "group": "attributes", - "weight": 368, + "weight": 364, "cookies": false, "type": "", "demo": "databases\/create-string-attribute.md", @@ -8220,7 +8328,7 @@ "x-appwrite": { "method": "updateStringAttribute", "group": "attributes", - "weight": 369, + "weight": 365, "cookies": false, "type": "", "demo": "databases\/update-string-attribute.md", @@ -8341,7 +8449,7 @@ "x-appwrite": { "method": "createUrlAttribute", "group": "attributes", - "weight": 370, + "weight": 366, "cookies": false, "type": "", "demo": "databases\/create-url-attribute.md", @@ -8452,7 +8560,7 @@ "x-appwrite": { "method": "updateUrlAttribute", "group": "attributes", - "weight": 371, + "weight": 367, "cookies": false, "type": "", "demo": "databases\/update-url-attribute.md", @@ -8599,7 +8707,7 @@ "x-appwrite": { "method": "getAttribute", "group": "attributes", - "weight": 343, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-attribute.md", @@ -8675,7 +8783,7 @@ "x-appwrite": { "method": "deleteAttribute", "group": "attributes", - "weight": 344, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-attribute.md", @@ -8760,7 +8868,7 @@ "x-appwrite": { "method": "updateRelationshipAttribute", "group": "attributes", - "weight": 367, + "weight": 363, "cookies": false, "type": "", "demo": "databases\/update-relationship-attribute.md", @@ -8873,7 +8981,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -8964,7 +9072,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -9146,7 +9254,7 @@ "x-appwrite": { "method": "upsertDocuments", "group": "documents", - "weight": 336, + "weight": 332, "cookies": false, "type": "", "demo": "databases\/upsert-documents.md", @@ -9276,7 +9384,7 @@ "x-appwrite": { "method": "updateDocuments", "group": "documents", - "weight": 334, + "weight": 330, "cookies": false, "type": "", "demo": "databases\/update-documents.md", @@ -9375,7 +9483,7 @@ "x-appwrite": { "method": "deleteDocuments", "group": "documents", - "weight": 338, + "weight": 334, "cookies": false, "type": "", "demo": "databases\/delete-documents.md", @@ -9471,7 +9579,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -9572,7 +9680,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -9723,7 +9831,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -9828,7 +9936,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -9918,7 +10026,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -10039,7 +10147,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -10160,7 +10268,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 375, + "weight": 371, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -10247,7 +10355,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 372, + "weight": 368, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -10381,7 +10489,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 373, + "weight": 369, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -10457,7 +10565,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 374, + "weight": 370, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -10542,7 +10650,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 444, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -10616,7 +10724,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 441, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -10850,7 +10958,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 446, + "weight": 442, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -10900,7 +11008,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 447, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -10951,7 +11059,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 442, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -11011,7 +11119,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 443, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -11242,7 +11350,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 445, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -11304,7 +11412,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 450, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -11385,7 +11493,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 451, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -11469,7 +11577,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 448, + "weight": 444, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -11566,7 +11674,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 456, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -11635,7 +11743,7 @@ "tags": [ "functions" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -11652,11 +11760,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 453, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -11756,7 +11864,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 454, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -11854,7 +11962,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 449, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -11917,7 +12025,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 452, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -11982,7 +12090,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 455, + "weight": 451, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -12073,7 +12181,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 457, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -12145,7 +12253,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -12222,7 +12330,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -12340,7 +12448,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -12407,7 +12515,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 461, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -12479,7 +12587,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 466, + "weight": 462, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -12539,7 +12647,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 464, + "weight": 460, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -12631,7 +12739,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 465, + "weight": 461, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -12701,7 +12809,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 467, + "weight": 463, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -12793,7 +12901,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 468, + "weight": 464, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -12865,7 +12973,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -12919,7 +13027,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -14722,7 +14830,7 @@ "x-appwrite": { "method": "listMessages", "group": "messages", - "weight": 308, + "weight": 304, "cookies": false, "type": "", "demo": "messaging\/list-messages.md", @@ -14799,7 +14907,7 @@ "x-appwrite": { "method": "createEmail", "group": "messages", - "weight": 305, + "weight": 301, "cookies": false, "type": "", "demo": "messaging\/create-email.md", @@ -14944,7 +15052,7 @@ "x-appwrite": { "method": "updateEmail", "group": "messages", - "weight": 312, + "weight": 308, "cookies": false, "type": "", "demo": "messaging\/update-email.md", @@ -15091,7 +15199,7 @@ "x-appwrite": { "method": "createPush", "group": "messages", - "weight": 307, + "weight": 303, "cookies": false, "type": "", "demo": "messaging\/create-push.md", @@ -15266,7 +15374,7 @@ "x-appwrite": { "method": "updatePush", "group": "messages", - "weight": 314, + "weight": 310, "cookies": false, "type": "", "demo": "messaging\/update-push.md", @@ -15445,7 +15553,7 @@ "x-appwrite": { "method": "createSms", "group": "messages", - "weight": 306, + "weight": 302, "cookies": false, "type": "", "demo": "messaging\/create-sms.md", @@ -15625,7 +15733,7 @@ "x-appwrite": { "method": "updateSms", "group": "messages", - "weight": 313, + "weight": 309, "cookies": false, "type": "", "demo": "messaging\/update-sms.md", @@ -15806,7 +15914,7 @@ "x-appwrite": { "method": "getMessage", "group": "messages", - "weight": 311, + "weight": 307, "cookies": false, "type": "", "demo": "messaging\/get-message.md", @@ -15860,7 +15968,7 @@ "x-appwrite": { "method": "delete", "group": "messages", - "weight": 315, + "weight": 311, "cookies": false, "type": "", "demo": "messaging\/delete.md", @@ -15923,7 +16031,7 @@ "x-appwrite": { "method": "listMessageLogs", "group": "logs", - "weight": 309, + "weight": 305, "cookies": false, "type": "", "demo": "messaging\/list-message-logs.md", @@ -15999,7 +16107,7 @@ "x-appwrite": { "method": "listTargets", "group": "messages", - "weight": 310, + "weight": 306, "cookies": false, "type": "", "demo": "messaging\/list-targets.md", @@ -16075,7 +16183,7 @@ "x-appwrite": { "method": "listProviders", "group": "providers", - "weight": 280, + "weight": 276, "cookies": false, "type": "", "demo": "messaging\/list-providers.md", @@ -16152,7 +16260,7 @@ "x-appwrite": { "method": "createApnsProvider", "group": "providers", - "weight": 279, + "weight": 275, "cookies": false, "type": "", "demo": "messaging\/create-apns-provider.md", @@ -16330,7 +16438,7 @@ "x-appwrite": { "method": "updateApnsProvider", "group": "providers", - "weight": 292, + "weight": 288, "cookies": false, "type": "", "demo": "messaging\/update-apns-provider.md", @@ -16509,7 +16617,7 @@ "x-appwrite": { "method": "createFcmProvider", "group": "providers", - "weight": 278, + "weight": 274, "cookies": false, "type": "", "demo": "messaging\/create-fcm-provider.md", @@ -16659,7 +16767,7 @@ "x-appwrite": { "method": "updateFcmProvider", "group": "providers", - "weight": 291, + "weight": 287, "cookies": false, "type": "", "demo": "messaging\/update-fcm-provider.md", @@ -16810,7 +16918,7 @@ "x-appwrite": { "method": "createMailgunProvider", "group": "providers", - "weight": 270, + "weight": 266, "cookies": false, "type": "", "demo": "messaging\/create-mailgun-provider.md", @@ -16926,7 +17034,7 @@ "x-appwrite": { "method": "updateMailgunProvider", "group": "providers", - "weight": 283, + "weight": 279, "cookies": false, "type": "", "demo": "messaging\/update-mailgun-provider.md", @@ -17045,7 +17153,7 @@ "x-appwrite": { "method": "createMsg91Provider", "group": "providers", - "weight": 273, + "weight": 269, "cookies": false, "type": "", "demo": "messaging\/create-msg-91-provider.md", @@ -17141,7 +17249,7 @@ "x-appwrite": { "method": "updateMsg91Provider", "group": "providers", - "weight": 286, + "weight": 282, "cookies": false, "type": "", "demo": "messaging\/update-msg-91-provider.md", @@ -17240,7 +17348,7 @@ "x-appwrite": { "method": "createSendgridProvider", "group": "providers", - "weight": 271, + "weight": 267, "cookies": false, "type": "", "demo": "messaging\/create-sendgrid-provider.md", @@ -17346,7 +17454,7 @@ "x-appwrite": { "method": "updateSendgridProvider", "group": "providers", - "weight": 284, + "weight": 280, "cookies": false, "type": "", "demo": "messaging\/update-sendgrid-provider.md", @@ -17455,7 +17563,7 @@ "x-appwrite": { "method": "createSmtpProvider", "group": "providers", - "weight": 272, + "weight": 268, "cookies": false, "type": "", "demo": "messaging\/create-smtp-provider.md", @@ -17685,7 +17793,7 @@ "x-appwrite": { "method": "updateSmtpProvider", "group": "providers", - "weight": 285, + "weight": 281, "cookies": false, "type": "", "demo": "messaging\/update-smtp-provider.md", @@ -17913,7 +18021,7 @@ "x-appwrite": { "method": "createTelesignProvider", "group": "providers", - "weight": 274, + "weight": 270, "cookies": false, "type": "", "demo": "messaging\/create-telesign-provider.md", @@ -18009,7 +18117,7 @@ "x-appwrite": { "method": "updateTelesignProvider", "group": "providers", - "weight": 287, + "weight": 283, "cookies": false, "type": "", "demo": "messaging\/update-telesign-provider.md", @@ -18108,7 +18216,7 @@ "x-appwrite": { "method": "createTextmagicProvider", "group": "providers", - "weight": 275, + "weight": 271, "cookies": false, "type": "", "demo": "messaging\/create-textmagic-provider.md", @@ -18204,7 +18312,7 @@ "x-appwrite": { "method": "updateTextmagicProvider", "group": "providers", - "weight": 288, + "weight": 284, "cookies": false, "type": "", "demo": "messaging\/update-textmagic-provider.md", @@ -18303,7 +18411,7 @@ "x-appwrite": { "method": "createTwilioProvider", "group": "providers", - "weight": 276, + "weight": 272, "cookies": false, "type": "", "demo": "messaging\/create-twilio-provider.md", @@ -18399,7 +18507,7 @@ "x-appwrite": { "method": "updateTwilioProvider", "group": "providers", - "weight": 289, + "weight": 285, "cookies": false, "type": "", "demo": "messaging\/update-twilio-provider.md", @@ -18498,7 +18606,7 @@ "x-appwrite": { "method": "createVonageProvider", "group": "providers", - "weight": 277, + "weight": 273, "cookies": false, "type": "", "demo": "messaging\/create-vonage-provider.md", @@ -18594,7 +18702,7 @@ "x-appwrite": { "method": "updateVonageProvider", "group": "providers", - "weight": 290, + "weight": 286, "cookies": false, "type": "", "demo": "messaging\/update-vonage-provider.md", @@ -18693,7 +18801,7 @@ "x-appwrite": { "method": "getProvider", "group": "providers", - "weight": 282, + "weight": 278, "cookies": false, "type": "", "demo": "messaging\/get-provider.md", @@ -18747,7 +18855,7 @@ "x-appwrite": { "method": "deleteProvider", "group": "providers", - "weight": 293, + "weight": 289, "cookies": false, "type": "", "demo": "messaging\/delete-provider.md", @@ -18810,7 +18918,7 @@ "x-appwrite": { "method": "listProviderLogs", "group": "providers", - "weight": 281, + "weight": 277, "cookies": false, "type": "", "demo": "messaging\/list-provider-logs.md", @@ -18886,7 +18994,7 @@ "x-appwrite": { "method": "listSubscriberLogs", "group": "subscribers", - "weight": 302, + "weight": 298, "cookies": false, "type": "", "demo": "messaging\/list-subscriber-logs.md", @@ -18962,7 +19070,7 @@ "x-appwrite": { "method": "listTopics", "group": "topics", - "weight": 295, + "weight": 291, "cookies": false, "type": "", "demo": "messaging\/list-topics.md", @@ -19037,7 +19145,7 @@ "x-appwrite": { "method": "createTopic", "group": "topics", - "weight": 294, + "weight": 290, "cookies": false, "type": "", "demo": "messaging\/create-topic.md", @@ -19121,7 +19229,7 @@ "x-appwrite": { "method": "getTopic", "group": "topics", - "weight": 297, + "weight": 293, "cookies": false, "type": "", "demo": "messaging\/get-topic.md", @@ -19182,7 +19290,7 @@ "x-appwrite": { "method": "updateTopic", "group": "topics", - "weight": 298, + "weight": 294, "cookies": false, "type": "", "demo": "messaging\/update-topic.md", @@ -19260,7 +19368,7 @@ "x-appwrite": { "method": "deleteTopic", "group": "topics", - "weight": 299, + "weight": 295, "cookies": false, "type": "", "demo": "messaging\/delete-topic.md", @@ -19323,7 +19431,7 @@ "x-appwrite": { "method": "listTopicLogs", "group": "topics", - "weight": 296, + "weight": 292, "cookies": false, "type": "", "demo": "messaging\/list-topic-logs.md", @@ -19399,7 +19507,7 @@ "x-appwrite": { "method": "listSubscribers", "group": "subscribers", - "weight": 301, + "weight": 297, "cookies": false, "type": "", "demo": "messaging\/list-subscribers.md", @@ -19484,7 +19592,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -19576,7 +19684,7 @@ "x-appwrite": { "method": "getSubscriber", "group": "subscribers", - "weight": 303, + "weight": 299, "cookies": false, "type": "", "demo": "messaging\/get-subscriber.md", @@ -19640,7 +19748,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -19717,7 +19825,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 473, + "weight": 469, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -19788,7 +19896,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 471, + "weight": 467, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -20038,7 +20146,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 476, + "weight": 472, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -20088,7 +20196,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 499, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -20139,7 +20247,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 472, + "weight": 468, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -20199,7 +20307,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 474, + "weight": 470, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -20445,7 +20553,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 475, + "weight": 471, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -20507,7 +20615,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 482, + "weight": 478, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -20588,7 +20696,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 481, + "weight": 477, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -20672,7 +20780,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 477, + "weight": 473, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -20774,7 +20882,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 485, + "weight": 481, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -20838,7 +20946,7 @@ "tags": [ "sites" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -20855,11 +20963,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 478, + "weight": 474, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -20959,7 +21067,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 479, + "weight": 475, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -21058,7 +21166,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 480, + "weight": 476, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -21121,7 +21229,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 483, + "weight": 479, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -21186,7 +21294,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 484, + "weight": 480, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -21277,7 +21385,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 486, + "weight": 482, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -21349,7 +21457,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 488, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -21421,7 +21529,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 487, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -21484,7 +21592,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 489, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -21556,7 +21664,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 492, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -21616,7 +21724,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 490, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -21708,7 +21816,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 491, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -21778,7 +21886,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 493, + "weight": 489, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -21870,7 +21978,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 494, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -23210,7 +23318,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 380, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -23284,7 +23392,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 376, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -23364,7 +23472,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 377, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -23424,7 +23532,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 378, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -23501,7 +23609,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 379, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -23563,7 +23671,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 387, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -23633,7 +23741,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Table", @@ -23650,7 +23758,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 383, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -23758,7 +23866,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 384, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -23831,7 +23939,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 385, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -23934,7 +24042,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 386, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -24009,7 +24117,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 392, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -24097,7 +24205,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 393, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -24137,7 +24245,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -24207,7 +24315,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 394, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -24247,7 +24355,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -24322,7 +24430,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 395, + "weight": 391, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -24432,7 +24540,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 396, + "weight": 392, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -24547,7 +24655,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 397, + "weight": 393, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -24657,7 +24765,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 398, + "weight": 394, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -24772,7 +24880,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 399, + "weight": 395, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -24891,7 +24999,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 400, + "weight": 396, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -25015,7 +25123,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 401, + "weight": 397, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -25135,7 +25243,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 402, + "weight": 398, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -25260,7 +25368,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 403, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -25380,7 +25488,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 404, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -25505,7 +25613,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 405, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -25615,7 +25723,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 406, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -25713,7 +25821,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric line attribute.", + "description": "Create a geometric line column.", "responses": { "202": { "description": "ColumnLine", @@ -25730,7 +25838,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 407, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -25770,7 +25878,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -25798,7 +25906,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -25826,7 +25934,7 @@ "tags": [ "tablesDB" ], - "description": "Update a line column. Changing the `default` value will not update already existing documents.", + "description": "Update a line column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnLine", @@ -25843,7 +25951,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 408, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -25883,7 +25991,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -25915,7 +26023,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "items": { "oneOf": [ { @@ -25947,7 +26055,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric point attribute.", + "description": "Create a geometric point column.", "responses": { "202": { "description": "ColumnPoint", @@ -25964,7 +26072,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 409, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -26004,7 +26112,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26032,7 +26140,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -26060,7 +26168,7 @@ "tags": [ "tablesDB" ], - "description": "Update a point column. Changing the `default` value will not update already existing documents.", + "description": "Update a point column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPoint", @@ -26077,7 +26185,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 410, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -26117,7 +26225,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26149,7 +26257,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "items": { "oneOf": [ { @@ -26181,7 +26289,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric polygon attribute.", + "description": "Create a geometric polygon column.", "responses": { "202": { "description": "ColumnPolygon", @@ -26198,7 +26306,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 411, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -26238,7 +26346,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26266,7 +26374,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -26294,7 +26402,7 @@ "tags": [ "tablesDB" ], - "description": "Update a polygon column. Changing the `default` value will not update already existing documents.", + "description": "Update a polygon column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPolygon", @@ -26311,7 +26419,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 412, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -26351,7 +26459,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26383,7 +26491,7 @@ "default": { "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "items": { "oneOf": [ { @@ -26432,7 +26540,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 413, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -26567,7 +26675,7 @@ "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 415, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -26607,7 +26715,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26688,7 +26796,7 @@ "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 416, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -26728,7 +26836,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -26808,7 +26916,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 417, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -26918,7 +27026,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 418, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -27064,7 +27172,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 390, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -27139,7 +27247,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 391, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -27223,7 +27331,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 414, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -27335,7 +27443,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 422, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -27375,7 +27483,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -27421,7 +27529,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 419, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -27461,7 +27569,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -27554,7 +27662,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 420, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -27594,7 +27702,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -27629,7 +27737,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 421, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -27669,7 +27777,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -27713,7 +27821,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -27757,7 +27865,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "schema": { "type": "string", @@ -27786,7 +27894,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -27803,7 +27911,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -27849,7 +27957,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" }, { @@ -27876,7 +27984,7 @@ "model": "#\/components\/schemas\/rowList" } ], - "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-rows.md" } ], @@ -27906,7 +28014,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "schema": { "type": "string", @@ -27941,7 +28049,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "x-example": null, "items": { "type": "object" @@ -27959,7 +28067,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "responses": { "201": { "description": "Rows List", @@ -27976,7 +28084,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 428, + "weight": 424, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -28018,7 +28126,7 @@ "model": "#\/components\/schemas\/rowList" } ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "demo": "tablesdb\/upsert-rows.md" } ], @@ -28101,7 +28209,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 426, + "weight": 422, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -28199,7 +28307,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 430, + "weight": 426, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -28240,7 +28348,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -28294,7 +28402,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -28338,7 +28446,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -28377,7 +28485,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -28394,7 +28502,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -28439,7 +28547,7 @@ "model": "#\/components\/schemas\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -28536,7 +28644,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -28640,7 +28748,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -28684,7 +28792,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "schema": { "type": "string", @@ -28729,7 +28837,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -28849,7 +28957,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -35093,7 +35201,11 @@ "type": { "type": "string", "description": "Database type.", - "x-example": "legacy" + "x-example": "legacy", + "enum": [ + "legacy", + "tablesdb" + ] } }, "required": [ @@ -35331,7 +35443,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35419,7 +35539,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35509,7 +35637,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35599,7 +35735,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35672,7 +35816,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35752,7 +35904,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35842,7 +36002,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35922,7 +36090,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36002,7 +36178,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36082,7 +36266,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36190,7 +36382,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36269,7 +36469,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36360,7 +36568,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36676,7 +36892,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36764,7 +36988,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36854,7 +37086,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36944,7 +37184,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37017,7 +37265,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37097,7 +37353,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37187,7 +37451,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37267,7 +37539,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37347,7 +37627,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37427,7 +37715,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37535,7 +37831,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37614,7 +37918,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37705,7 +38017,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37835,7 +38155,14 @@ "status": { "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ] }, "error": { "type": "string", @@ -40272,7 +40599,14 @@ "status": { "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", and \"failed\".", - "x-example": "ready" + "x-example": "ready", + "enum": [ + "waiting", + "processing", + "building", + "ready", + "failed" + ] }, "buildLogs": { "type": "string", @@ -40300,11 +40634,6 @@ "description": "The url of the vcs provider repository", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function" }, - "providerBranch": { - "type": "string", - "description": "The branch of the vcs repository", - "x-example": "0.7.x" - }, "providerCommitHash": { "type": "string", "description": "The commit hash of the vcs commit", @@ -40330,6 +40659,11 @@ "description": "The url of the vcs commit", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb" }, + "providerBranch": { + "type": "string", + "description": "The branch of the vcs repository", + "x-example": "0.7.x" + }, "providerBranchUrl": { "type": "string", "description": "The branch of the vcs repository", @@ -40357,12 +40691,12 @@ "providerRepositoryName", "providerRepositoryOwner", "providerRepositoryUrl", - "providerBranch", "providerCommitHash", "providerCommitAuthorUrl", "providerCommitAuthor", "providerCommitMessage", "providerCommitUrl", + "providerBranch", "providerBranchUrl" ], "example": { @@ -40386,12 +40720,12 @@ "providerRepositoryName": "database", "providerRepositoryOwner": "utopia", "providerRepositoryUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function", - "providerBranch": "0.7.x", "providerCommitHash": "7c3f25d", "providerCommitAuthorUrl": "https:\/\/github.com\/vermakhushboo", "providerCommitAuthor": "Khushboo Verma", "providerCommitMessage": "Update index.js", "providerCommitUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb", + "providerBranch": "0.7.x", "providerBranchUrl": "https:\/\/github.com\/vermakhushboo\/appwrite\/tree\/0.7.x" } }, @@ -40437,12 +40771,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -40456,7 +40801,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "$ref": "#\/components\/schemas\/headers" }, @@ -40810,8 +41155,13 @@ }, "status": { "type": "string", - "description": "Antivirus status. Possible values can are: `disabled`, `offline`, `online`", - "x-example": "online" + "description": "Antivirus status. Possible values are: `disabled`, `offline`, `online`", + "x-example": "online", + "enum": [ + "disabled", + "offline", + "online" + ] } }, "required": [ @@ -40858,8 +41208,13 @@ }, "status": { "type": "string", - "description": "Service status. Possible values can are: `pass`, `fail`", - "x-example": "pass" + "description": "Service status. Possible values are: `pass`, `fail`", + "x-example": "pass", + "enum": [ + "pass", + "fail" + ], + "x-enum-name": "HealthCheckStatus" } }, "required": [ @@ -41324,7 +41679,14 @@ "status": { "type": "string", "description": "Status of delivery.", - "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed." + "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.", + "enum": [ + "draft", + "processing", + "scheduled", + "sent", + "failed" + ] } }, "required": [ diff --git a/app/config/specs/swagger2-1.8.x-client.json b/app/config/specs/swagger2-1.8.x-client.json index 42ccc1b896..9b7a240b18 100644 --- a/app/config/specs/swagger2-1.8.x-client.json +++ b/app/config/specs/swagger2-1.8.x-client.json @@ -3599,10 +3599,10 @@ ] } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "consumes": [ "application\/json" ], @@ -3623,12 +3623,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3639,6 +3639,56 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3673,7 +3723,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "consumes": [ "application\/json" ], @@ -3694,12 +3744,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3710,6 +3760,60 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3750,7 +3854,7 @@ ] } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4972,7 +5076,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -5057,7 +5161,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -5204,7 +5308,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -5297,7 +5401,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -5440,7 +5544,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -5540,7 +5644,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -5623,7 +5727,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -5735,7 +5839,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -5845,7 +5949,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -5918,7 +6022,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -6035,7 +6139,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -6106,7 +6210,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -6179,7 +6283,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -6660,7 +6764,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -6744,7 +6848,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -7573,7 +7677,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -7612,7 +7716,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "type": "string", "x-example": "", @@ -7644,7 +7748,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -7657,7 +7761,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -7701,7 +7805,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" } ], @@ -7727,7 +7831,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "type": "string", "x-example": "", @@ -7762,7 +7866,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "default": [], "x-example": null, "items": { @@ -7799,7 +7903,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -7838,7 +7942,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -7878,7 +7982,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -7891,7 +7995,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -7934,7 +8038,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -8025,7 +8129,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -8124,7 +8228,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -8163,7 +8267,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -8206,7 +8310,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -8317,7 +8421,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -11392,12 +11496,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -11411,7 +11526,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "type": "object", "$ref": "#\/definitions\/headers" diff --git a/app/config/specs/swagger2-1.8.x-console.json b/app/config/specs/swagger2-1.8.x-console.json index 393c2ce9c8..affee9509c 100644 --- a/app/config/specs/swagger2-1.8.x-console.json +++ b/app/config/specs/swagger2-1.8.x-console.json @@ -3618,10 +3618,10 @@ ] } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "consumes": [ "application\/json" ], @@ -3642,12 +3642,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3658,6 +3658,56 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3691,7 +3741,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "consumes": [ "application\/json" ], @@ -3712,12 +3762,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3728,6 +3778,60 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3767,7 +3871,7 @@ ] } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4989,7 +5093,7 @@ "x-appwrite": { "method": "chat", "group": "console", - "weight": 256, + "weight": 252, "cookies": false, "type": "", "demo": "assistant\/chat.md", @@ -5052,7 +5156,7 @@ "x-appwrite": { "method": "getResource", "group": null, - "weight": 500, + "weight": 496, "cookies": false, "type": "", "demo": "console\/get-resource.md", @@ -5123,7 +5227,7 @@ "x-appwrite": { "method": "variables", "group": "console", - "weight": 255, + "weight": 251, "cookies": false, "type": "", "demo": "console\/variables.md", @@ -5171,7 +5275,7 @@ "x-appwrite": { "method": "list", "group": "databases", - "weight": 320, + "weight": 316, "cookies": false, "type": "", "demo": "databases\/list.md", @@ -5274,7 +5378,7 @@ "x-appwrite": { "method": "create", "group": "databases", - "weight": 316, + "weight": 312, "cookies": false, "type": "", "demo": "databases\/create.md", @@ -5391,7 +5495,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 323, + "weight": 319, "cookies": false, "type": "", "demo": "databases\/list-usage.md", @@ -5491,7 +5595,7 @@ "x-appwrite": { "method": "get", "group": "databases", - "weight": 317, + "weight": 313, "cookies": false, "type": "", "demo": "databases\/get.md", @@ -5582,7 +5686,7 @@ "x-appwrite": { "method": "update", "group": "databases", - "weight": 318, + "weight": 314, "cookies": false, "type": "", "demo": "databases\/update.md", @@ -5695,7 +5799,7 @@ "x-appwrite": { "method": "delete", "group": "databases", - "weight": 319, + "weight": 315, "cookies": false, "type": "", "demo": "databases\/delete.md", @@ -5785,7 +5889,7 @@ "x-appwrite": { "method": "listCollections", "group": "collections", - "weight": 328, + "weight": 324, "cookies": false, "type": "", "demo": "databases\/list-collections.md", @@ -5869,7 +5973,7 @@ "x-appwrite": { "method": "createCollection", "group": "collections", - "weight": 324, + "weight": 320, "cookies": false, "type": "", "demo": "databases\/create-collection.md", @@ -5978,7 +6082,7 @@ "x-appwrite": { "method": "getCollection", "group": "collections", - "weight": 325, + "weight": 321, "cookies": false, "type": "", "demo": "databases\/get-collection.md", @@ -6049,7 +6153,7 @@ "x-appwrite": { "method": "updateCollection", "group": "collections", - "weight": 326, + "weight": 322, "cookies": false, "type": "", "demo": "databases\/update-collection.md", @@ -6154,7 +6258,7 @@ "x-appwrite": { "method": "deleteCollection", "group": "collections", - "weight": 327, + "weight": 323, "cookies": false, "type": "", "demo": "databases\/delete-collection.md", @@ -6225,7 +6329,7 @@ "x-appwrite": { "method": "listAttributes", "group": "attributes", - "weight": 345, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-attributes.md", @@ -6310,7 +6414,7 @@ "x-appwrite": { "method": "createBooleanAttribute", "group": "attributes", - "weight": 346, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-boolean-attribute.md", @@ -6420,7 +6524,7 @@ "x-appwrite": { "method": "updateBooleanAttribute", "group": "attributes", - "weight": 347, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/update-boolean-attribute.md", @@ -6532,7 +6636,7 @@ "x-appwrite": { "method": "createDatetimeAttribute", "group": "attributes", - "weight": 348, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/create-datetime-attribute.md", @@ -6642,7 +6746,7 @@ "x-appwrite": { "method": "updateDatetimeAttribute", "group": "attributes", - "weight": 349, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/update-datetime-attribute.md", @@ -6754,7 +6858,7 @@ "x-appwrite": { "method": "createEmailAttribute", "group": "attributes", - "weight": 350, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/create-email-attribute.md", @@ -6864,7 +6968,7 @@ "x-appwrite": { "method": "updateEmailAttribute", "group": "attributes", - "weight": 351, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/update-email-attribute.md", @@ -6976,7 +7080,7 @@ "x-appwrite": { "method": "createEnumAttribute", "group": "attributes", - "weight": 352, + "weight": 348, "cookies": false, "type": "", "demo": "databases\/create-enum-attribute.md", @@ -7096,7 +7200,7 @@ "x-appwrite": { "method": "updateEnumAttribute", "group": "attributes", - "weight": 353, + "weight": 349, "cookies": false, "type": "", "demo": "databases\/update-enum-attribute.md", @@ -7218,7 +7322,7 @@ "x-appwrite": { "method": "createFloatAttribute", "group": "attributes", - "weight": 354, + "weight": 350, "cookies": false, "type": "", "demo": "databases\/create-float-attribute.md", @@ -7340,7 +7444,7 @@ "x-appwrite": { "method": "updateFloatAttribute", "group": "attributes", - "weight": 355, + "weight": 351, "cookies": false, "type": "", "demo": "databases\/update-float-attribute.md", @@ -7464,7 +7568,7 @@ "x-appwrite": { "method": "createIntegerAttribute", "group": "attributes", - "weight": 356, + "weight": 352, "cookies": false, "type": "", "demo": "databases\/create-integer-attribute.md", @@ -7586,7 +7690,7 @@ "x-appwrite": { "method": "updateIntegerAttribute", "group": "attributes", - "weight": 357, + "weight": 353, "cookies": false, "type": "", "demo": "databases\/update-integer-attribute.md", @@ -7710,7 +7814,7 @@ "x-appwrite": { "method": "createIpAttribute", "group": "attributes", - "weight": 358, + "weight": 354, "cookies": false, "type": "", "demo": "databases\/create-ip-attribute.md", @@ -7820,7 +7924,7 @@ "x-appwrite": { "method": "updateIpAttribute", "group": "attributes", - "weight": 359, + "weight": 355, "cookies": false, "type": "", "demo": "databases\/update-ip-attribute.md", @@ -7932,7 +8036,7 @@ "x-appwrite": { "method": "createLineAttribute", "group": "attributes", - "weight": 360, + "weight": 356, "cookies": false, "type": "", "demo": "databases\/create-line-attribute.md", @@ -7998,7 +8102,7 @@ "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true } }, @@ -8037,7 +8141,7 @@ "x-appwrite": { "method": "updateLineAttribute", "group": "attributes", - "weight": 361, + "weight": 357, "cookies": false, "type": "", "demo": "databases\/update-line-attribute.md", @@ -8104,7 +8208,7 @@ "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true }, "newKey": { @@ -8135,7 +8239,7 @@ "tags": [ "databases" ], - "description": "Create a geometric 2d point attribute.", + "description": "Create a geometric point attribute.", "responses": { "202": { "description": "AttributePoint", @@ -8148,7 +8252,7 @@ "x-appwrite": { "method": "createPointAttribute", "group": "attributes", - "weight": 362, + "weight": 358, "cookies": false, "type": "", "demo": "databases\/create-point-attribute.md", @@ -8214,7 +8318,7 @@ "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true } }, @@ -8253,7 +8357,7 @@ "x-appwrite": { "method": "updatePointAttribute", "group": "attributes", - "weight": 363, + "weight": 359, "cookies": false, "type": "", "demo": "databases\/update-point-attribute.md", @@ -8320,7 +8424,7 @@ "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true }, "newKey": { @@ -8364,7 +8468,7 @@ "x-appwrite": { "method": "createPolygonAttribute", "group": "attributes", - "weight": 364, + "weight": 360, "cookies": false, "type": "", "demo": "databases\/create-polygon-attribute.md", @@ -8430,7 +8534,7 @@ "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true } }, @@ -8469,7 +8573,7 @@ "x-appwrite": { "method": "updatePolygonAttribute", "group": "attributes", - "weight": 365, + "weight": 361, "cookies": false, "type": "", "demo": "databases\/update-polygon-attribute.md", @@ -8536,7 +8640,7 @@ "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true }, "newKey": { @@ -8580,7 +8684,7 @@ "x-appwrite": { "method": "createRelationshipAttribute", "group": "attributes", - "weight": 366, + "weight": 362, "cookies": false, "type": "", "demo": "databases\/create-relationship-attribute.md", @@ -8717,7 +8821,7 @@ "x-appwrite": { "method": "createStringAttribute", "group": "attributes", - "weight": 368, + "weight": 364, "cookies": false, "type": "", "demo": "databases\/create-string-attribute.md", @@ -8840,7 +8944,7 @@ "x-appwrite": { "method": "updateStringAttribute", "group": "attributes", - "weight": 369, + "weight": 365, "cookies": false, "type": "", "demo": "databases\/update-string-attribute.md", @@ -8958,7 +9062,7 @@ "x-appwrite": { "method": "createUrlAttribute", "group": "attributes", - "weight": 370, + "weight": 366, "cookies": false, "type": "", "demo": "databases\/create-url-attribute.md", @@ -9068,7 +9172,7 @@ "x-appwrite": { "method": "updateUrlAttribute", "group": "attributes", - "weight": 371, + "weight": 367, "cookies": false, "type": "", "demo": "databases\/update-url-attribute.md", @@ -9209,7 +9313,7 @@ "x-appwrite": { "method": "getAttribute", "group": "attributes", - "weight": 343, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-attribute.md", @@ -9282,7 +9386,7 @@ "x-appwrite": { "method": "deleteAttribute", "group": "attributes", - "weight": 344, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-attribute.md", @@ -9362,7 +9466,7 @@ "x-appwrite": { "method": "updateRelationshipAttribute", "group": "attributes", - "weight": 367, + "weight": 363, "cookies": false, "type": "", "demo": "databases\/update-relationship-attribute.md", @@ -9468,7 +9572,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -9553,7 +9657,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -9730,7 +9834,7 @@ "x-appwrite": { "method": "upsertDocuments", "group": "documents", - "weight": 336, + "weight": 332, "cookies": false, "type": "", "demo": "databases\/upsert-documents.md", @@ -9855,7 +9959,7 @@ "x-appwrite": { "method": "updateDocuments", "group": "documents", - "weight": 334, + "weight": 330, "cookies": false, "type": "", "demo": "databases\/update-documents.md", @@ -9951,7 +10055,7 @@ "x-appwrite": { "method": "deleteDocuments", "group": "documents", - "weight": 338, + "weight": 334, "cookies": false, "type": "", "demo": "databases\/delete-documents.md", @@ -10041,7 +10145,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -10134,7 +10238,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -10277,7 +10381,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -10377,7 +10481,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -10458,7 +10562,7 @@ "x-appwrite": { "method": "listDocumentLogs", "group": "logs", - "weight": 340, + "weight": 336, "cookies": false, "type": "", "demo": "databases\/list-document-logs.md", @@ -10550,7 +10654,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -10662,7 +10766,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -10772,7 +10876,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 375, + "weight": 371, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -10855,7 +10959,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 372, + "weight": 368, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -10987,7 +11091,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 373, + "weight": 369, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -11060,7 +11164,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 374, + "weight": 370, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -11138,7 +11242,7 @@ "x-appwrite": { "method": "listCollectionLogs", "group": "collections", - "weight": 329, + "weight": 325, "cookies": false, "type": "", "demo": "databases\/list-collection-logs.md", @@ -11220,7 +11324,7 @@ "x-appwrite": { "method": "getCollectionUsage", "group": null, - "weight": 330, + "weight": 326, "cookies": false, "type": "", "demo": "databases\/get-collection-usage.md", @@ -11310,7 +11414,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 321, + "weight": 317, "cookies": false, "type": "", "demo": "databases\/list-logs.md", @@ -11413,7 +11517,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 322, + "weight": 318, "cookies": false, "type": "", "demo": "databases\/get-usage.md", @@ -11524,7 +11628,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 444, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -11596,7 +11700,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 441, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -11847,7 +11951,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 446, + "weight": 442, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -11896,7 +12000,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 447, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -11946,7 +12050,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 470, + "weight": 466, "cookies": false, "type": "", "demo": "functions\/list-templates.md", @@ -12040,7 +12144,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 469, + "weight": 465, "cookies": false, "type": "", "demo": "functions\/get-template.md", @@ -12098,7 +12202,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 463, + "weight": 459, "cookies": false, "type": "", "demo": "functions\/list-usage.md", @@ -12168,7 +12272,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 442, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -12227,7 +12331,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 443, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -12474,7 +12578,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 445, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -12535,7 +12639,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 450, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -12612,7 +12716,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 451, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -12692,7 +12796,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 448, + "weight": 444, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -12784,7 +12888,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 456, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -12856,7 +12960,7 @@ "tags": [ "functions" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -12869,11 +12973,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 453, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -12975,7 +13079,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 454, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -13071,7 +13175,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 449, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -13133,7 +13237,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 452, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -13200,7 +13304,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 455, + "weight": 451, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -13285,7 +13389,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 457, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -13352,7 +13456,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -13425,7 +13529,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -13542,7 +13646,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -13606,7 +13710,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 461, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -13673,7 +13777,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 462, + "weight": 458, "cookies": false, "type": "", "demo": "functions\/get-usage.md", @@ -13751,7 +13855,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 466, + "weight": 462, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -13810,7 +13914,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 464, + "weight": 460, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -13900,7 +14004,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 465, + "weight": 461, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -13967,7 +14071,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 467, + "weight": 463, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -14059,7 +14163,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 468, + "weight": 464, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -14128,7 +14232,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -14201,7 +14305,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -15943,7 +16047,7 @@ "x-appwrite": { "method": "listMessages", "group": "messages", - "weight": 308, + "weight": 304, "cookies": false, "type": "", "demo": "messaging\/list-messages.md", @@ -16018,7 +16122,7 @@ "x-appwrite": { "method": "createEmail", "group": "messages", - "weight": 305, + "weight": 301, "cookies": false, "type": "", "demo": "messaging\/create-email.md", @@ -16176,7 +16280,7 @@ "x-appwrite": { "method": "updateEmail", "group": "messages", - "weight": 312, + "weight": 308, "cookies": false, "type": "", "demo": "messaging\/update-email.md", @@ -16331,7 +16435,7 @@ "x-appwrite": { "method": "createPush", "group": "messages", - "weight": 307, + "weight": 303, "cookies": false, "type": "", "demo": "messaging\/create-push.md", @@ -16526,7 +16630,7 @@ "x-appwrite": { "method": "updatePush", "group": "messages", - "weight": 314, + "weight": 310, "cookies": false, "type": "", "demo": "messaging\/update-push.md", @@ -16720,7 +16824,7 @@ "x-appwrite": { "method": "createSms", "group": "messages", - "weight": 306, + "weight": 302, "cookies": false, "type": "", "demo": "messaging\/create-sms.md", @@ -16906,7 +17010,7 @@ "x-appwrite": { "method": "updateSms", "group": "messages", - "weight": 313, + "weight": 309, "cookies": false, "type": "", "demo": "messaging\/update-sms.md", @@ -17086,7 +17190,7 @@ "x-appwrite": { "method": "getMessage", "group": "messages", - "weight": 311, + "weight": 307, "cookies": false, "type": "", "demo": "messaging\/get-message.md", @@ -17141,7 +17245,7 @@ "x-appwrite": { "method": "delete", "group": "messages", - "weight": 315, + "weight": 311, "cookies": false, "type": "", "demo": "messaging\/delete.md", @@ -17201,7 +17305,7 @@ "x-appwrite": { "method": "listMessageLogs", "group": "logs", - "weight": 309, + "weight": 305, "cookies": false, "type": "", "demo": "messaging\/list-message-logs.md", @@ -17273,7 +17377,7 @@ "x-appwrite": { "method": "listTargets", "group": "messages", - "weight": 310, + "weight": 306, "cookies": false, "type": "", "demo": "messaging\/list-targets.md", @@ -17345,7 +17449,7 @@ "x-appwrite": { "method": "listProviders", "group": "providers", - "weight": 280, + "weight": 276, "cookies": false, "type": "", "demo": "messaging\/list-providers.md", @@ -17420,7 +17524,7 @@ "x-appwrite": { "method": "createApnsProvider", "group": "providers", - "weight": 279, + "weight": 275, "cookies": false, "type": "", "demo": "messaging\/create-apns-provider.md", @@ -17605,7 +17709,7 @@ "x-appwrite": { "method": "updateApnsProvider", "group": "providers", - "weight": 292, + "weight": 288, "cookies": false, "type": "", "demo": "messaging\/update-apns-provider.md", @@ -17786,7 +17890,7 @@ "x-appwrite": { "method": "createFcmProvider", "group": "providers", - "weight": 278, + "weight": 274, "cookies": false, "type": "", "demo": "messaging\/create-fcm-provider.md", @@ -17939,7 +18043,7 @@ "x-appwrite": { "method": "updateFcmProvider", "group": "providers", - "weight": 291, + "weight": 287, "cookies": false, "type": "", "demo": "messaging\/update-fcm-provider.md", @@ -18088,7 +18192,7 @@ "x-appwrite": { "method": "createMailgunProvider", "group": "providers", - "weight": 270, + "weight": 266, "cookies": false, "type": "", "demo": "messaging\/create-mailgun-provider.md", @@ -18215,7 +18319,7 @@ "x-appwrite": { "method": "updateMailgunProvider", "group": "providers", - "weight": 283, + "weight": 279, "cookies": false, "type": "", "demo": "messaging\/update-mailgun-provider.md", @@ -18340,7 +18444,7 @@ "x-appwrite": { "method": "createMsg91Provider", "group": "providers", - "weight": 273, + "weight": 269, "cookies": false, "type": "", "demo": "messaging\/create-msg-91-provider.md", @@ -18443,7 +18547,7 @@ "x-appwrite": { "method": "updateMsg91Provider", "group": "providers", - "weight": 286, + "weight": 282, "cookies": false, "type": "", "demo": "messaging\/update-msg-91-provider.md", @@ -18544,7 +18648,7 @@ "x-appwrite": { "method": "createSendgridProvider", "group": "providers", - "weight": 271, + "weight": 267, "cookies": false, "type": "", "demo": "messaging\/create-sendgrid-provider.md", @@ -18659,7 +18763,7 @@ "x-appwrite": { "method": "updateSendgridProvider", "group": "providers", - "weight": 284, + "weight": 280, "cookies": false, "type": "", "demo": "messaging\/update-sendgrid-provider.md", @@ -18772,7 +18876,7 @@ "x-appwrite": { "method": "createSmtpProvider", "group": "providers", - "weight": 272, + "weight": 268, "cookies": false, "type": "", "demo": "messaging\/create-smtp-provider.md", @@ -19015,7 +19119,7 @@ "x-appwrite": { "method": "updateSmtpProvider", "group": "providers", - "weight": 285, + "weight": 281, "cookies": false, "type": "", "demo": "messaging\/update-smtp-provider.md", @@ -19251,7 +19355,7 @@ "x-appwrite": { "method": "createTelesignProvider", "group": "providers", - "weight": 274, + "weight": 270, "cookies": false, "type": "", "demo": "messaging\/create-telesign-provider.md", @@ -19354,7 +19458,7 @@ "x-appwrite": { "method": "updateTelesignProvider", "group": "providers", - "weight": 287, + "weight": 283, "cookies": false, "type": "", "demo": "messaging\/update-telesign-provider.md", @@ -19455,7 +19559,7 @@ "x-appwrite": { "method": "createTextmagicProvider", "group": "providers", - "weight": 275, + "weight": 271, "cookies": false, "type": "", "demo": "messaging\/create-textmagic-provider.md", @@ -19558,7 +19662,7 @@ "x-appwrite": { "method": "updateTextmagicProvider", "group": "providers", - "weight": 288, + "weight": 284, "cookies": false, "type": "", "demo": "messaging\/update-textmagic-provider.md", @@ -19659,7 +19763,7 @@ "x-appwrite": { "method": "createTwilioProvider", "group": "providers", - "weight": 276, + "weight": 272, "cookies": false, "type": "", "demo": "messaging\/create-twilio-provider.md", @@ -19762,7 +19866,7 @@ "x-appwrite": { "method": "updateTwilioProvider", "group": "providers", - "weight": 289, + "weight": 285, "cookies": false, "type": "", "demo": "messaging\/update-twilio-provider.md", @@ -19863,7 +19967,7 @@ "x-appwrite": { "method": "createVonageProvider", "group": "providers", - "weight": 277, + "weight": 273, "cookies": false, "type": "", "demo": "messaging\/create-vonage-provider.md", @@ -19966,7 +20070,7 @@ "x-appwrite": { "method": "updateVonageProvider", "group": "providers", - "weight": 290, + "weight": 286, "cookies": false, "type": "", "demo": "messaging\/update-vonage-provider.md", @@ -20065,7 +20169,7 @@ "x-appwrite": { "method": "getProvider", "group": "providers", - "weight": 282, + "weight": 278, "cookies": false, "type": "", "demo": "messaging\/get-provider.md", @@ -20120,7 +20224,7 @@ "x-appwrite": { "method": "deleteProvider", "group": "providers", - "weight": 293, + "weight": 289, "cookies": false, "type": "", "demo": "messaging\/delete-provider.md", @@ -20180,7 +20284,7 @@ "x-appwrite": { "method": "listProviderLogs", "group": "providers", - "weight": 281, + "weight": 277, "cookies": false, "type": "", "demo": "messaging\/list-provider-logs.md", @@ -20252,7 +20356,7 @@ "x-appwrite": { "method": "listSubscriberLogs", "group": "subscribers", - "weight": 302, + "weight": 298, "cookies": false, "type": "", "demo": "messaging\/list-subscriber-logs.md", @@ -20324,7 +20428,7 @@ "x-appwrite": { "method": "listTopics", "group": "topics", - "weight": 295, + "weight": 291, "cookies": false, "type": "", "demo": "messaging\/list-topics.md", @@ -20397,7 +20501,7 @@ "x-appwrite": { "method": "createTopic", "group": "topics", - "weight": 294, + "weight": 290, "cookies": false, "type": "", "demo": "messaging\/create-topic.md", @@ -20485,7 +20589,7 @@ "x-appwrite": { "method": "getTopic", "group": "topics", - "weight": 297, + "weight": 293, "cookies": false, "type": "", "demo": "messaging\/get-topic.md", @@ -20545,7 +20649,7 @@ "x-appwrite": { "method": "updateTopic", "group": "topics", - "weight": 298, + "weight": 294, "cookies": false, "type": "", "demo": "messaging\/update-topic.md", @@ -20624,7 +20728,7 @@ "x-appwrite": { "method": "deleteTopic", "group": "topics", - "weight": 299, + "weight": 295, "cookies": false, "type": "", "demo": "messaging\/delete-topic.md", @@ -20684,7 +20788,7 @@ "x-appwrite": { "method": "listTopicLogs", "group": "topics", - "weight": 296, + "weight": 292, "cookies": false, "type": "", "demo": "messaging\/list-topic-logs.md", @@ -20756,7 +20860,7 @@ "x-appwrite": { "method": "listSubscribers", "group": "subscribers", - "weight": 301, + "weight": 297, "cookies": false, "type": "", "demo": "messaging\/list-subscribers.md", @@ -20837,7 +20941,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -20924,7 +21028,7 @@ "x-appwrite": { "method": "getSubscriber", "group": "subscribers", - "weight": 303, + "weight": 299, "cookies": false, "type": "", "demo": "messaging\/get-subscriber.md", @@ -20987,7 +21091,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -21057,7 +21161,7 @@ "x-appwrite": { "method": "list", "group": null, - "weight": 262, + "weight": 258, "cookies": false, "type": "", "demo": "migrations\/list.md", @@ -21130,7 +21234,7 @@ "x-appwrite": { "method": "createAppwriteMigration", "group": null, - "weight": 257, + "weight": 253, "cookies": false, "type": "", "demo": "migrations\/create-appwrite-migration.md", @@ -21222,7 +21326,7 @@ "x-appwrite": { "method": "getAppwriteReport", "group": null, - "weight": 264, + "weight": 260, "cookies": false, "type": "", "demo": "migrations\/get-appwrite-report.md", @@ -21310,7 +21414,7 @@ "x-appwrite": { "method": "createCsvMigration", "group": null, - "weight": 261, + "weight": 257, "cookies": false, "type": "", "demo": "migrations\/create-csv-migration.md", @@ -21400,7 +21504,7 @@ "x-appwrite": { "method": "createFirebaseMigration", "group": null, - "weight": 258, + "weight": 254, "cookies": false, "type": "", "demo": "migrations\/create-firebase-migration.md", @@ -21478,7 +21582,7 @@ "x-appwrite": { "method": "getFirebaseReport", "group": null, - "weight": 265, + "weight": 261, "cookies": false, "type": "", "demo": "migrations\/get-firebase-report.md", @@ -21549,7 +21653,7 @@ "x-appwrite": { "method": "createNHostMigration", "group": null, - "weight": 260, + "weight": 256, "cookies": false, "type": "", "demo": "migrations\/create-n-host-migration.md", @@ -21668,7 +21772,7 @@ "x-appwrite": { "method": "getNHostReport", "group": null, - "weight": 267, + "weight": 263, "cookies": false, "type": "", "demo": "migrations\/get-n-host-report.md", @@ -21788,7 +21892,7 @@ "x-appwrite": { "method": "createSupabaseMigration", "group": null, - "weight": 259, + "weight": 255, "cookies": false, "type": "", "demo": "migrations\/create-supabase-migration.md", @@ -21900,7 +22004,7 @@ "x-appwrite": { "method": "getSupabaseReport", "group": null, - "weight": 266, + "weight": 262, "cookies": false, "type": "", "demo": "migrations\/get-supabase-report.md", @@ -22011,7 +22115,7 @@ "x-appwrite": { "method": "get", "group": null, - "weight": 263, + "weight": 259, "cookies": false, "type": "", "demo": "migrations\/get.md", @@ -22069,7 +22173,7 @@ "x-appwrite": { "method": "retry", "group": null, - "weight": 268, + "weight": 264, "cookies": false, "type": "", "demo": "migrations\/retry.md", @@ -22122,7 +22226,7 @@ "x-appwrite": { "method": "delete", "group": null, - "weight": 269, + "weight": 265, "cookies": false, "type": "", "demo": "migrations\/delete.md", @@ -22590,7 +22694,7 @@ "x-appwrite": { "method": "list", "group": "projects", - "weight": 440, + "weight": 436, "cookies": false, "type": "", "demo": "projects\/list.md", @@ -24233,7 +24337,7 @@ "x-appwrite": { "method": "listDevKeys", "group": "devKeys", - "weight": 438, + "weight": 434, "cookies": false, "type": "", "demo": "projects\/list-dev-keys.md", @@ -24303,7 +24407,7 @@ "x-appwrite": { "method": "createDevKey", "group": "devKeys", - "weight": 435, + "weight": 431, "cookies": false, "type": "", "demo": "projects\/create-dev-key.md", @@ -24386,7 +24490,7 @@ "x-appwrite": { "method": "getDevKey", "group": "devKeys", - "weight": 437, + "weight": 433, "cookies": false, "type": "", "demo": "projects\/get-dev-key.md", @@ -24452,7 +24556,7 @@ "x-appwrite": { "method": "updateDevKey", "group": "devKeys", - "weight": 436, + "weight": 432, "cookies": false, "type": "", "demo": "projects\/update-dev-key.md", @@ -24538,7 +24642,7 @@ "x-appwrite": { "method": "deleteDevKey", "group": "devKeys", - "weight": 439, + "weight": 435, "cookies": false, "type": "", "demo": "projects\/delete-dev-key.md", @@ -25305,7 +25409,7 @@ "properties": { "type": { "type": "string", - "description": "Platform type.", + "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.", "default": null, "x-example": "web", "enum": [ @@ -28351,11 +28455,11 @@ "x-appwrite": { "method": "listRules", "group": null, - "weight": 240, + "weight": 502, "cookies": false, "type": "", "demo": "proxy\/list-rules.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/list-rules.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterGet a list of all the proxy rules. You can use the query params to filter your results.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28424,7 +28528,7 @@ "x-appwrite": { "method": "createAPIRule", "group": null, - "weight": 501, + "weight": 497, "cookies": false, "type": "", "demo": "proxy\/create-api-rule.md", @@ -28494,7 +28598,7 @@ "x-appwrite": { "method": "createFunctionRule", "group": null, - "weight": 503, + "weight": 499, "cookies": false, "type": "", "demo": "proxy\/create-function-rule.md", @@ -28577,7 +28681,7 @@ "x-appwrite": { "method": "createRedirectRule", "group": null, - "weight": 504, + "weight": 500, "cookies": false, "type": "", "demo": "proxy\/create-redirect-rule.md", @@ -28697,7 +28801,7 @@ "x-appwrite": { "method": "createSiteRule", "group": null, - "weight": 502, + "weight": 498, "cookies": false, "type": "", "demo": "proxy\/create-site-rule.md", @@ -28778,11 +28882,11 @@ "x-appwrite": { "method": "getRule", "group": null, - "weight": 241, + "weight": 501, "cookies": false, "type": "", "demo": "proxy\/get-rule.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/get-rule.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterGet a proxy rule by its unique ID.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28831,11 +28935,11 @@ "x-appwrite": { "method": "deleteRule", "group": null, - "weight": 242, + "weight": 503, "cookies": false, "type": "", "demo": "proxy\/delete-rule.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/delete-rule.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterDelete a proxy rule by its unique ID.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28891,11 +28995,11 @@ "x-appwrite": { "method": "updateRuleVerification", "group": null, - "weight": 243, + "weight": 504, "cookies": false, "type": "", "demo": "proxy\/update-rule-verification.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/update-rule-verification.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterRetry getting verification process of a proxy rule. This endpoint triggers domain verification by checking DNS records (CNAME) against the configured target domain. If verification is successful, a TLS certificate will be automatically provisioned for the domain.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28949,7 +29053,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 473, + "weight": 469, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -29021,7 +29125,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 471, + "weight": 467, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -29288,7 +29392,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 476, + "weight": 472, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -29337,7 +29441,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 499, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -29387,7 +29491,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 495, + "weight": 491, "cookies": false, "type": "", "demo": "sites\/list-templates.md", @@ -29481,7 +29585,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 496, + "weight": 492, "cookies": false, "type": "", "demo": "sites\/get-template.md", @@ -29539,7 +29643,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 497, + "weight": 493, "cookies": false, "type": "", "demo": "sites\/list-usage.md", @@ -29609,7 +29713,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 472, + "weight": 468, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -29668,7 +29772,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 474, + "weight": 470, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -29930,7 +30034,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 475, + "weight": 471, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -29991,7 +30095,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 482, + "weight": 478, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -30068,7 +30172,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 481, + "weight": 477, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -30148,7 +30252,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 477, + "weight": 473, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -30248,7 +30352,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 485, + "weight": 481, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -30314,7 +30418,7 @@ "tags": [ "sites" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -30327,11 +30431,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 478, + "weight": 474, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -30433,7 +30537,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 479, + "weight": 475, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -30530,7 +30634,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 480, + "weight": 476, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -30592,7 +30696,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 483, + "weight": 479, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -30659,7 +30763,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 484, + "weight": 480, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -30744,7 +30848,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 486, + "weight": 482, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -30811,7 +30915,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 488, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -30882,7 +30986,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 487, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -30946,7 +31050,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 489, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -31013,7 +31117,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 498, + "weight": 494, "cookies": false, "type": "", "demo": "sites\/get-usage.md", @@ -31091,7 +31195,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 492, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -31150,7 +31254,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 490, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -31240,7 +31344,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 491, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -31307,7 +31411,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 493, + "weight": 489, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -31399,7 +31503,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 494, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -32833,7 +32937,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 380, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -32905,7 +33009,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 376, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -32987,7 +33091,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 382, + "weight": 378, "cookies": false, "type": "", "demo": "tablesdb\/list-usage.md", @@ -33082,7 +33186,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 377, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -33141,7 +33245,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 378, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -33219,7 +33323,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 379, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -33278,7 +33382,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 387, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -33348,7 +33452,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Table", @@ -33361,7 +33465,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 383, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -33469,7 +33573,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 384, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -33539,7 +33643,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 385, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -33643,7 +33747,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 386, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -33713,7 +33817,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 392, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -33797,7 +33901,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 393, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -33834,7 +33938,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -33906,7 +34010,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 394, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -33943,7 +34047,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -34017,7 +34121,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 395, + "weight": 391, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -34126,7 +34230,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 396, + "weight": 392, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -34237,7 +34341,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 397, + "weight": 393, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -34346,7 +34450,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 398, + "weight": 394, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -34457,7 +34561,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 399, + "weight": 395, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -34576,7 +34680,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 400, + "weight": 396, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -34697,7 +34801,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 401, + "weight": 397, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -34818,7 +34922,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 402, + "weight": 398, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -34941,7 +35045,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 403, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -35062,7 +35166,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 404, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -35185,7 +35289,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 405, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -35294,7 +35398,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 406, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -35392,7 +35496,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric line attribute.", + "description": "Create a geometric line column.", "responses": { "202": { "description": "ColumnLine", @@ -35405,7 +35509,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 407, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -35442,7 +35546,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35470,7 +35574,7 @@ "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true } }, @@ -35496,7 +35600,7 @@ "tags": [ "tablesDB" ], - "description": "Update a line column. Changing the `default` value will not update already existing documents.", + "description": "Update a line column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnLine", @@ -35509,7 +35613,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 408, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -35546,7 +35650,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35575,7 +35679,7 @@ "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true }, "newKey": { @@ -35606,7 +35710,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric point attribute.", + "description": "Create a geometric point column.", "responses": { "202": { "description": "ColumnPoint", @@ -35619,7 +35723,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 409, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -35656,7 +35760,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35684,7 +35788,7 @@ "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true } }, @@ -35710,7 +35814,7 @@ "tags": [ "tablesDB" ], - "description": "Update a point column. Changing the `default` value will not update already existing documents.", + "description": "Update a point column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPoint", @@ -35723,7 +35827,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 410, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -35760,7 +35864,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35789,7 +35893,7 @@ "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true }, "newKey": { @@ -35820,7 +35924,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric polygon attribute.", + "description": "Create a geometric polygon column.", "responses": { "202": { "description": "ColumnPolygon", @@ -35833,7 +35937,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 411, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -35870,7 +35974,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35898,7 +36002,7 @@ "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true } }, @@ -35924,7 +36028,7 @@ "tags": [ "tablesDB" ], - "description": "Update a polygon column. Changing the `default` value will not update already existing documents.", + "description": "Update a polygon column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPolygon", @@ -35937,7 +36041,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 412, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -35974,7 +36078,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -36003,7 +36107,7 @@ "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true }, "newKey": { @@ -36047,7 +36151,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 413, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -36183,7 +36287,7 @@ "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 415, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -36220,7 +36324,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -36305,7 +36409,7 @@ "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 416, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -36342,7 +36446,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -36422,7 +36526,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 417, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -36531,7 +36635,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 418, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -36671,7 +36775,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 390, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -36743,7 +36847,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 391, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -36822,7 +36926,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 414, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -36927,7 +37031,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 422, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -36964,7 +37068,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37009,7 +37113,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 419, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -37046,7 +37150,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37140,7 +37244,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 420, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -37177,7 +37281,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37212,7 +37316,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 421, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -37249,7 +37353,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37289,7 +37393,7 @@ "x-appwrite": { "method": "listTableLogs", "group": "tables", - "weight": 388, + "weight": 384, "cookies": false, "type": "", "demo": "tablesdb\/list-table-logs.md", @@ -37370,7 +37474,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -37409,7 +37513,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "type": "string", "x-example": "", @@ -37441,7 +37545,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -37454,7 +37558,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -37498,7 +37602,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" }, { @@ -37524,7 +37628,7 @@ "model": "#\/definitions\/rowList" } ], - "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-rows.md" } ], @@ -37550,7 +37654,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "type": "string", "x-example": "", @@ -37585,7 +37689,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "default": [], "x-example": null, "items": { @@ -37609,7 +37713,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "responses": { "201": { "description": "Rows List", @@ -37622,7 +37726,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 428, + "weight": 424, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -37663,7 +37767,7 @@ "model": "#\/definitions\/rowList" } ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "demo": "tablesdb\/upsert-rows.md" } ], @@ -37742,7 +37846,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 426, + "weight": 422, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -37837,7 +37941,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 430, + "weight": 426, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -37875,7 +37979,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37926,7 +38030,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -37965,7 +38069,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -38005,7 +38109,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -38018,7 +38122,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -38061,7 +38165,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -38152,7 +38256,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -38251,7 +38355,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -38290,7 +38394,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -38331,7 +38435,7 @@ "x-appwrite": { "method": "listRowLogs", "group": "logs", - "weight": 432, + "weight": 428, "cookies": false, "type": "", "demo": "tablesdb\/list-row-logs.md", @@ -38422,7 +38526,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -38533,7 +38637,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -38642,7 +38746,7 @@ "x-appwrite": { "method": "getTableUsage", "group": null, - "weight": 389, + "weight": 385, "cookies": false, "type": "", "demo": "tablesdb\/get-table-usage.md", @@ -38731,7 +38835,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 381, + "weight": 377, "cookies": false, "type": "", "demo": "tablesdb\/get-usage.md", @@ -46159,7 +46263,11 @@ "type": { "type": "string", "description": "Database type.", - "x-example": "legacy" + "x-example": "legacy", + "enum": [ + "legacy", + "tablesdb" + ] } }, "required": [ @@ -46398,7 +46506,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46486,7 +46602,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46576,7 +46700,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46666,7 +46798,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46739,7 +46879,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46819,7 +46967,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46909,7 +47065,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46989,7 +47153,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47069,7 +47241,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47149,7 +47329,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47257,7 +47445,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47336,7 +47532,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47427,7 +47631,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47744,7 +47956,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -47832,7 +48052,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -47922,7 +48150,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48012,7 +48248,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48085,7 +48329,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48165,7 +48417,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48255,7 +48515,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48335,7 +48603,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48415,7 +48691,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48495,7 +48779,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48603,7 +48895,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48682,7 +48982,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48773,7 +49081,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48903,7 +49219,14 @@ "status": { "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ] }, "error": { "type": "string", @@ -52139,7 +52462,14 @@ "status": { "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", and \"failed\".", - "x-example": "ready" + "x-example": "ready", + "enum": [ + "waiting", + "processing", + "building", + "ready", + "failed" + ] }, "buildLogs": { "type": "string", @@ -52167,11 +52497,6 @@ "description": "The url of the vcs provider repository", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function" }, - "providerBranch": { - "type": "string", - "description": "The branch of the vcs repository", - "x-example": "0.7.x" - }, "providerCommitHash": { "type": "string", "description": "The commit hash of the vcs commit", @@ -52197,6 +52522,11 @@ "description": "The url of the vcs commit", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb" }, + "providerBranch": { + "type": "string", + "description": "The branch of the vcs repository", + "x-example": "0.7.x" + }, "providerBranchUrl": { "type": "string", "description": "The branch of the vcs repository", @@ -52224,12 +52554,12 @@ "providerRepositoryName", "providerRepositoryOwner", "providerRepositoryUrl", - "providerBranch", "providerCommitHash", "providerCommitAuthorUrl", "providerCommitAuthor", "providerCommitMessage", "providerCommitUrl", + "providerBranch", "providerBranchUrl" ], "example": { @@ -52253,12 +52583,12 @@ "providerRepositoryName": "database", "providerRepositoryOwner": "utopia", "providerRepositoryUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function", - "providerBranch": "0.7.x", "providerCommitHash": "7c3f25d", "providerCommitAuthorUrl": "https:\/\/github.com\/vermakhushboo", "providerCommitAuthor": "Khushboo Verma", "providerCommitMessage": "Update index.js", "providerCommitUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb", + "providerBranch": "0.7.x", "providerBranchUrl": "https:\/\/github.com\/vermakhushboo\/appwrite\/tree\/0.7.x" } }, @@ -52304,12 +52634,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -52323,7 +52664,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "type": "object", "$ref": "#\/definitions\/headers" @@ -53267,8 +53608,25 @@ }, "type": { "type": "string", - "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, ios, android, and unity.", - "x-example": "web" + "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.", + "x-example": "web", + "enum": [ + "web", + "flutter-web", + "flutter-ios", + "flutter-android", + "flutter-linux", + "flutter-macos", + "flutter-windows", + "apple-ios", + "apple-macos", + "apple-watchos", + "apple-tvos", + "android", + "unity", + "react-native-ios", + "react-native-android" + ] }, "key": { "type": "string", @@ -53283,7 +53641,7 @@ "hostname": { "type": "string", "description": "Web app hostname. Empty string for other platforms.", - "x-example": true + "x-example": "app.example.com" }, "httpUser": { "type": "string", @@ -53316,7 +53674,7 @@ "type": "web", "key": "com.company.appname", "store": "", - "hostname": true, + "hostname": "app.example.com", "httpUser": "username", "httpPass": "password" } @@ -53569,8 +53927,13 @@ }, "status": { "type": "string", - "description": "Antivirus status. Possible values can are: `disabled`, `offline`, `online`", - "x-example": "online" + "description": "Antivirus status. Possible values are: `disabled`, `offline`, `online`", + "x-example": "online", + "enum": [ + "disabled", + "offline", + "online" + ] } }, "required": [ @@ -53617,8 +53980,13 @@ }, "status": { "type": "string", - "description": "Service status. Possible values can are: `pass`, `fail`", - "x-example": "pass" + "description": "Service status. Possible values are: `pass`, `fail`", + "x-example": "pass", + "enum": [ + "pass", + "fail" + ], + "x-enum-name": "HealthCheckStatus" } }, "required": [ @@ -55874,7 +56242,11 @@ "deploymentResourceType": { "type": "string", "description": "Type of deployment. Possible values are \"function\", \"site\". Used if rule's type is \"deployment\".", - "x-example": "function" + "x-example": "function", + "enum": [ + "function", + "site" + ] }, "deploymentResourceId": { "type": "string", @@ -55884,12 +56256,18 @@ "deploymentVcsProviderBranch": { "type": "string", "description": "Name of Git branch that updates rule. Used if type is \"deployment\"", - "x-example": "function" + "x-example": "main" }, "status": { "type": "string", "description": "Domain verification status. Possible values are \"created\", \"verifying\", \"verified\" and \"unverified\"", - "x-example": "verified" + "x-example": "verified", + "enum": [ + "created", + "verifying", + "verified", + "unverified" + ] }, "logs": { "type": "string", @@ -55931,7 +56309,7 @@ "deploymentId": "n3u9feiwmf", "deploymentResourceType": "function", "deploymentResourceId": "n3u9feiwmf", - "deploymentVcsProviderBranch": "function", + "deploymentVcsProviderBranch": "main", "status": "verified", "logs": "HTTP challegne failed.", "renewAt": "datetime" @@ -56440,7 +56818,14 @@ "status": { "type": "string", "description": "Status of delivery.", - "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed." + "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.", + "enum": [ + "draft", + "processing", + "scheduled", + "sent", + "failed" + ] } }, "required": [ diff --git a/app/config/specs/swagger2-1.8.x-server.json b/app/config/specs/swagger2-1.8.x-server.json index 812598f516..05ad0562a5 100644 --- a/app/config/specs/swagger2-1.8.x-server.json +++ b/app/config/specs/swagger2-1.8.x-server.json @@ -3302,10 +3302,10 @@ ] } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "consumes": [ "application\/json" ], @@ -3326,12 +3326,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3342,6 +3342,58 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [], "Session": [] @@ -3377,7 +3429,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "consumes": [ "application\/json" ], @@ -3398,12 +3450,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3414,6 +3466,62 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [], "Session": [] @@ -3455,7 +3563,7 @@ ] } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4693,7 +4801,7 @@ "x-appwrite": { "method": "list", "group": "databases", - "weight": 320, + "weight": 316, "cookies": false, "type": "", "demo": "databases\/list.md", @@ -4798,7 +4906,7 @@ "x-appwrite": { "method": "create", "group": "databases", - "weight": 316, + "weight": 312, "cookies": false, "type": "", "demo": "databases\/create.md", @@ -4917,7 +5025,7 @@ "x-appwrite": { "method": "get", "group": "databases", - "weight": 317, + "weight": 313, "cookies": false, "type": "", "demo": "databases\/get.md", @@ -5010,7 +5118,7 @@ "x-appwrite": { "method": "update", "group": "databases", - "weight": 318, + "weight": 314, "cookies": false, "type": "", "demo": "databases\/update.md", @@ -5125,7 +5233,7 @@ "x-appwrite": { "method": "delete", "group": "databases", - "weight": 319, + "weight": 315, "cookies": false, "type": "", "demo": "databases\/delete.md", @@ -5217,7 +5325,7 @@ "x-appwrite": { "method": "listCollections", "group": "collections", - "weight": 328, + "weight": 324, "cookies": false, "type": "", "demo": "databases\/list-collections.md", @@ -5302,7 +5410,7 @@ "x-appwrite": { "method": "createCollection", "group": "collections", - "weight": 324, + "weight": 320, "cookies": false, "type": "", "demo": "databases\/create-collection.md", @@ -5412,7 +5520,7 @@ "x-appwrite": { "method": "getCollection", "group": "collections", - "weight": 325, + "weight": 321, "cookies": false, "type": "", "demo": "databases\/get-collection.md", @@ -5484,7 +5592,7 @@ "x-appwrite": { "method": "updateCollection", "group": "collections", - "weight": 326, + "weight": 322, "cookies": false, "type": "", "demo": "databases\/update-collection.md", @@ -5590,7 +5698,7 @@ "x-appwrite": { "method": "deleteCollection", "group": "collections", - "weight": 327, + "weight": 323, "cookies": false, "type": "", "demo": "databases\/delete-collection.md", @@ -5662,7 +5770,7 @@ "x-appwrite": { "method": "listAttributes", "group": "attributes", - "weight": 345, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-attributes.md", @@ -5748,7 +5856,7 @@ "x-appwrite": { "method": "createBooleanAttribute", "group": "attributes", - "weight": 346, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-boolean-attribute.md", @@ -5859,7 +5967,7 @@ "x-appwrite": { "method": "updateBooleanAttribute", "group": "attributes", - "weight": 347, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/update-boolean-attribute.md", @@ -5972,7 +6080,7 @@ "x-appwrite": { "method": "createDatetimeAttribute", "group": "attributes", - "weight": 348, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/create-datetime-attribute.md", @@ -6083,7 +6191,7 @@ "x-appwrite": { "method": "updateDatetimeAttribute", "group": "attributes", - "weight": 349, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/update-datetime-attribute.md", @@ -6196,7 +6304,7 @@ "x-appwrite": { "method": "createEmailAttribute", "group": "attributes", - "weight": 350, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/create-email-attribute.md", @@ -6307,7 +6415,7 @@ "x-appwrite": { "method": "updateEmailAttribute", "group": "attributes", - "weight": 351, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/update-email-attribute.md", @@ -6420,7 +6528,7 @@ "x-appwrite": { "method": "createEnumAttribute", "group": "attributes", - "weight": 352, + "weight": 348, "cookies": false, "type": "", "demo": "databases\/create-enum-attribute.md", @@ -6541,7 +6649,7 @@ "x-appwrite": { "method": "updateEnumAttribute", "group": "attributes", - "weight": 353, + "weight": 349, "cookies": false, "type": "", "demo": "databases\/update-enum-attribute.md", @@ -6664,7 +6772,7 @@ "x-appwrite": { "method": "createFloatAttribute", "group": "attributes", - "weight": 354, + "weight": 350, "cookies": false, "type": "", "demo": "databases\/create-float-attribute.md", @@ -6787,7 +6895,7 @@ "x-appwrite": { "method": "updateFloatAttribute", "group": "attributes", - "weight": 355, + "weight": 351, "cookies": false, "type": "", "demo": "databases\/update-float-attribute.md", @@ -6912,7 +7020,7 @@ "x-appwrite": { "method": "createIntegerAttribute", "group": "attributes", - "weight": 356, + "weight": 352, "cookies": false, "type": "", "demo": "databases\/create-integer-attribute.md", @@ -7035,7 +7143,7 @@ "x-appwrite": { "method": "updateIntegerAttribute", "group": "attributes", - "weight": 357, + "weight": 353, "cookies": false, "type": "", "demo": "databases\/update-integer-attribute.md", @@ -7160,7 +7268,7 @@ "x-appwrite": { "method": "createIpAttribute", "group": "attributes", - "weight": 358, + "weight": 354, "cookies": false, "type": "", "demo": "databases\/create-ip-attribute.md", @@ -7271,7 +7379,7 @@ "x-appwrite": { "method": "updateIpAttribute", "group": "attributes", - "weight": 359, + "weight": 355, "cookies": false, "type": "", "demo": "databases\/update-ip-attribute.md", @@ -7384,7 +7492,7 @@ "x-appwrite": { "method": "createLineAttribute", "group": "attributes", - "weight": 360, + "weight": 356, "cookies": false, "type": "", "demo": "databases\/create-line-attribute.md", @@ -7451,7 +7559,7 @@ "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true } }, @@ -7490,7 +7598,7 @@ "x-appwrite": { "method": "updateLineAttribute", "group": "attributes", - "weight": 361, + "weight": 357, "cookies": false, "type": "", "demo": "databases\/update-line-attribute.md", @@ -7558,7 +7666,7 @@ "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true }, "newKey": { @@ -7589,7 +7697,7 @@ "tags": [ "databases" ], - "description": "Create a geometric 2d point attribute.", + "description": "Create a geometric point attribute.", "responses": { "202": { "description": "AttributePoint", @@ -7602,7 +7710,7 @@ "x-appwrite": { "method": "createPointAttribute", "group": "attributes", - "weight": 362, + "weight": 358, "cookies": false, "type": "", "demo": "databases\/create-point-attribute.md", @@ -7669,7 +7777,7 @@ "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true } }, @@ -7708,7 +7816,7 @@ "x-appwrite": { "method": "updatePointAttribute", "group": "attributes", - "weight": 363, + "weight": 359, "cookies": false, "type": "", "demo": "databases\/update-point-attribute.md", @@ -7776,7 +7884,7 @@ "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true }, "newKey": { @@ -7820,7 +7928,7 @@ "x-appwrite": { "method": "createPolygonAttribute", "group": "attributes", - "weight": 364, + "weight": 360, "cookies": false, "type": "", "demo": "databases\/create-polygon-attribute.md", @@ -7887,7 +7995,7 @@ "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true } }, @@ -7926,7 +8034,7 @@ "x-appwrite": { "method": "updatePolygonAttribute", "group": "attributes", - "weight": 365, + "weight": 361, "cookies": false, "type": "", "demo": "databases\/update-polygon-attribute.md", @@ -7994,7 +8102,7 @@ "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true }, "newKey": { @@ -8038,7 +8146,7 @@ "x-appwrite": { "method": "createRelationshipAttribute", "group": "attributes", - "weight": 366, + "weight": 362, "cookies": false, "type": "", "demo": "databases\/create-relationship-attribute.md", @@ -8176,7 +8284,7 @@ "x-appwrite": { "method": "createStringAttribute", "group": "attributes", - "weight": 368, + "weight": 364, "cookies": false, "type": "", "demo": "databases\/create-string-attribute.md", @@ -8300,7 +8408,7 @@ "x-appwrite": { "method": "updateStringAttribute", "group": "attributes", - "weight": 369, + "weight": 365, "cookies": false, "type": "", "demo": "databases\/update-string-attribute.md", @@ -8419,7 +8527,7 @@ "x-appwrite": { "method": "createUrlAttribute", "group": "attributes", - "weight": 370, + "weight": 366, "cookies": false, "type": "", "demo": "databases\/create-url-attribute.md", @@ -8530,7 +8638,7 @@ "x-appwrite": { "method": "updateUrlAttribute", "group": "attributes", - "weight": 371, + "weight": 367, "cookies": false, "type": "", "demo": "databases\/update-url-attribute.md", @@ -8672,7 +8780,7 @@ "x-appwrite": { "method": "getAttribute", "group": "attributes", - "weight": 343, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-attribute.md", @@ -8746,7 +8854,7 @@ "x-appwrite": { "method": "deleteAttribute", "group": "attributes", - "weight": 344, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-attribute.md", @@ -8827,7 +8935,7 @@ "x-appwrite": { "method": "updateRelationshipAttribute", "group": "attributes", - "weight": 367, + "weight": 363, "cookies": false, "type": "", "demo": "databases\/update-relationship-attribute.md", @@ -8934,7 +9042,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -9021,7 +9129,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -9202,7 +9310,7 @@ "x-appwrite": { "method": "upsertDocuments", "group": "documents", - "weight": 336, + "weight": 332, "cookies": false, "type": "", "demo": "databases\/upsert-documents.md", @@ -9329,7 +9437,7 @@ "x-appwrite": { "method": "updateDocuments", "group": "documents", - "weight": 334, + "weight": 330, "cookies": false, "type": "", "demo": "databases\/update-documents.md", @@ -9426,7 +9534,7 @@ "x-appwrite": { "method": "deleteDocuments", "group": "documents", - "weight": 338, + "weight": 334, "cookies": false, "type": "", "demo": "databases\/delete-documents.md", @@ -9517,7 +9625,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -9612,7 +9720,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -9758,7 +9866,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -9860,7 +9968,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -9945,7 +10053,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -10059,7 +10167,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -10171,7 +10279,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 375, + "weight": 371, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -10255,7 +10363,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 372, + "weight": 368, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -10388,7 +10496,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 373, + "weight": 369, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -10462,7 +10570,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 374, + "weight": 370, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -10541,7 +10649,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 444, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -10614,7 +10722,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 441, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -10866,7 +10974,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 446, + "weight": 442, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -10916,7 +11024,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 447, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -10967,7 +11075,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 442, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -11027,7 +11135,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 443, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -11275,7 +11383,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 445, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -11337,7 +11445,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 450, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -11415,7 +11523,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 451, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -11496,7 +11604,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 448, + "weight": 444, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -11589,7 +11697,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 456, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -11662,7 +11770,7 @@ "tags": [ "functions" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -11675,11 +11783,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 453, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -11782,7 +11890,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 454, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -11879,7 +11987,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 449, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -11942,7 +12050,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 452, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -12010,7 +12118,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 455, + "weight": 451, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -12096,7 +12204,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 457, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -12164,7 +12272,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -12239,7 +12347,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -12358,7 +12466,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -12424,7 +12532,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 461, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -12492,7 +12600,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 466, + "weight": 462, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -12552,7 +12660,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 464, + "weight": 460, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -12643,7 +12751,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 465, + "weight": 461, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -12711,7 +12819,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 467, + "weight": 463, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -12804,7 +12912,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 468, + "weight": 464, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -12874,7 +12982,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -12949,7 +13057,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -14731,7 +14839,7 @@ "x-appwrite": { "method": "listMessages", "group": "messages", - "weight": 308, + "weight": 304, "cookies": false, "type": "", "demo": "messaging\/list-messages.md", @@ -14807,7 +14915,7 @@ "x-appwrite": { "method": "createEmail", "group": "messages", - "weight": 305, + "weight": 301, "cookies": false, "type": "", "demo": "messaging\/create-email.md", @@ -14966,7 +15074,7 @@ "x-appwrite": { "method": "updateEmail", "group": "messages", - "weight": 312, + "weight": 308, "cookies": false, "type": "", "demo": "messaging\/update-email.md", @@ -15122,7 +15230,7 @@ "x-appwrite": { "method": "createPush", "group": "messages", - "weight": 307, + "weight": 303, "cookies": false, "type": "", "demo": "messaging\/create-push.md", @@ -15318,7 +15426,7 @@ "x-appwrite": { "method": "updatePush", "group": "messages", - "weight": 314, + "weight": 310, "cookies": false, "type": "", "demo": "messaging\/update-push.md", @@ -15513,7 +15621,7 @@ "x-appwrite": { "method": "createSms", "group": "messages", - "weight": 306, + "weight": 302, "cookies": false, "type": "", "demo": "messaging\/create-sms.md", @@ -15702,7 +15810,7 @@ "x-appwrite": { "method": "updateSms", "group": "messages", - "weight": 313, + "weight": 309, "cookies": false, "type": "", "demo": "messaging\/update-sms.md", @@ -15885,7 +15993,7 @@ "x-appwrite": { "method": "getMessage", "group": "messages", - "weight": 311, + "weight": 307, "cookies": false, "type": "", "demo": "messaging\/get-message.md", @@ -15941,7 +16049,7 @@ "x-appwrite": { "method": "delete", "group": "messages", - "weight": 315, + "weight": 311, "cookies": false, "type": "", "demo": "messaging\/delete.md", @@ -16002,7 +16110,7 @@ "x-appwrite": { "method": "listMessageLogs", "group": "logs", - "weight": 309, + "weight": 305, "cookies": false, "type": "", "demo": "messaging\/list-message-logs.md", @@ -16075,7 +16183,7 @@ "x-appwrite": { "method": "listTargets", "group": "messages", - "weight": 310, + "weight": 306, "cookies": false, "type": "", "demo": "messaging\/list-targets.md", @@ -16148,7 +16256,7 @@ "x-appwrite": { "method": "listProviders", "group": "providers", - "weight": 280, + "weight": 276, "cookies": false, "type": "", "demo": "messaging\/list-providers.md", @@ -16224,7 +16332,7 @@ "x-appwrite": { "method": "createApnsProvider", "group": "providers", - "weight": 279, + "weight": 275, "cookies": false, "type": "", "demo": "messaging\/create-apns-provider.md", @@ -16412,7 +16520,7 @@ "x-appwrite": { "method": "updateApnsProvider", "group": "providers", - "weight": 292, + "weight": 288, "cookies": false, "type": "", "demo": "messaging\/update-apns-provider.md", @@ -16596,7 +16704,7 @@ "x-appwrite": { "method": "createFcmProvider", "group": "providers", - "weight": 278, + "weight": 274, "cookies": false, "type": "", "demo": "messaging\/create-fcm-provider.md", @@ -16752,7 +16860,7 @@ "x-appwrite": { "method": "updateFcmProvider", "group": "providers", - "weight": 291, + "weight": 287, "cookies": false, "type": "", "demo": "messaging\/update-fcm-provider.md", @@ -16904,7 +17012,7 @@ "x-appwrite": { "method": "createMailgunProvider", "group": "providers", - "weight": 270, + "weight": 266, "cookies": false, "type": "", "demo": "messaging\/create-mailgun-provider.md", @@ -17032,7 +17140,7 @@ "x-appwrite": { "method": "updateMailgunProvider", "group": "providers", - "weight": 283, + "weight": 279, "cookies": false, "type": "", "demo": "messaging\/update-mailgun-provider.md", @@ -17158,7 +17266,7 @@ "x-appwrite": { "method": "createMsg91Provider", "group": "providers", - "weight": 273, + "weight": 269, "cookies": false, "type": "", "demo": "messaging\/create-msg-91-provider.md", @@ -17262,7 +17370,7 @@ "x-appwrite": { "method": "updateMsg91Provider", "group": "providers", - "weight": 286, + "weight": 282, "cookies": false, "type": "", "demo": "messaging\/update-msg-91-provider.md", @@ -17364,7 +17472,7 @@ "x-appwrite": { "method": "createSendgridProvider", "group": "providers", - "weight": 271, + "weight": 267, "cookies": false, "type": "", "demo": "messaging\/create-sendgrid-provider.md", @@ -17480,7 +17588,7 @@ "x-appwrite": { "method": "updateSendgridProvider", "group": "providers", - "weight": 284, + "weight": 280, "cookies": false, "type": "", "demo": "messaging\/update-sendgrid-provider.md", @@ -17594,7 +17702,7 @@ "x-appwrite": { "method": "createSmtpProvider", "group": "providers", - "weight": 272, + "weight": 268, "cookies": false, "type": "", "demo": "messaging\/create-smtp-provider.md", @@ -17840,7 +17948,7 @@ "x-appwrite": { "method": "updateSmtpProvider", "group": "providers", - "weight": 285, + "weight": 281, "cookies": false, "type": "", "demo": "messaging\/update-smtp-provider.md", @@ -18079,7 +18187,7 @@ "x-appwrite": { "method": "createTelesignProvider", "group": "providers", - "weight": 274, + "weight": 270, "cookies": false, "type": "", "demo": "messaging\/create-telesign-provider.md", @@ -18183,7 +18291,7 @@ "x-appwrite": { "method": "updateTelesignProvider", "group": "providers", - "weight": 287, + "weight": 283, "cookies": false, "type": "", "demo": "messaging\/update-telesign-provider.md", @@ -18285,7 +18393,7 @@ "x-appwrite": { "method": "createTextmagicProvider", "group": "providers", - "weight": 275, + "weight": 271, "cookies": false, "type": "", "demo": "messaging\/create-textmagic-provider.md", @@ -18389,7 +18497,7 @@ "x-appwrite": { "method": "updateTextmagicProvider", "group": "providers", - "weight": 288, + "weight": 284, "cookies": false, "type": "", "demo": "messaging\/update-textmagic-provider.md", @@ -18491,7 +18599,7 @@ "x-appwrite": { "method": "createTwilioProvider", "group": "providers", - "weight": 276, + "weight": 272, "cookies": false, "type": "", "demo": "messaging\/create-twilio-provider.md", @@ -18595,7 +18703,7 @@ "x-appwrite": { "method": "updateTwilioProvider", "group": "providers", - "weight": 289, + "weight": 285, "cookies": false, "type": "", "demo": "messaging\/update-twilio-provider.md", @@ -18697,7 +18805,7 @@ "x-appwrite": { "method": "createVonageProvider", "group": "providers", - "weight": 277, + "weight": 273, "cookies": false, "type": "", "demo": "messaging\/create-vonage-provider.md", @@ -18801,7 +18909,7 @@ "x-appwrite": { "method": "updateVonageProvider", "group": "providers", - "weight": 290, + "weight": 286, "cookies": false, "type": "", "demo": "messaging\/update-vonage-provider.md", @@ -18901,7 +19009,7 @@ "x-appwrite": { "method": "getProvider", "group": "providers", - "weight": 282, + "weight": 278, "cookies": false, "type": "", "demo": "messaging\/get-provider.md", @@ -18957,7 +19065,7 @@ "x-appwrite": { "method": "deleteProvider", "group": "providers", - "weight": 293, + "weight": 289, "cookies": false, "type": "", "demo": "messaging\/delete-provider.md", @@ -19018,7 +19126,7 @@ "x-appwrite": { "method": "listProviderLogs", "group": "providers", - "weight": 281, + "weight": 277, "cookies": false, "type": "", "demo": "messaging\/list-provider-logs.md", @@ -19091,7 +19199,7 @@ "x-appwrite": { "method": "listSubscriberLogs", "group": "subscribers", - "weight": 302, + "weight": 298, "cookies": false, "type": "", "demo": "messaging\/list-subscriber-logs.md", @@ -19164,7 +19272,7 @@ "x-appwrite": { "method": "listTopics", "group": "topics", - "weight": 295, + "weight": 291, "cookies": false, "type": "", "demo": "messaging\/list-topics.md", @@ -19238,7 +19346,7 @@ "x-appwrite": { "method": "createTopic", "group": "topics", - "weight": 294, + "weight": 290, "cookies": false, "type": "", "demo": "messaging\/create-topic.md", @@ -19327,7 +19435,7 @@ "x-appwrite": { "method": "getTopic", "group": "topics", - "weight": 297, + "weight": 293, "cookies": false, "type": "", "demo": "messaging\/get-topic.md", @@ -19388,7 +19496,7 @@ "x-appwrite": { "method": "updateTopic", "group": "topics", - "weight": 298, + "weight": 294, "cookies": false, "type": "", "demo": "messaging\/update-topic.md", @@ -19468,7 +19576,7 @@ "x-appwrite": { "method": "deleteTopic", "group": "topics", - "weight": 299, + "weight": 295, "cookies": false, "type": "", "demo": "messaging\/delete-topic.md", @@ -19529,7 +19637,7 @@ "x-appwrite": { "method": "listTopicLogs", "group": "topics", - "weight": 296, + "weight": 292, "cookies": false, "type": "", "demo": "messaging\/list-topic-logs.md", @@ -19602,7 +19710,7 @@ "x-appwrite": { "method": "listSubscribers", "group": "subscribers", - "weight": 301, + "weight": 297, "cookies": false, "type": "", "demo": "messaging\/list-subscribers.md", @@ -19684,7 +19792,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -19773,7 +19881,7 @@ "x-appwrite": { "method": "getSubscriber", "group": "subscribers", - "weight": 303, + "weight": 299, "cookies": false, "type": "", "demo": "messaging\/get-subscriber.md", @@ -19837,7 +19945,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -19909,7 +20017,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 473, + "weight": 469, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -19982,7 +20090,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 471, + "weight": 467, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -20250,7 +20358,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 476, + "weight": 472, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -20300,7 +20408,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 499, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -20351,7 +20459,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 472, + "weight": 468, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -20411,7 +20519,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 474, + "weight": 470, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -20674,7 +20782,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 475, + "weight": 471, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -20736,7 +20844,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 482, + "weight": 478, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -20814,7 +20922,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 481, + "weight": 477, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -20895,7 +21003,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 477, + "weight": 473, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -20996,7 +21104,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 485, + "weight": 481, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -21063,7 +21171,7 @@ "tags": [ "sites" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -21076,11 +21184,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 478, + "weight": 474, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -21183,7 +21291,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 479, + "weight": 475, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -21281,7 +21389,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 480, + "weight": 476, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -21344,7 +21452,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 483, + "weight": 479, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -21412,7 +21520,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 484, + "weight": 480, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -21498,7 +21606,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 486, + "weight": 482, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -21566,7 +21674,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 488, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -21638,7 +21746,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 487, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -21703,7 +21811,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 489, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -21771,7 +21879,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 492, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -21831,7 +21939,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 490, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -21922,7 +22030,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 491, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -21990,7 +22098,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 493, + "weight": 489, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -22083,7 +22191,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 494, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -23391,7 +23499,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 380, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -23464,7 +23572,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 376, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -23547,7 +23655,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 377, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -23607,7 +23715,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 378, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -23686,7 +23794,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 379, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -23746,7 +23854,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 387, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -23817,7 +23925,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Table", @@ -23830,7 +23938,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 383, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -23939,7 +24047,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 384, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -24010,7 +24118,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 385, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -24115,7 +24223,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 386, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -24186,7 +24294,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 392, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -24271,7 +24379,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 393, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -24309,7 +24417,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -24381,7 +24489,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 394, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -24419,7 +24527,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -24493,7 +24601,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 395, + "weight": 391, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -24603,7 +24711,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 396, + "weight": 392, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -24715,7 +24823,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 397, + "weight": 393, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -24825,7 +24933,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 398, + "weight": 394, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -24937,7 +25045,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 399, + "weight": 395, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -25057,7 +25165,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 400, + "weight": 396, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -25179,7 +25287,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 401, + "weight": 397, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -25301,7 +25409,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 402, + "weight": 398, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -25425,7 +25533,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 403, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -25547,7 +25655,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 404, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -25671,7 +25779,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 405, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -25781,7 +25889,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 406, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -25880,7 +25988,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric line attribute.", + "description": "Create a geometric line column.", "responses": { "202": { "description": "ColumnLine", @@ -25893,7 +26001,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 407, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -25931,7 +26039,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -25959,7 +26067,7 @@ "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true } }, @@ -25985,7 +26093,7 @@ "tags": [ "tablesDB" ], - "description": "Update a line column. Changing the `default` value will not update already existing documents.", + "description": "Update a line column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnLine", @@ -25998,7 +26106,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 408, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -26036,7 +26144,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26065,7 +26173,7 @@ "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true }, "newKey": { @@ -26096,7 +26204,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric point attribute.", + "description": "Create a geometric point column.", "responses": { "202": { "description": "ColumnPoint", @@ -26109,7 +26217,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 409, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -26147,7 +26255,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26175,7 +26283,7 @@ "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true } }, @@ -26201,7 +26309,7 @@ "tags": [ "tablesDB" ], - "description": "Update a point column. Changing the `default` value will not update already existing documents.", + "description": "Update a point column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPoint", @@ -26214,7 +26322,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 410, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -26252,7 +26360,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26281,7 +26389,7 @@ "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true }, "newKey": { @@ -26312,7 +26420,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric polygon attribute.", + "description": "Create a geometric polygon column.", "responses": { "202": { "description": "ColumnPolygon", @@ -26325,7 +26433,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 411, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -26363,7 +26471,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26391,7 +26499,7 @@ "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true } }, @@ -26417,7 +26525,7 @@ "tags": [ "tablesDB" ], - "description": "Update a polygon column. Changing the `default` value will not update already existing documents.", + "description": "Update a polygon column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPolygon", @@ -26430,7 +26538,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 412, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -26468,7 +26576,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26497,7 +26605,7 @@ "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true }, "newKey": { @@ -26541,7 +26649,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 413, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -26678,7 +26786,7 @@ "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 415, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -26716,7 +26824,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26801,7 +26909,7 @@ "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 416, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -26839,7 +26947,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26919,7 +27027,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 417, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -27029,7 +27137,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 418, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -27170,7 +27278,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 390, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -27243,7 +27351,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 391, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -27323,7 +27431,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 414, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -27429,7 +27537,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 422, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -27467,7 +27575,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -27512,7 +27620,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 419, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -27550,7 +27658,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -27644,7 +27752,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 420, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -27682,7 +27790,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -27717,7 +27825,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 421, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -27755,7 +27863,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -27795,7 +27903,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -27836,7 +27944,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "type": "string", "x-example": "", @@ -27868,7 +27976,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -27881,7 +27989,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -27926,7 +28034,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" }, { @@ -27953,7 +28061,7 @@ "model": "#\/definitions\/rowList" } ], - "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-rows.md" } ], @@ -27981,7 +28089,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "type": "string", "x-example": "", @@ -28016,7 +28124,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "default": [], "x-example": null, "items": { @@ -28040,7 +28148,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "responses": { "201": { "description": "Rows List", @@ -28053,7 +28161,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 428, + "weight": 424, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -28095,7 +28203,7 @@ "model": "#\/definitions\/rowList" } ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "demo": "tablesdb\/upsert-rows.md" } ], @@ -28175,7 +28283,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 426, + "weight": 422, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -28271,7 +28379,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 430, + "weight": 426, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -28310,7 +28418,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -28361,7 +28469,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -28402,7 +28510,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -28442,7 +28550,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -28455,7 +28563,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -28499,7 +28607,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -28592,7 +28700,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -28693,7 +28801,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -28734,7 +28842,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -28777,7 +28885,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -28890,7 +28998,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -35120,7 +35228,11 @@ "type": { "type": "string", "description": "Database type.", - "x-example": "legacy" + "x-example": "legacy", + "enum": [ + "legacy", + "tablesdb" + ] } }, "required": [ @@ -35359,7 +35471,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35447,7 +35567,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35537,7 +35665,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35627,7 +35763,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35700,7 +35844,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35780,7 +35932,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35870,7 +36030,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35950,7 +36118,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36030,7 +36206,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36110,7 +36294,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36218,7 +36410,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36297,7 +36497,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36388,7 +36596,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36705,7 +36921,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36793,7 +37017,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36883,7 +37115,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36973,7 +37213,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37046,7 +37294,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37126,7 +37382,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37216,7 +37480,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37296,7 +37568,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37376,7 +37656,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37456,7 +37744,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37564,7 +37860,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37643,7 +37947,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37734,7 +38046,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37864,7 +38184,14 @@ "status": { "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ] }, "error": { "type": "string", @@ -40307,7 +40634,14 @@ "status": { "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", and \"failed\".", - "x-example": "ready" + "x-example": "ready", + "enum": [ + "waiting", + "processing", + "building", + "ready", + "failed" + ] }, "buildLogs": { "type": "string", @@ -40335,11 +40669,6 @@ "description": "The url of the vcs provider repository", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function" }, - "providerBranch": { - "type": "string", - "description": "The branch of the vcs repository", - "x-example": "0.7.x" - }, "providerCommitHash": { "type": "string", "description": "The commit hash of the vcs commit", @@ -40365,6 +40694,11 @@ "description": "The url of the vcs commit", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb" }, + "providerBranch": { + "type": "string", + "description": "The branch of the vcs repository", + "x-example": "0.7.x" + }, "providerBranchUrl": { "type": "string", "description": "The branch of the vcs repository", @@ -40392,12 +40726,12 @@ "providerRepositoryName", "providerRepositoryOwner", "providerRepositoryUrl", - "providerBranch", "providerCommitHash", "providerCommitAuthorUrl", "providerCommitAuthor", "providerCommitMessage", "providerCommitUrl", + "providerBranch", "providerBranchUrl" ], "example": { @@ -40421,12 +40755,12 @@ "providerRepositoryName": "database", "providerRepositoryOwner": "utopia", "providerRepositoryUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function", - "providerBranch": "0.7.x", "providerCommitHash": "7c3f25d", "providerCommitAuthorUrl": "https:\/\/github.com\/vermakhushboo", "providerCommitAuthor": "Khushboo Verma", "providerCommitMessage": "Update index.js", "providerCommitUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb", + "providerBranch": "0.7.x", "providerBranchUrl": "https:\/\/github.com\/vermakhushboo\/appwrite\/tree\/0.7.x" } }, @@ -40472,12 +40806,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -40491,7 +40836,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "type": "object", "$ref": "#\/definitions\/headers" @@ -40847,8 +41192,13 @@ }, "status": { "type": "string", - "description": "Antivirus status. Possible values can are: `disabled`, `offline`, `online`", - "x-example": "online" + "description": "Antivirus status. Possible values are: `disabled`, `offline`, `online`", + "x-example": "online", + "enum": [ + "disabled", + "offline", + "online" + ] } }, "required": [ @@ -40895,8 +41245,13 @@ }, "status": { "type": "string", - "description": "Service status. Possible values can are: `pass`, `fail`", - "x-example": "pass" + "description": "Service status. Possible values are: `pass`, `fail`", + "x-example": "pass", + "enum": [ + "pass", + "fail" + ], + "x-enum-name": "HealthCheckStatus" } }, "required": [ @@ -41363,7 +41718,14 @@ "status": { "type": "string", "description": "Status of delivery.", - "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed." + "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.", + "enum": [ + "draft", + "processing", + "scheduled", + "sent", + "failed" + ] } }, "required": [ diff --git a/app/config/specs/swagger2-latest-client.json b/app/config/specs/swagger2-latest-client.json index 42ccc1b896..9b7a240b18 100644 --- a/app/config/specs/swagger2-latest-client.json +++ b/app/config/specs/swagger2-latest-client.json @@ -3599,10 +3599,10 @@ ] } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "consumes": [ "application\/json" ], @@ -3623,12 +3623,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3639,6 +3639,56 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3673,7 +3723,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "consumes": [ "application\/json" ], @@ -3694,12 +3744,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3710,6 +3760,60 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3750,7 +3854,7 @@ ] } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4972,7 +5076,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -5057,7 +5161,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -5204,7 +5308,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -5297,7 +5401,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -5440,7 +5544,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -5540,7 +5644,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -5623,7 +5727,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -5735,7 +5839,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -5845,7 +5949,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -5918,7 +6022,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -6035,7 +6139,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -6106,7 +6210,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -6179,7 +6283,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -6660,7 +6764,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -6744,7 +6848,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -7573,7 +7677,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -7612,7 +7716,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "type": "string", "x-example": "", @@ -7644,7 +7748,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -7657,7 +7761,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -7701,7 +7805,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" } ], @@ -7727,7 +7831,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "type": "string", "x-example": "", @@ -7762,7 +7866,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "default": [], "x-example": null, "items": { @@ -7799,7 +7903,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -7838,7 +7942,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -7878,7 +7982,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -7891,7 +7995,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -7934,7 +8038,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -8025,7 +8129,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -8124,7 +8228,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -8163,7 +8267,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -8206,7 +8310,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -8317,7 +8421,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -11392,12 +11496,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -11411,7 +11526,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "type": "object", "$ref": "#\/definitions\/headers" diff --git a/app/config/specs/swagger2-latest-console.json b/app/config/specs/swagger2-latest-console.json index 393c2ce9c8..affee9509c 100644 --- a/app/config/specs/swagger2-latest-console.json +++ b/app/config/specs/swagger2-latest-console.json @@ -3618,10 +3618,10 @@ ] } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "consumes": [ "application\/json" ], @@ -3642,12 +3642,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3658,6 +3658,56 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3691,7 +3741,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "consumes": [ "application\/json" ], @@ -3712,12 +3762,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3728,6 +3778,60 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [] } @@ -3767,7 +3871,7 @@ ] } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4989,7 +5093,7 @@ "x-appwrite": { "method": "chat", "group": "console", - "weight": 256, + "weight": 252, "cookies": false, "type": "", "demo": "assistant\/chat.md", @@ -5052,7 +5156,7 @@ "x-appwrite": { "method": "getResource", "group": null, - "weight": 500, + "weight": 496, "cookies": false, "type": "", "demo": "console\/get-resource.md", @@ -5123,7 +5227,7 @@ "x-appwrite": { "method": "variables", "group": "console", - "weight": 255, + "weight": 251, "cookies": false, "type": "", "demo": "console\/variables.md", @@ -5171,7 +5275,7 @@ "x-appwrite": { "method": "list", "group": "databases", - "weight": 320, + "weight": 316, "cookies": false, "type": "", "demo": "databases\/list.md", @@ -5274,7 +5378,7 @@ "x-appwrite": { "method": "create", "group": "databases", - "weight": 316, + "weight": 312, "cookies": false, "type": "", "demo": "databases\/create.md", @@ -5391,7 +5495,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 323, + "weight": 319, "cookies": false, "type": "", "demo": "databases\/list-usage.md", @@ -5491,7 +5595,7 @@ "x-appwrite": { "method": "get", "group": "databases", - "weight": 317, + "weight": 313, "cookies": false, "type": "", "demo": "databases\/get.md", @@ -5582,7 +5686,7 @@ "x-appwrite": { "method": "update", "group": "databases", - "weight": 318, + "weight": 314, "cookies": false, "type": "", "demo": "databases\/update.md", @@ -5695,7 +5799,7 @@ "x-appwrite": { "method": "delete", "group": "databases", - "weight": 319, + "weight": 315, "cookies": false, "type": "", "demo": "databases\/delete.md", @@ -5785,7 +5889,7 @@ "x-appwrite": { "method": "listCollections", "group": "collections", - "weight": 328, + "weight": 324, "cookies": false, "type": "", "demo": "databases\/list-collections.md", @@ -5869,7 +5973,7 @@ "x-appwrite": { "method": "createCollection", "group": "collections", - "weight": 324, + "weight": 320, "cookies": false, "type": "", "demo": "databases\/create-collection.md", @@ -5978,7 +6082,7 @@ "x-appwrite": { "method": "getCollection", "group": "collections", - "weight": 325, + "weight": 321, "cookies": false, "type": "", "demo": "databases\/get-collection.md", @@ -6049,7 +6153,7 @@ "x-appwrite": { "method": "updateCollection", "group": "collections", - "weight": 326, + "weight": 322, "cookies": false, "type": "", "demo": "databases\/update-collection.md", @@ -6154,7 +6258,7 @@ "x-appwrite": { "method": "deleteCollection", "group": "collections", - "weight": 327, + "weight": 323, "cookies": false, "type": "", "demo": "databases\/delete-collection.md", @@ -6225,7 +6329,7 @@ "x-appwrite": { "method": "listAttributes", "group": "attributes", - "weight": 345, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-attributes.md", @@ -6310,7 +6414,7 @@ "x-appwrite": { "method": "createBooleanAttribute", "group": "attributes", - "weight": 346, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-boolean-attribute.md", @@ -6420,7 +6524,7 @@ "x-appwrite": { "method": "updateBooleanAttribute", "group": "attributes", - "weight": 347, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/update-boolean-attribute.md", @@ -6532,7 +6636,7 @@ "x-appwrite": { "method": "createDatetimeAttribute", "group": "attributes", - "weight": 348, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/create-datetime-attribute.md", @@ -6642,7 +6746,7 @@ "x-appwrite": { "method": "updateDatetimeAttribute", "group": "attributes", - "weight": 349, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/update-datetime-attribute.md", @@ -6754,7 +6858,7 @@ "x-appwrite": { "method": "createEmailAttribute", "group": "attributes", - "weight": 350, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/create-email-attribute.md", @@ -6864,7 +6968,7 @@ "x-appwrite": { "method": "updateEmailAttribute", "group": "attributes", - "weight": 351, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/update-email-attribute.md", @@ -6976,7 +7080,7 @@ "x-appwrite": { "method": "createEnumAttribute", "group": "attributes", - "weight": 352, + "weight": 348, "cookies": false, "type": "", "demo": "databases\/create-enum-attribute.md", @@ -7096,7 +7200,7 @@ "x-appwrite": { "method": "updateEnumAttribute", "group": "attributes", - "weight": 353, + "weight": 349, "cookies": false, "type": "", "demo": "databases\/update-enum-attribute.md", @@ -7218,7 +7322,7 @@ "x-appwrite": { "method": "createFloatAttribute", "group": "attributes", - "weight": 354, + "weight": 350, "cookies": false, "type": "", "demo": "databases\/create-float-attribute.md", @@ -7340,7 +7444,7 @@ "x-appwrite": { "method": "updateFloatAttribute", "group": "attributes", - "weight": 355, + "weight": 351, "cookies": false, "type": "", "demo": "databases\/update-float-attribute.md", @@ -7464,7 +7568,7 @@ "x-appwrite": { "method": "createIntegerAttribute", "group": "attributes", - "weight": 356, + "weight": 352, "cookies": false, "type": "", "demo": "databases\/create-integer-attribute.md", @@ -7586,7 +7690,7 @@ "x-appwrite": { "method": "updateIntegerAttribute", "group": "attributes", - "weight": 357, + "weight": 353, "cookies": false, "type": "", "demo": "databases\/update-integer-attribute.md", @@ -7710,7 +7814,7 @@ "x-appwrite": { "method": "createIpAttribute", "group": "attributes", - "weight": 358, + "weight": 354, "cookies": false, "type": "", "demo": "databases\/create-ip-attribute.md", @@ -7820,7 +7924,7 @@ "x-appwrite": { "method": "updateIpAttribute", "group": "attributes", - "weight": 359, + "weight": 355, "cookies": false, "type": "", "demo": "databases\/update-ip-attribute.md", @@ -7932,7 +8036,7 @@ "x-appwrite": { "method": "createLineAttribute", "group": "attributes", - "weight": 360, + "weight": 356, "cookies": false, "type": "", "demo": "databases\/create-line-attribute.md", @@ -7998,7 +8102,7 @@ "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true } }, @@ -8037,7 +8141,7 @@ "x-appwrite": { "method": "updateLineAttribute", "group": "attributes", - "weight": 361, + "weight": 357, "cookies": false, "type": "", "demo": "databases\/update-line-attribute.md", @@ -8104,7 +8208,7 @@ "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true }, "newKey": { @@ -8135,7 +8239,7 @@ "tags": [ "databases" ], - "description": "Create a geometric 2d point attribute.", + "description": "Create a geometric point attribute.", "responses": { "202": { "description": "AttributePoint", @@ -8148,7 +8252,7 @@ "x-appwrite": { "method": "createPointAttribute", "group": "attributes", - "weight": 362, + "weight": 358, "cookies": false, "type": "", "demo": "databases\/create-point-attribute.md", @@ -8214,7 +8318,7 @@ "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true } }, @@ -8253,7 +8357,7 @@ "x-appwrite": { "method": "updatePointAttribute", "group": "attributes", - "weight": 363, + "weight": 359, "cookies": false, "type": "", "demo": "databases\/update-point-attribute.md", @@ -8320,7 +8424,7 @@ "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true }, "newKey": { @@ -8364,7 +8468,7 @@ "x-appwrite": { "method": "createPolygonAttribute", "group": "attributes", - "weight": 364, + "weight": 360, "cookies": false, "type": "", "demo": "databases\/create-polygon-attribute.md", @@ -8430,7 +8534,7 @@ "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true } }, @@ -8469,7 +8573,7 @@ "x-appwrite": { "method": "updatePolygonAttribute", "group": "attributes", - "weight": 365, + "weight": 361, "cookies": false, "type": "", "demo": "databases\/update-polygon-attribute.md", @@ -8536,7 +8640,7 @@ "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true }, "newKey": { @@ -8580,7 +8684,7 @@ "x-appwrite": { "method": "createRelationshipAttribute", "group": "attributes", - "weight": 366, + "weight": 362, "cookies": false, "type": "", "demo": "databases\/create-relationship-attribute.md", @@ -8717,7 +8821,7 @@ "x-appwrite": { "method": "createStringAttribute", "group": "attributes", - "weight": 368, + "weight": 364, "cookies": false, "type": "", "demo": "databases\/create-string-attribute.md", @@ -8840,7 +8944,7 @@ "x-appwrite": { "method": "updateStringAttribute", "group": "attributes", - "weight": 369, + "weight": 365, "cookies": false, "type": "", "demo": "databases\/update-string-attribute.md", @@ -8958,7 +9062,7 @@ "x-appwrite": { "method": "createUrlAttribute", "group": "attributes", - "weight": 370, + "weight": 366, "cookies": false, "type": "", "demo": "databases\/create-url-attribute.md", @@ -9068,7 +9172,7 @@ "x-appwrite": { "method": "updateUrlAttribute", "group": "attributes", - "weight": 371, + "weight": 367, "cookies": false, "type": "", "demo": "databases\/update-url-attribute.md", @@ -9209,7 +9313,7 @@ "x-appwrite": { "method": "getAttribute", "group": "attributes", - "weight": 343, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-attribute.md", @@ -9282,7 +9386,7 @@ "x-appwrite": { "method": "deleteAttribute", "group": "attributes", - "weight": 344, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-attribute.md", @@ -9362,7 +9466,7 @@ "x-appwrite": { "method": "updateRelationshipAttribute", "group": "attributes", - "weight": 367, + "weight": 363, "cookies": false, "type": "", "demo": "databases\/update-relationship-attribute.md", @@ -9468,7 +9572,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -9553,7 +9657,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -9730,7 +9834,7 @@ "x-appwrite": { "method": "upsertDocuments", "group": "documents", - "weight": 336, + "weight": 332, "cookies": false, "type": "", "demo": "databases\/upsert-documents.md", @@ -9855,7 +9959,7 @@ "x-appwrite": { "method": "updateDocuments", "group": "documents", - "weight": 334, + "weight": 330, "cookies": false, "type": "", "demo": "databases\/update-documents.md", @@ -9951,7 +10055,7 @@ "x-appwrite": { "method": "deleteDocuments", "group": "documents", - "weight": 338, + "weight": 334, "cookies": false, "type": "", "demo": "databases\/delete-documents.md", @@ -10041,7 +10145,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -10134,7 +10238,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -10277,7 +10381,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -10377,7 +10481,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -10458,7 +10562,7 @@ "x-appwrite": { "method": "listDocumentLogs", "group": "logs", - "weight": 340, + "weight": 336, "cookies": false, "type": "", "demo": "databases\/list-document-logs.md", @@ -10550,7 +10654,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -10662,7 +10766,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -10772,7 +10876,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 375, + "weight": 371, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -10855,7 +10959,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 372, + "weight": 368, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -10987,7 +11091,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 373, + "weight": 369, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -11060,7 +11164,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 374, + "weight": 370, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -11138,7 +11242,7 @@ "x-appwrite": { "method": "listCollectionLogs", "group": "collections", - "weight": 329, + "weight": 325, "cookies": false, "type": "", "demo": "databases\/list-collection-logs.md", @@ -11220,7 +11324,7 @@ "x-appwrite": { "method": "getCollectionUsage", "group": null, - "weight": 330, + "weight": 326, "cookies": false, "type": "", "demo": "databases\/get-collection-usage.md", @@ -11310,7 +11414,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 321, + "weight": 317, "cookies": false, "type": "", "demo": "databases\/list-logs.md", @@ -11413,7 +11517,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 322, + "weight": 318, "cookies": false, "type": "", "demo": "databases\/get-usage.md", @@ -11524,7 +11628,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 444, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -11596,7 +11700,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 441, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -11847,7 +11951,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 446, + "weight": 442, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -11896,7 +12000,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 447, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -11946,7 +12050,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 470, + "weight": 466, "cookies": false, "type": "", "demo": "functions\/list-templates.md", @@ -12040,7 +12144,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 469, + "weight": 465, "cookies": false, "type": "", "demo": "functions\/get-template.md", @@ -12098,7 +12202,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 463, + "weight": 459, "cookies": false, "type": "", "demo": "functions\/list-usage.md", @@ -12168,7 +12272,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 442, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -12227,7 +12331,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 443, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -12474,7 +12578,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 445, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -12535,7 +12639,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 450, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -12612,7 +12716,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 451, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -12692,7 +12796,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 448, + "weight": 444, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -12784,7 +12888,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 456, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -12856,7 +12960,7 @@ "tags": [ "functions" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -12869,11 +12973,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 453, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -12975,7 +13079,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 454, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -13071,7 +13175,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 449, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -13133,7 +13237,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 452, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -13200,7 +13304,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 455, + "weight": 451, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -13285,7 +13389,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 457, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -13352,7 +13456,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -13425,7 +13529,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -13542,7 +13646,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -13606,7 +13710,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 461, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -13673,7 +13777,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 462, + "weight": 458, "cookies": false, "type": "", "demo": "functions\/get-usage.md", @@ -13751,7 +13855,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 466, + "weight": 462, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -13810,7 +13914,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 464, + "weight": 460, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -13900,7 +14004,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 465, + "weight": 461, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -13967,7 +14071,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 467, + "weight": 463, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -14059,7 +14163,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 468, + "weight": 464, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -14128,7 +14232,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -14201,7 +14305,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -15943,7 +16047,7 @@ "x-appwrite": { "method": "listMessages", "group": "messages", - "weight": 308, + "weight": 304, "cookies": false, "type": "", "demo": "messaging\/list-messages.md", @@ -16018,7 +16122,7 @@ "x-appwrite": { "method": "createEmail", "group": "messages", - "weight": 305, + "weight": 301, "cookies": false, "type": "", "demo": "messaging\/create-email.md", @@ -16176,7 +16280,7 @@ "x-appwrite": { "method": "updateEmail", "group": "messages", - "weight": 312, + "weight": 308, "cookies": false, "type": "", "demo": "messaging\/update-email.md", @@ -16331,7 +16435,7 @@ "x-appwrite": { "method": "createPush", "group": "messages", - "weight": 307, + "weight": 303, "cookies": false, "type": "", "demo": "messaging\/create-push.md", @@ -16526,7 +16630,7 @@ "x-appwrite": { "method": "updatePush", "group": "messages", - "weight": 314, + "weight": 310, "cookies": false, "type": "", "demo": "messaging\/update-push.md", @@ -16720,7 +16824,7 @@ "x-appwrite": { "method": "createSms", "group": "messages", - "weight": 306, + "weight": 302, "cookies": false, "type": "", "demo": "messaging\/create-sms.md", @@ -16906,7 +17010,7 @@ "x-appwrite": { "method": "updateSms", "group": "messages", - "weight": 313, + "weight": 309, "cookies": false, "type": "", "demo": "messaging\/update-sms.md", @@ -17086,7 +17190,7 @@ "x-appwrite": { "method": "getMessage", "group": "messages", - "weight": 311, + "weight": 307, "cookies": false, "type": "", "demo": "messaging\/get-message.md", @@ -17141,7 +17245,7 @@ "x-appwrite": { "method": "delete", "group": "messages", - "weight": 315, + "weight": 311, "cookies": false, "type": "", "demo": "messaging\/delete.md", @@ -17201,7 +17305,7 @@ "x-appwrite": { "method": "listMessageLogs", "group": "logs", - "weight": 309, + "weight": 305, "cookies": false, "type": "", "demo": "messaging\/list-message-logs.md", @@ -17273,7 +17377,7 @@ "x-appwrite": { "method": "listTargets", "group": "messages", - "weight": 310, + "weight": 306, "cookies": false, "type": "", "demo": "messaging\/list-targets.md", @@ -17345,7 +17449,7 @@ "x-appwrite": { "method": "listProviders", "group": "providers", - "weight": 280, + "weight": 276, "cookies": false, "type": "", "demo": "messaging\/list-providers.md", @@ -17420,7 +17524,7 @@ "x-appwrite": { "method": "createApnsProvider", "group": "providers", - "weight": 279, + "weight": 275, "cookies": false, "type": "", "demo": "messaging\/create-apns-provider.md", @@ -17605,7 +17709,7 @@ "x-appwrite": { "method": "updateApnsProvider", "group": "providers", - "weight": 292, + "weight": 288, "cookies": false, "type": "", "demo": "messaging\/update-apns-provider.md", @@ -17786,7 +17890,7 @@ "x-appwrite": { "method": "createFcmProvider", "group": "providers", - "weight": 278, + "weight": 274, "cookies": false, "type": "", "demo": "messaging\/create-fcm-provider.md", @@ -17939,7 +18043,7 @@ "x-appwrite": { "method": "updateFcmProvider", "group": "providers", - "weight": 291, + "weight": 287, "cookies": false, "type": "", "demo": "messaging\/update-fcm-provider.md", @@ -18088,7 +18192,7 @@ "x-appwrite": { "method": "createMailgunProvider", "group": "providers", - "weight": 270, + "weight": 266, "cookies": false, "type": "", "demo": "messaging\/create-mailgun-provider.md", @@ -18215,7 +18319,7 @@ "x-appwrite": { "method": "updateMailgunProvider", "group": "providers", - "weight": 283, + "weight": 279, "cookies": false, "type": "", "demo": "messaging\/update-mailgun-provider.md", @@ -18340,7 +18444,7 @@ "x-appwrite": { "method": "createMsg91Provider", "group": "providers", - "weight": 273, + "weight": 269, "cookies": false, "type": "", "demo": "messaging\/create-msg-91-provider.md", @@ -18443,7 +18547,7 @@ "x-appwrite": { "method": "updateMsg91Provider", "group": "providers", - "weight": 286, + "weight": 282, "cookies": false, "type": "", "demo": "messaging\/update-msg-91-provider.md", @@ -18544,7 +18648,7 @@ "x-appwrite": { "method": "createSendgridProvider", "group": "providers", - "weight": 271, + "weight": 267, "cookies": false, "type": "", "demo": "messaging\/create-sendgrid-provider.md", @@ -18659,7 +18763,7 @@ "x-appwrite": { "method": "updateSendgridProvider", "group": "providers", - "weight": 284, + "weight": 280, "cookies": false, "type": "", "demo": "messaging\/update-sendgrid-provider.md", @@ -18772,7 +18876,7 @@ "x-appwrite": { "method": "createSmtpProvider", "group": "providers", - "weight": 272, + "weight": 268, "cookies": false, "type": "", "demo": "messaging\/create-smtp-provider.md", @@ -19015,7 +19119,7 @@ "x-appwrite": { "method": "updateSmtpProvider", "group": "providers", - "weight": 285, + "weight": 281, "cookies": false, "type": "", "demo": "messaging\/update-smtp-provider.md", @@ -19251,7 +19355,7 @@ "x-appwrite": { "method": "createTelesignProvider", "group": "providers", - "weight": 274, + "weight": 270, "cookies": false, "type": "", "demo": "messaging\/create-telesign-provider.md", @@ -19354,7 +19458,7 @@ "x-appwrite": { "method": "updateTelesignProvider", "group": "providers", - "weight": 287, + "weight": 283, "cookies": false, "type": "", "demo": "messaging\/update-telesign-provider.md", @@ -19455,7 +19559,7 @@ "x-appwrite": { "method": "createTextmagicProvider", "group": "providers", - "weight": 275, + "weight": 271, "cookies": false, "type": "", "demo": "messaging\/create-textmagic-provider.md", @@ -19558,7 +19662,7 @@ "x-appwrite": { "method": "updateTextmagicProvider", "group": "providers", - "weight": 288, + "weight": 284, "cookies": false, "type": "", "demo": "messaging\/update-textmagic-provider.md", @@ -19659,7 +19763,7 @@ "x-appwrite": { "method": "createTwilioProvider", "group": "providers", - "weight": 276, + "weight": 272, "cookies": false, "type": "", "demo": "messaging\/create-twilio-provider.md", @@ -19762,7 +19866,7 @@ "x-appwrite": { "method": "updateTwilioProvider", "group": "providers", - "weight": 289, + "weight": 285, "cookies": false, "type": "", "demo": "messaging\/update-twilio-provider.md", @@ -19863,7 +19967,7 @@ "x-appwrite": { "method": "createVonageProvider", "group": "providers", - "weight": 277, + "weight": 273, "cookies": false, "type": "", "demo": "messaging\/create-vonage-provider.md", @@ -19966,7 +20070,7 @@ "x-appwrite": { "method": "updateVonageProvider", "group": "providers", - "weight": 290, + "weight": 286, "cookies": false, "type": "", "demo": "messaging\/update-vonage-provider.md", @@ -20065,7 +20169,7 @@ "x-appwrite": { "method": "getProvider", "group": "providers", - "weight": 282, + "weight": 278, "cookies": false, "type": "", "demo": "messaging\/get-provider.md", @@ -20120,7 +20224,7 @@ "x-appwrite": { "method": "deleteProvider", "group": "providers", - "weight": 293, + "weight": 289, "cookies": false, "type": "", "demo": "messaging\/delete-provider.md", @@ -20180,7 +20284,7 @@ "x-appwrite": { "method": "listProviderLogs", "group": "providers", - "weight": 281, + "weight": 277, "cookies": false, "type": "", "demo": "messaging\/list-provider-logs.md", @@ -20252,7 +20356,7 @@ "x-appwrite": { "method": "listSubscriberLogs", "group": "subscribers", - "weight": 302, + "weight": 298, "cookies": false, "type": "", "demo": "messaging\/list-subscriber-logs.md", @@ -20324,7 +20428,7 @@ "x-appwrite": { "method": "listTopics", "group": "topics", - "weight": 295, + "weight": 291, "cookies": false, "type": "", "demo": "messaging\/list-topics.md", @@ -20397,7 +20501,7 @@ "x-appwrite": { "method": "createTopic", "group": "topics", - "weight": 294, + "weight": 290, "cookies": false, "type": "", "demo": "messaging\/create-topic.md", @@ -20485,7 +20589,7 @@ "x-appwrite": { "method": "getTopic", "group": "topics", - "weight": 297, + "weight": 293, "cookies": false, "type": "", "demo": "messaging\/get-topic.md", @@ -20545,7 +20649,7 @@ "x-appwrite": { "method": "updateTopic", "group": "topics", - "weight": 298, + "weight": 294, "cookies": false, "type": "", "demo": "messaging\/update-topic.md", @@ -20624,7 +20728,7 @@ "x-appwrite": { "method": "deleteTopic", "group": "topics", - "weight": 299, + "weight": 295, "cookies": false, "type": "", "demo": "messaging\/delete-topic.md", @@ -20684,7 +20788,7 @@ "x-appwrite": { "method": "listTopicLogs", "group": "topics", - "weight": 296, + "weight": 292, "cookies": false, "type": "", "demo": "messaging\/list-topic-logs.md", @@ -20756,7 +20860,7 @@ "x-appwrite": { "method": "listSubscribers", "group": "subscribers", - "weight": 301, + "weight": 297, "cookies": false, "type": "", "demo": "messaging\/list-subscribers.md", @@ -20837,7 +20941,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -20924,7 +21028,7 @@ "x-appwrite": { "method": "getSubscriber", "group": "subscribers", - "weight": 303, + "weight": 299, "cookies": false, "type": "", "demo": "messaging\/get-subscriber.md", @@ -20987,7 +21091,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -21057,7 +21161,7 @@ "x-appwrite": { "method": "list", "group": null, - "weight": 262, + "weight": 258, "cookies": false, "type": "", "demo": "migrations\/list.md", @@ -21130,7 +21234,7 @@ "x-appwrite": { "method": "createAppwriteMigration", "group": null, - "weight": 257, + "weight": 253, "cookies": false, "type": "", "demo": "migrations\/create-appwrite-migration.md", @@ -21222,7 +21326,7 @@ "x-appwrite": { "method": "getAppwriteReport", "group": null, - "weight": 264, + "weight": 260, "cookies": false, "type": "", "demo": "migrations\/get-appwrite-report.md", @@ -21310,7 +21414,7 @@ "x-appwrite": { "method": "createCsvMigration", "group": null, - "weight": 261, + "weight": 257, "cookies": false, "type": "", "demo": "migrations\/create-csv-migration.md", @@ -21400,7 +21504,7 @@ "x-appwrite": { "method": "createFirebaseMigration", "group": null, - "weight": 258, + "weight": 254, "cookies": false, "type": "", "demo": "migrations\/create-firebase-migration.md", @@ -21478,7 +21582,7 @@ "x-appwrite": { "method": "getFirebaseReport", "group": null, - "weight": 265, + "weight": 261, "cookies": false, "type": "", "demo": "migrations\/get-firebase-report.md", @@ -21549,7 +21653,7 @@ "x-appwrite": { "method": "createNHostMigration", "group": null, - "weight": 260, + "weight": 256, "cookies": false, "type": "", "demo": "migrations\/create-n-host-migration.md", @@ -21668,7 +21772,7 @@ "x-appwrite": { "method": "getNHostReport", "group": null, - "weight": 267, + "weight": 263, "cookies": false, "type": "", "demo": "migrations\/get-n-host-report.md", @@ -21788,7 +21892,7 @@ "x-appwrite": { "method": "createSupabaseMigration", "group": null, - "weight": 259, + "weight": 255, "cookies": false, "type": "", "demo": "migrations\/create-supabase-migration.md", @@ -21900,7 +22004,7 @@ "x-appwrite": { "method": "getSupabaseReport", "group": null, - "weight": 266, + "weight": 262, "cookies": false, "type": "", "demo": "migrations\/get-supabase-report.md", @@ -22011,7 +22115,7 @@ "x-appwrite": { "method": "get", "group": null, - "weight": 263, + "weight": 259, "cookies": false, "type": "", "demo": "migrations\/get.md", @@ -22069,7 +22173,7 @@ "x-appwrite": { "method": "retry", "group": null, - "weight": 268, + "weight": 264, "cookies": false, "type": "", "demo": "migrations\/retry.md", @@ -22122,7 +22226,7 @@ "x-appwrite": { "method": "delete", "group": null, - "weight": 269, + "weight": 265, "cookies": false, "type": "", "demo": "migrations\/delete.md", @@ -22590,7 +22694,7 @@ "x-appwrite": { "method": "list", "group": "projects", - "weight": 440, + "weight": 436, "cookies": false, "type": "", "demo": "projects\/list.md", @@ -24233,7 +24337,7 @@ "x-appwrite": { "method": "listDevKeys", "group": "devKeys", - "weight": 438, + "weight": 434, "cookies": false, "type": "", "demo": "projects\/list-dev-keys.md", @@ -24303,7 +24407,7 @@ "x-appwrite": { "method": "createDevKey", "group": "devKeys", - "weight": 435, + "weight": 431, "cookies": false, "type": "", "demo": "projects\/create-dev-key.md", @@ -24386,7 +24490,7 @@ "x-appwrite": { "method": "getDevKey", "group": "devKeys", - "weight": 437, + "weight": 433, "cookies": false, "type": "", "demo": "projects\/get-dev-key.md", @@ -24452,7 +24556,7 @@ "x-appwrite": { "method": "updateDevKey", "group": "devKeys", - "weight": 436, + "weight": 432, "cookies": false, "type": "", "demo": "projects\/update-dev-key.md", @@ -24538,7 +24642,7 @@ "x-appwrite": { "method": "deleteDevKey", "group": "devKeys", - "weight": 439, + "weight": 435, "cookies": false, "type": "", "demo": "projects\/delete-dev-key.md", @@ -25305,7 +25409,7 @@ "properties": { "type": { "type": "string", - "description": "Platform type.", + "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.", "default": null, "x-example": "web", "enum": [ @@ -28351,11 +28455,11 @@ "x-appwrite": { "method": "listRules", "group": null, - "weight": 240, + "weight": 502, "cookies": false, "type": "", "demo": "proxy\/list-rules.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/list-rules.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterGet a list of all the proxy rules. You can use the query params to filter your results.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28424,7 +28528,7 @@ "x-appwrite": { "method": "createAPIRule", "group": null, - "weight": 501, + "weight": 497, "cookies": false, "type": "", "demo": "proxy\/create-api-rule.md", @@ -28494,7 +28598,7 @@ "x-appwrite": { "method": "createFunctionRule", "group": null, - "weight": 503, + "weight": 499, "cookies": false, "type": "", "demo": "proxy\/create-function-rule.md", @@ -28577,7 +28681,7 @@ "x-appwrite": { "method": "createRedirectRule", "group": null, - "weight": 504, + "weight": 500, "cookies": false, "type": "", "demo": "proxy\/create-redirect-rule.md", @@ -28697,7 +28801,7 @@ "x-appwrite": { "method": "createSiteRule", "group": null, - "weight": 502, + "weight": 498, "cookies": false, "type": "", "demo": "proxy\/create-site-rule.md", @@ -28778,11 +28882,11 @@ "x-appwrite": { "method": "getRule", "group": null, - "weight": 241, + "weight": 501, "cookies": false, "type": "", "demo": "proxy\/get-rule.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/get-rule.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterGet a proxy rule by its unique ID.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28831,11 +28935,11 @@ "x-appwrite": { "method": "deleteRule", "group": null, - "weight": 242, + "weight": 503, "cookies": false, "type": "", "demo": "proxy\/delete-rule.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/delete-rule.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterDelete a proxy rule by its unique ID.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28891,11 +28995,11 @@ "x-appwrite": { "method": "updateRuleVerification", "group": null, - "weight": 243, + "weight": 504, "cookies": false, "type": "", "demo": "proxy\/update-rule-verification.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/proxy\/update-rule-verification.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterRetry getting verification process of a proxy rule. This endpoint triggers domain verification by checking DNS records (CNAME) against the configured target domain. If verification is successful, a TLS certificate will be automatically provisioned for the domain.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -28949,7 +29053,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 473, + "weight": 469, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -29021,7 +29125,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 471, + "weight": 467, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -29288,7 +29392,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 476, + "weight": 472, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -29337,7 +29441,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 499, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -29387,7 +29491,7 @@ "x-appwrite": { "method": "listTemplates", "group": "templates", - "weight": 495, + "weight": 491, "cookies": false, "type": "", "demo": "sites\/list-templates.md", @@ -29481,7 +29585,7 @@ "x-appwrite": { "method": "getTemplate", "group": "templates", - "weight": 496, + "weight": 492, "cookies": false, "type": "", "demo": "sites\/get-template.md", @@ -29539,7 +29643,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 497, + "weight": 493, "cookies": false, "type": "", "demo": "sites\/list-usage.md", @@ -29609,7 +29713,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 472, + "weight": 468, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -29668,7 +29772,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 474, + "weight": 470, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -29930,7 +30034,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 475, + "weight": 471, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -29991,7 +30095,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 482, + "weight": 478, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -30068,7 +30172,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 481, + "weight": 477, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -30148,7 +30252,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 477, + "weight": 473, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -30248,7 +30352,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 485, + "weight": 481, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -30314,7 +30418,7 @@ "tags": [ "sites" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -30327,11 +30431,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 478, + "weight": 474, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -30433,7 +30537,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 479, + "weight": 475, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -30530,7 +30634,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 480, + "weight": 476, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -30592,7 +30696,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 483, + "weight": 479, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -30659,7 +30763,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 484, + "weight": 480, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -30744,7 +30848,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 486, + "weight": 482, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -30811,7 +30915,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 488, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -30882,7 +30986,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 487, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -30946,7 +31050,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 489, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -31013,7 +31117,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 498, + "weight": 494, "cookies": false, "type": "", "demo": "sites\/get-usage.md", @@ -31091,7 +31195,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 492, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -31150,7 +31254,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 490, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -31240,7 +31344,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 491, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -31307,7 +31411,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 493, + "weight": 489, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -31399,7 +31503,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 494, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -32833,7 +32937,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 380, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -32905,7 +33009,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 376, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -32987,7 +33091,7 @@ "x-appwrite": { "method": "listUsage", "group": null, - "weight": 382, + "weight": 378, "cookies": false, "type": "", "demo": "tablesdb\/list-usage.md", @@ -33082,7 +33186,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 377, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -33141,7 +33245,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 378, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -33219,7 +33323,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 379, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -33278,7 +33382,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 387, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -33348,7 +33452,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Table", @@ -33361,7 +33465,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 383, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -33469,7 +33573,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 384, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -33539,7 +33643,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 385, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -33643,7 +33747,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 386, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -33713,7 +33817,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 392, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -33797,7 +33901,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 393, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -33834,7 +33938,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -33906,7 +34010,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 394, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -33943,7 +34047,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -34017,7 +34121,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 395, + "weight": 391, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -34126,7 +34230,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 396, + "weight": 392, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -34237,7 +34341,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 397, + "weight": 393, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -34346,7 +34450,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 398, + "weight": 394, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -34457,7 +34561,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 399, + "weight": 395, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -34576,7 +34680,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 400, + "weight": 396, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -34697,7 +34801,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 401, + "weight": 397, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -34818,7 +34922,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 402, + "weight": 398, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -34941,7 +35045,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 403, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -35062,7 +35166,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 404, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -35185,7 +35289,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 405, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -35294,7 +35398,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 406, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -35392,7 +35496,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric line attribute.", + "description": "Create a geometric line column.", "responses": { "202": { "description": "ColumnLine", @@ -35405,7 +35509,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 407, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -35442,7 +35546,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35470,7 +35574,7 @@ "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true } }, @@ -35496,7 +35600,7 @@ "tags": [ "tablesDB" ], - "description": "Update a line column. Changing the `default` value will not update already existing documents.", + "description": "Update a line column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnLine", @@ -35509,7 +35613,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 408, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -35546,7 +35650,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35575,7 +35679,7 @@ "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true }, "newKey": { @@ -35606,7 +35710,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric point attribute.", + "description": "Create a geometric point column.", "responses": { "202": { "description": "ColumnPoint", @@ -35619,7 +35723,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 409, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -35656,7 +35760,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35684,7 +35788,7 @@ "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true } }, @@ -35710,7 +35814,7 @@ "tags": [ "tablesDB" ], - "description": "Update a point column. Changing the `default` value will not update already existing documents.", + "description": "Update a point column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPoint", @@ -35723,7 +35827,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 410, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -35760,7 +35864,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35789,7 +35893,7 @@ "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true }, "newKey": { @@ -35820,7 +35924,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric polygon attribute.", + "description": "Create a geometric polygon column.", "responses": { "202": { "description": "ColumnPolygon", @@ -35833,7 +35937,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 411, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -35870,7 +35974,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -35898,7 +36002,7 @@ "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true } }, @@ -35924,7 +36028,7 @@ "tags": [ "tablesDB" ], - "description": "Update a polygon column. Changing the `default` value will not update already existing documents.", + "description": "Update a polygon column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPolygon", @@ -35937,7 +36041,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 412, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -35974,7 +36078,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -36003,7 +36107,7 @@ "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true }, "newKey": { @@ -36047,7 +36151,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 413, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -36183,7 +36287,7 @@ "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 415, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -36220,7 +36324,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -36305,7 +36409,7 @@ "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 416, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -36342,7 +36446,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -36422,7 +36526,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 417, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -36531,7 +36635,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 418, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -36671,7 +36775,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 390, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -36743,7 +36847,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 391, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -36822,7 +36926,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 414, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -36927,7 +37031,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 422, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -36964,7 +37068,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37009,7 +37113,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 419, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -37046,7 +37150,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37140,7 +37244,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 420, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -37177,7 +37281,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37212,7 +37316,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 421, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -37249,7 +37353,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37289,7 +37393,7 @@ "x-appwrite": { "method": "listTableLogs", "group": "tables", - "weight": 388, + "weight": 384, "cookies": false, "type": "", "demo": "tablesdb\/list-table-logs.md", @@ -37370,7 +37474,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -37409,7 +37513,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "type": "string", "x-example": "", @@ -37441,7 +37545,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -37454,7 +37558,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -37498,7 +37602,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" }, { @@ -37524,7 +37628,7 @@ "model": "#\/definitions\/rowList" } ], - "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-rows.md" } ], @@ -37550,7 +37654,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "type": "string", "x-example": "", @@ -37585,7 +37689,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "default": [], "x-example": null, "items": { @@ -37609,7 +37713,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "responses": { "201": { "description": "Rows List", @@ -37622,7 +37726,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 428, + "weight": 424, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -37663,7 +37767,7 @@ "model": "#\/definitions\/rowList" } ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "demo": "tablesdb\/upsert-rows.md" } ], @@ -37742,7 +37846,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 426, + "weight": 422, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -37837,7 +37941,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 430, + "weight": 426, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -37875,7 +37979,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -37926,7 +38030,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -37965,7 +38069,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -38005,7 +38109,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -38018,7 +38122,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -38061,7 +38165,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -38152,7 +38256,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -38251,7 +38355,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -38290,7 +38394,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -38331,7 +38435,7 @@ "x-appwrite": { "method": "listRowLogs", "group": "logs", - "weight": 432, + "weight": 428, "cookies": false, "type": "", "demo": "tablesdb\/list-row-logs.md", @@ -38422,7 +38526,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -38533,7 +38637,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -38642,7 +38746,7 @@ "x-appwrite": { "method": "getTableUsage", "group": null, - "weight": 389, + "weight": 385, "cookies": false, "type": "", "demo": "tablesdb\/get-table-usage.md", @@ -38731,7 +38835,7 @@ "x-appwrite": { "method": "getUsage", "group": null, - "weight": 381, + "weight": 377, "cookies": false, "type": "", "demo": "tablesdb\/get-usage.md", @@ -46159,7 +46263,11 @@ "type": { "type": "string", "description": "Database type.", - "x-example": "legacy" + "x-example": "legacy", + "enum": [ + "legacy", + "tablesdb" + ] } }, "required": [ @@ -46398,7 +46506,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46486,7 +46602,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46576,7 +46700,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46666,7 +46798,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46739,7 +46879,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46819,7 +46967,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46909,7 +47065,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -46989,7 +47153,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47069,7 +47241,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47149,7 +47329,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47257,7 +47445,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47336,7 +47532,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47427,7 +47631,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -47744,7 +47956,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -47832,7 +48052,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -47922,7 +48150,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48012,7 +48248,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48085,7 +48329,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48165,7 +48417,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48255,7 +48515,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48335,7 +48603,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48415,7 +48691,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48495,7 +48779,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48603,7 +48895,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48682,7 +48982,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48773,7 +49081,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -48903,7 +49219,14 @@ "status": { "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ] }, "error": { "type": "string", @@ -52139,7 +52462,14 @@ "status": { "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", and \"failed\".", - "x-example": "ready" + "x-example": "ready", + "enum": [ + "waiting", + "processing", + "building", + "ready", + "failed" + ] }, "buildLogs": { "type": "string", @@ -52167,11 +52497,6 @@ "description": "The url of the vcs provider repository", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function" }, - "providerBranch": { - "type": "string", - "description": "The branch of the vcs repository", - "x-example": "0.7.x" - }, "providerCommitHash": { "type": "string", "description": "The commit hash of the vcs commit", @@ -52197,6 +52522,11 @@ "description": "The url of the vcs commit", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb" }, + "providerBranch": { + "type": "string", + "description": "The branch of the vcs repository", + "x-example": "0.7.x" + }, "providerBranchUrl": { "type": "string", "description": "The branch of the vcs repository", @@ -52224,12 +52554,12 @@ "providerRepositoryName", "providerRepositoryOwner", "providerRepositoryUrl", - "providerBranch", "providerCommitHash", "providerCommitAuthorUrl", "providerCommitAuthor", "providerCommitMessage", "providerCommitUrl", + "providerBranch", "providerBranchUrl" ], "example": { @@ -52253,12 +52583,12 @@ "providerRepositoryName": "database", "providerRepositoryOwner": "utopia", "providerRepositoryUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function", - "providerBranch": "0.7.x", "providerCommitHash": "7c3f25d", "providerCommitAuthorUrl": "https:\/\/github.com\/vermakhushboo", "providerCommitAuthor": "Khushboo Verma", "providerCommitMessage": "Update index.js", "providerCommitUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb", + "providerBranch": "0.7.x", "providerBranchUrl": "https:\/\/github.com\/vermakhushboo\/appwrite\/tree\/0.7.x" } }, @@ -52304,12 +52634,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -52323,7 +52664,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "type": "object", "$ref": "#\/definitions\/headers" @@ -53267,8 +53608,25 @@ }, "type": { "type": "string", - "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, ios, android, and unity.", - "x-example": "web" + "description": "Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.", + "x-example": "web", + "enum": [ + "web", + "flutter-web", + "flutter-ios", + "flutter-android", + "flutter-linux", + "flutter-macos", + "flutter-windows", + "apple-ios", + "apple-macos", + "apple-watchos", + "apple-tvos", + "android", + "unity", + "react-native-ios", + "react-native-android" + ] }, "key": { "type": "string", @@ -53283,7 +53641,7 @@ "hostname": { "type": "string", "description": "Web app hostname. Empty string for other platforms.", - "x-example": true + "x-example": "app.example.com" }, "httpUser": { "type": "string", @@ -53316,7 +53674,7 @@ "type": "web", "key": "com.company.appname", "store": "", - "hostname": true, + "hostname": "app.example.com", "httpUser": "username", "httpPass": "password" } @@ -53569,8 +53927,13 @@ }, "status": { "type": "string", - "description": "Antivirus status. Possible values can are: `disabled`, `offline`, `online`", - "x-example": "online" + "description": "Antivirus status. Possible values are: `disabled`, `offline`, `online`", + "x-example": "online", + "enum": [ + "disabled", + "offline", + "online" + ] } }, "required": [ @@ -53617,8 +53980,13 @@ }, "status": { "type": "string", - "description": "Service status. Possible values can are: `pass`, `fail`", - "x-example": "pass" + "description": "Service status. Possible values are: `pass`, `fail`", + "x-example": "pass", + "enum": [ + "pass", + "fail" + ], + "x-enum-name": "HealthCheckStatus" } }, "required": [ @@ -55874,7 +56242,11 @@ "deploymentResourceType": { "type": "string", "description": "Type of deployment. Possible values are \"function\", \"site\". Used if rule's type is \"deployment\".", - "x-example": "function" + "x-example": "function", + "enum": [ + "function", + "site" + ] }, "deploymentResourceId": { "type": "string", @@ -55884,12 +56256,18 @@ "deploymentVcsProviderBranch": { "type": "string", "description": "Name of Git branch that updates rule. Used if type is \"deployment\"", - "x-example": "function" + "x-example": "main" }, "status": { "type": "string", "description": "Domain verification status. Possible values are \"created\", \"verifying\", \"verified\" and \"unverified\"", - "x-example": "verified" + "x-example": "verified", + "enum": [ + "created", + "verifying", + "verified", + "unverified" + ] }, "logs": { "type": "string", @@ -55931,7 +56309,7 @@ "deploymentId": "n3u9feiwmf", "deploymentResourceType": "function", "deploymentResourceId": "n3u9feiwmf", - "deploymentVcsProviderBranch": "function", + "deploymentVcsProviderBranch": "main", "status": "verified", "logs": "HTTP challegne failed.", "renewAt": "datetime" @@ -56440,7 +56818,14 @@ "status": { "type": "string", "description": "Status of delivery.", - "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed." + "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.", + "enum": [ + "draft", + "processing", + "scheduled", + "sent", + "failed" + ] } }, "required": [ diff --git a/app/config/specs/swagger2-latest-server.json b/app/config/specs/swagger2-latest-server.json index 812598f516..05ad0562a5 100644 --- a/app/config/specs/swagger2-latest-server.json +++ b/app/config/specs/swagger2-latest-server.json @@ -3302,10 +3302,10 @@ ] } }, - "\/account\/verification": { + "\/account\/verifications\/email": { "post": { "summary": "Create email verification", - "operationId": "accountCreateVerification", + "operationId": "accountCreateEmailVerification", "consumes": [ "application\/json" ], @@ -3326,12 +3326,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "createVerification", + "method": "createEmailVerification", "group": "verification", "weight": 41, "cookies": false, "type": "", - "demo": "account\/create-verification.md", + "demo": "account\/create-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3342,6 +3342,58 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "createEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-email-verification.md" + }, + { + "name": "createVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "url" + ], + "required": [ + "url" + ], + "responses": [ + { + "code": 201, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](https:\/\/appwrite.io\/docs\/references\/cloud\/client-web\/account#updateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n", + "demo": "account\/create-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.createEmailVerification" + } + } + ], "auth": { "Project": [], "Session": [] @@ -3377,7 +3429,7 @@ }, "put": { "summary": "Update email verification (confirmation)", - "operationId": "accountUpdateVerification", + "operationId": "accountUpdateEmailVerification", "consumes": [ "application\/json" ], @@ -3398,12 +3450,12 @@ }, "deprecated": false, "x-appwrite": { - "method": "updateVerification", + "method": "updateEmailVerification", "group": "verification", "weight": 42, "cookies": false, "type": "", - "demo": "account\/update-verification.md", + "demo": "account\/update-email-verification.md", "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email-verification.md", "rate-limit": 10, "rate-time": 3600, @@ -3414,6 +3466,62 @@ "server" ], "packaging": false, + "methods": [ + { + "name": "updateEmailVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-email-verification.md" + }, + { + "name": "updateVerification", + "namespace": "account", + "desc": "", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "userId", + "secret" + ], + "required": [ + "userId", + "secret" + ], + "responses": [ + { + "code": 200, + "model": "#\/definitions\/token" + } + ], + "description": "Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.", + "demo": "account\/update-verification.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "account.updateEmailVerification" + } + } + ], "auth": { "Project": [], "Session": [] @@ -3455,7 +3563,7 @@ ] } }, - "\/account\/verification\/phone": { + "\/account\/verifications\/phone": { "post": { "summary": "Create phone verification", "operationId": "accountCreatePhoneVerification", @@ -4693,7 +4801,7 @@ "x-appwrite": { "method": "list", "group": "databases", - "weight": 320, + "weight": 316, "cookies": false, "type": "", "demo": "databases\/list.md", @@ -4798,7 +4906,7 @@ "x-appwrite": { "method": "create", "group": "databases", - "weight": 316, + "weight": 312, "cookies": false, "type": "", "demo": "databases\/create.md", @@ -4917,7 +5025,7 @@ "x-appwrite": { "method": "get", "group": "databases", - "weight": 317, + "weight": 313, "cookies": false, "type": "", "demo": "databases\/get.md", @@ -5010,7 +5118,7 @@ "x-appwrite": { "method": "update", "group": "databases", - "weight": 318, + "weight": 314, "cookies": false, "type": "", "demo": "databases\/update.md", @@ -5125,7 +5233,7 @@ "x-appwrite": { "method": "delete", "group": "databases", - "weight": 319, + "weight": 315, "cookies": false, "type": "", "demo": "databases\/delete.md", @@ -5217,7 +5325,7 @@ "x-appwrite": { "method": "listCollections", "group": "collections", - "weight": 328, + "weight": 324, "cookies": false, "type": "", "demo": "databases\/list-collections.md", @@ -5302,7 +5410,7 @@ "x-appwrite": { "method": "createCollection", "group": "collections", - "weight": 324, + "weight": 320, "cookies": false, "type": "", "demo": "databases\/create-collection.md", @@ -5412,7 +5520,7 @@ "x-appwrite": { "method": "getCollection", "group": "collections", - "weight": 325, + "weight": 321, "cookies": false, "type": "", "demo": "databases\/get-collection.md", @@ -5484,7 +5592,7 @@ "x-appwrite": { "method": "updateCollection", "group": "collections", - "weight": 326, + "weight": 322, "cookies": false, "type": "", "demo": "databases\/update-collection.md", @@ -5590,7 +5698,7 @@ "x-appwrite": { "method": "deleteCollection", "group": "collections", - "weight": 327, + "weight": 323, "cookies": false, "type": "", "demo": "databases\/delete-collection.md", @@ -5662,7 +5770,7 @@ "x-appwrite": { "method": "listAttributes", "group": "attributes", - "weight": 345, + "weight": 341, "cookies": false, "type": "", "demo": "databases\/list-attributes.md", @@ -5748,7 +5856,7 @@ "x-appwrite": { "method": "createBooleanAttribute", "group": "attributes", - "weight": 346, + "weight": 342, "cookies": false, "type": "", "demo": "databases\/create-boolean-attribute.md", @@ -5859,7 +5967,7 @@ "x-appwrite": { "method": "updateBooleanAttribute", "group": "attributes", - "weight": 347, + "weight": 343, "cookies": false, "type": "", "demo": "databases\/update-boolean-attribute.md", @@ -5972,7 +6080,7 @@ "x-appwrite": { "method": "createDatetimeAttribute", "group": "attributes", - "weight": 348, + "weight": 344, "cookies": false, "type": "", "demo": "databases\/create-datetime-attribute.md", @@ -6083,7 +6191,7 @@ "x-appwrite": { "method": "updateDatetimeAttribute", "group": "attributes", - "weight": 349, + "weight": 345, "cookies": false, "type": "", "demo": "databases\/update-datetime-attribute.md", @@ -6196,7 +6304,7 @@ "x-appwrite": { "method": "createEmailAttribute", "group": "attributes", - "weight": 350, + "weight": 346, "cookies": false, "type": "", "demo": "databases\/create-email-attribute.md", @@ -6307,7 +6415,7 @@ "x-appwrite": { "method": "updateEmailAttribute", "group": "attributes", - "weight": 351, + "weight": 347, "cookies": false, "type": "", "demo": "databases\/update-email-attribute.md", @@ -6420,7 +6528,7 @@ "x-appwrite": { "method": "createEnumAttribute", "group": "attributes", - "weight": 352, + "weight": 348, "cookies": false, "type": "", "demo": "databases\/create-enum-attribute.md", @@ -6541,7 +6649,7 @@ "x-appwrite": { "method": "updateEnumAttribute", "group": "attributes", - "weight": 353, + "weight": 349, "cookies": false, "type": "", "demo": "databases\/update-enum-attribute.md", @@ -6664,7 +6772,7 @@ "x-appwrite": { "method": "createFloatAttribute", "group": "attributes", - "weight": 354, + "weight": 350, "cookies": false, "type": "", "demo": "databases\/create-float-attribute.md", @@ -6787,7 +6895,7 @@ "x-appwrite": { "method": "updateFloatAttribute", "group": "attributes", - "weight": 355, + "weight": 351, "cookies": false, "type": "", "demo": "databases\/update-float-attribute.md", @@ -6912,7 +7020,7 @@ "x-appwrite": { "method": "createIntegerAttribute", "group": "attributes", - "weight": 356, + "weight": 352, "cookies": false, "type": "", "demo": "databases\/create-integer-attribute.md", @@ -7035,7 +7143,7 @@ "x-appwrite": { "method": "updateIntegerAttribute", "group": "attributes", - "weight": 357, + "weight": 353, "cookies": false, "type": "", "demo": "databases\/update-integer-attribute.md", @@ -7160,7 +7268,7 @@ "x-appwrite": { "method": "createIpAttribute", "group": "attributes", - "weight": 358, + "weight": 354, "cookies": false, "type": "", "demo": "databases\/create-ip-attribute.md", @@ -7271,7 +7379,7 @@ "x-appwrite": { "method": "updateIpAttribute", "group": "attributes", - "weight": 359, + "weight": 355, "cookies": false, "type": "", "demo": "databases\/update-ip-attribute.md", @@ -7384,7 +7492,7 @@ "x-appwrite": { "method": "createLineAttribute", "group": "attributes", - "weight": 360, + "weight": 356, "cookies": false, "type": "", "demo": "databases\/create-line-attribute.md", @@ -7451,7 +7559,7 @@ "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true } }, @@ -7490,7 +7598,7 @@ "x-appwrite": { "method": "updateLineAttribute", "group": "attributes", - "weight": 361, + "weight": 357, "cookies": false, "type": "", "demo": "databases\/update-line-attribute.md", @@ -7558,7 +7666,7 @@ "type": "array", "description": "Default value for attribute when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true }, "newKey": { @@ -7589,7 +7697,7 @@ "tags": [ "databases" ], - "description": "Create a geometric 2d point attribute.", + "description": "Create a geometric point attribute.", "responses": { "202": { "description": "AttributePoint", @@ -7602,7 +7710,7 @@ "x-appwrite": { "method": "createPointAttribute", "group": "attributes", - "weight": 362, + "weight": 358, "cookies": false, "type": "", "demo": "databases\/create-point-attribute.md", @@ -7669,7 +7777,7 @@ "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true } }, @@ -7708,7 +7816,7 @@ "x-appwrite": { "method": "updatePointAttribute", "group": "attributes", - "weight": 363, + "weight": 359, "cookies": false, "type": "", "demo": "databases\/update-point-attribute.md", @@ -7776,7 +7884,7 @@ "type": "array", "description": "Default value for attribute when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true }, "newKey": { @@ -7820,7 +7928,7 @@ "x-appwrite": { "method": "createPolygonAttribute", "group": "attributes", - "weight": 364, + "weight": 360, "cookies": false, "type": "", "demo": "databases\/create-polygon-attribute.md", @@ -7887,7 +7995,7 @@ "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true } }, @@ -7926,7 +8034,7 @@ "x-appwrite": { "method": "updatePolygonAttribute", "group": "attributes", - "weight": 365, + "weight": 361, "cookies": false, "type": "", "demo": "databases\/update-polygon-attribute.md", @@ -7994,7 +8102,7 @@ "type": "array", "description": "Default value for attribute when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when attribute is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true }, "newKey": { @@ -8038,7 +8146,7 @@ "x-appwrite": { "method": "createRelationshipAttribute", "group": "attributes", - "weight": 366, + "weight": 362, "cookies": false, "type": "", "demo": "databases\/create-relationship-attribute.md", @@ -8176,7 +8284,7 @@ "x-appwrite": { "method": "createStringAttribute", "group": "attributes", - "weight": 368, + "weight": 364, "cookies": false, "type": "", "demo": "databases\/create-string-attribute.md", @@ -8300,7 +8408,7 @@ "x-appwrite": { "method": "updateStringAttribute", "group": "attributes", - "weight": 369, + "weight": 365, "cookies": false, "type": "", "demo": "databases\/update-string-attribute.md", @@ -8419,7 +8527,7 @@ "x-appwrite": { "method": "createUrlAttribute", "group": "attributes", - "weight": 370, + "weight": 366, "cookies": false, "type": "", "demo": "databases\/create-url-attribute.md", @@ -8530,7 +8638,7 @@ "x-appwrite": { "method": "updateUrlAttribute", "group": "attributes", - "weight": 371, + "weight": 367, "cookies": false, "type": "", "demo": "databases\/update-url-attribute.md", @@ -8672,7 +8780,7 @@ "x-appwrite": { "method": "getAttribute", "group": "attributes", - "weight": 343, + "weight": 339, "cookies": false, "type": "", "demo": "databases\/get-attribute.md", @@ -8746,7 +8854,7 @@ "x-appwrite": { "method": "deleteAttribute", "group": "attributes", - "weight": 344, + "weight": 340, "cookies": false, "type": "", "demo": "databases\/delete-attribute.md", @@ -8827,7 +8935,7 @@ "x-appwrite": { "method": "updateRelationshipAttribute", "group": "attributes", - "weight": 367, + "weight": 363, "cookies": false, "type": "", "demo": "databases\/update-relationship-attribute.md", @@ -8934,7 +9042,7 @@ "x-appwrite": { "method": "listDocuments", "group": "documents", - "weight": 339, + "weight": 335, "cookies": false, "type": "", "demo": "databases\/list-documents.md", @@ -9021,7 +9129,7 @@ "x-appwrite": { "method": "createDocument", "group": "documents", - "weight": 331, + "weight": 327, "cookies": false, "type": "", "demo": "databases\/create-document.md", @@ -9202,7 +9310,7 @@ "x-appwrite": { "method": "upsertDocuments", "group": "documents", - "weight": 336, + "weight": 332, "cookies": false, "type": "", "demo": "databases\/upsert-documents.md", @@ -9329,7 +9437,7 @@ "x-appwrite": { "method": "updateDocuments", "group": "documents", - "weight": 334, + "weight": 330, "cookies": false, "type": "", "demo": "databases\/update-documents.md", @@ -9426,7 +9534,7 @@ "x-appwrite": { "method": "deleteDocuments", "group": "documents", - "weight": 338, + "weight": 334, "cookies": false, "type": "", "demo": "databases\/delete-documents.md", @@ -9517,7 +9625,7 @@ "x-appwrite": { "method": "getDocument", "group": "documents", - "weight": 332, + "weight": 328, "cookies": false, "type": "", "demo": "databases\/get-document.md", @@ -9612,7 +9720,7 @@ "x-appwrite": { "method": "upsertDocument", "group": "documents", - "weight": 335, + "weight": 331, "cookies": false, "type": "", "demo": "databases\/upsert-document.md", @@ -9758,7 +9866,7 @@ "x-appwrite": { "method": "updateDocument", "group": "documents", - "weight": 333, + "weight": 329, "cookies": false, "type": "", "demo": "databases\/update-document.md", @@ -9860,7 +9968,7 @@ "x-appwrite": { "method": "deleteDocument", "group": "documents", - "weight": 337, + "weight": 333, "cookies": false, "type": "", "demo": "databases\/delete-document.md", @@ -9945,7 +10053,7 @@ "x-appwrite": { "method": "decrementDocumentAttribute", "group": "documents", - "weight": 342, + "weight": 338, "cookies": false, "type": "", "demo": "databases\/decrement-document-attribute.md", @@ -10059,7 +10167,7 @@ "x-appwrite": { "method": "incrementDocumentAttribute", "group": "documents", - "weight": 341, + "weight": 337, "cookies": false, "type": "", "demo": "databases\/increment-document-attribute.md", @@ -10171,7 +10279,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 375, + "weight": 371, "cookies": false, "type": "", "demo": "databases\/list-indexes.md", @@ -10255,7 +10363,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 372, + "weight": 368, "cookies": false, "type": "", "demo": "databases\/create-index.md", @@ -10388,7 +10496,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 373, + "weight": 369, "cookies": false, "type": "", "demo": "databases\/get-index.md", @@ -10462,7 +10570,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 374, + "weight": 370, "cookies": false, "type": "", "demo": "databases\/delete-index.md", @@ -10541,7 +10649,7 @@ "x-appwrite": { "method": "list", "group": "functions", - "weight": 444, + "weight": 440, "cookies": false, "type": "", "demo": "functions\/list.md", @@ -10614,7 +10722,7 @@ "x-appwrite": { "method": "create", "group": "functions", - "weight": 441, + "weight": 437, "cookies": false, "type": "", "demo": "functions\/create.md", @@ -10866,7 +10974,7 @@ "x-appwrite": { "method": "listRuntimes", "group": "runtimes", - "weight": 446, + "weight": 442, "cookies": false, "type": "", "demo": "functions\/list-runtimes.md", @@ -10916,7 +11024,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "runtimes", - "weight": 447, + "weight": 443, "cookies": false, "type": "", "demo": "functions\/list-specifications.md", @@ -10967,7 +11075,7 @@ "x-appwrite": { "method": "get", "group": "functions", - "weight": 442, + "weight": 438, "cookies": false, "type": "", "demo": "functions\/get.md", @@ -11027,7 +11135,7 @@ "x-appwrite": { "method": "update", "group": "functions", - "weight": 443, + "weight": 439, "cookies": false, "type": "", "demo": "functions\/update.md", @@ -11275,7 +11383,7 @@ "x-appwrite": { "method": "delete", "group": "functions", - "weight": 445, + "weight": 441, "cookies": false, "type": "", "demo": "functions\/delete.md", @@ -11337,7 +11445,7 @@ "x-appwrite": { "method": "updateFunctionDeployment", "group": "functions", - "weight": 450, + "weight": 446, "cookies": false, "type": "", "demo": "functions\/update-function-deployment.md", @@ -11415,7 +11523,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 451, + "weight": 447, "cookies": false, "type": "", "demo": "functions\/list-deployments.md", @@ -11496,7 +11604,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 448, + "weight": 444, "cookies": false, "type": "upload", "demo": "functions\/create-deployment.md", @@ -11589,7 +11697,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 456, + "weight": 452, "cookies": false, "type": "", "demo": "functions\/create-duplicate-deployment.md", @@ -11662,7 +11770,7 @@ "tags": [ "functions" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -11675,11 +11783,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 453, + "weight": 449, "cookies": false, "type": "", "demo": "functions\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/functions#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/functions\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -11782,7 +11890,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 454, + "weight": 450, "cookies": false, "type": "", "demo": "functions\/create-vcs-deployment.md", @@ -11879,7 +11987,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 449, + "weight": 445, "cookies": false, "type": "", "demo": "functions\/get-deployment.md", @@ -11942,7 +12050,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 452, + "weight": 448, "cookies": false, "type": "", "demo": "functions\/delete-deployment.md", @@ -12010,7 +12118,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 455, + "weight": 451, "cookies": false, "type": "location", "demo": "functions\/get-deployment-download.md", @@ -12096,7 +12204,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 457, + "weight": 453, "cookies": false, "type": "", "demo": "functions\/update-deployment-status.md", @@ -12164,7 +12272,7 @@ "x-appwrite": { "method": "listExecutions", "group": "executions", - "weight": 460, + "weight": 456, "cookies": false, "type": "", "demo": "functions\/list-executions.md", @@ -12239,7 +12347,7 @@ "x-appwrite": { "method": "createExecution", "group": "executions", - "weight": 458, + "weight": 454, "cookies": false, "type": "", "demo": "functions\/create-execution.md", @@ -12358,7 +12466,7 @@ "x-appwrite": { "method": "getExecution", "group": "executions", - "weight": 459, + "weight": 455, "cookies": false, "type": "", "demo": "functions\/get-execution.md", @@ -12424,7 +12532,7 @@ "x-appwrite": { "method": "deleteExecution", "group": "executions", - "weight": 461, + "weight": 457, "cookies": false, "type": "", "demo": "functions\/delete-execution.md", @@ -12492,7 +12600,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 466, + "weight": 462, "cookies": false, "type": "", "demo": "functions\/list-variables.md", @@ -12552,7 +12660,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 464, + "weight": 460, "cookies": false, "type": "", "demo": "functions\/create-variable.md", @@ -12643,7 +12751,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 465, + "weight": 461, "cookies": false, "type": "", "demo": "functions\/get-variable.md", @@ -12711,7 +12819,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 467, + "weight": 463, "cookies": false, "type": "", "demo": "functions\/update-variable.md", @@ -12804,7 +12912,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 468, + "weight": 464, "cookies": false, "type": "", "demo": "functions\/delete-variable.md", @@ -12874,7 +12982,7 @@ "x-appwrite": { "method": "query", "group": "graphql", - "weight": 254, + "weight": 250, "cookies": false, "type": "graphql", "demo": "graphql\/query.md", @@ -12949,7 +13057,7 @@ "x-appwrite": { "method": "mutation", "group": "graphql", - "weight": 253, + "weight": 249, "cookies": false, "type": "graphql", "demo": "graphql\/mutation.md", @@ -14731,7 +14839,7 @@ "x-appwrite": { "method": "listMessages", "group": "messages", - "weight": 308, + "weight": 304, "cookies": false, "type": "", "demo": "messaging\/list-messages.md", @@ -14807,7 +14915,7 @@ "x-appwrite": { "method": "createEmail", "group": "messages", - "weight": 305, + "weight": 301, "cookies": false, "type": "", "demo": "messaging\/create-email.md", @@ -14966,7 +15074,7 @@ "x-appwrite": { "method": "updateEmail", "group": "messages", - "weight": 312, + "weight": 308, "cookies": false, "type": "", "demo": "messaging\/update-email.md", @@ -15122,7 +15230,7 @@ "x-appwrite": { "method": "createPush", "group": "messages", - "weight": 307, + "weight": 303, "cookies": false, "type": "", "demo": "messaging\/create-push.md", @@ -15318,7 +15426,7 @@ "x-appwrite": { "method": "updatePush", "group": "messages", - "weight": 314, + "weight": 310, "cookies": false, "type": "", "demo": "messaging\/update-push.md", @@ -15513,7 +15621,7 @@ "x-appwrite": { "method": "createSms", "group": "messages", - "weight": 306, + "weight": 302, "cookies": false, "type": "", "demo": "messaging\/create-sms.md", @@ -15702,7 +15810,7 @@ "x-appwrite": { "method": "updateSms", "group": "messages", - "weight": 313, + "weight": 309, "cookies": false, "type": "", "demo": "messaging\/update-sms.md", @@ -15885,7 +15993,7 @@ "x-appwrite": { "method": "getMessage", "group": "messages", - "weight": 311, + "weight": 307, "cookies": false, "type": "", "demo": "messaging\/get-message.md", @@ -15941,7 +16049,7 @@ "x-appwrite": { "method": "delete", "group": "messages", - "weight": 315, + "weight": 311, "cookies": false, "type": "", "demo": "messaging\/delete.md", @@ -16002,7 +16110,7 @@ "x-appwrite": { "method": "listMessageLogs", "group": "logs", - "weight": 309, + "weight": 305, "cookies": false, "type": "", "demo": "messaging\/list-message-logs.md", @@ -16075,7 +16183,7 @@ "x-appwrite": { "method": "listTargets", "group": "messages", - "weight": 310, + "weight": 306, "cookies": false, "type": "", "demo": "messaging\/list-targets.md", @@ -16148,7 +16256,7 @@ "x-appwrite": { "method": "listProviders", "group": "providers", - "weight": 280, + "weight": 276, "cookies": false, "type": "", "demo": "messaging\/list-providers.md", @@ -16224,7 +16332,7 @@ "x-appwrite": { "method": "createApnsProvider", "group": "providers", - "weight": 279, + "weight": 275, "cookies": false, "type": "", "demo": "messaging\/create-apns-provider.md", @@ -16412,7 +16520,7 @@ "x-appwrite": { "method": "updateApnsProvider", "group": "providers", - "weight": 292, + "weight": 288, "cookies": false, "type": "", "demo": "messaging\/update-apns-provider.md", @@ -16596,7 +16704,7 @@ "x-appwrite": { "method": "createFcmProvider", "group": "providers", - "weight": 278, + "weight": 274, "cookies": false, "type": "", "demo": "messaging\/create-fcm-provider.md", @@ -16752,7 +16860,7 @@ "x-appwrite": { "method": "updateFcmProvider", "group": "providers", - "weight": 291, + "weight": 287, "cookies": false, "type": "", "demo": "messaging\/update-fcm-provider.md", @@ -16904,7 +17012,7 @@ "x-appwrite": { "method": "createMailgunProvider", "group": "providers", - "weight": 270, + "weight": 266, "cookies": false, "type": "", "demo": "messaging\/create-mailgun-provider.md", @@ -17032,7 +17140,7 @@ "x-appwrite": { "method": "updateMailgunProvider", "group": "providers", - "weight": 283, + "weight": 279, "cookies": false, "type": "", "demo": "messaging\/update-mailgun-provider.md", @@ -17158,7 +17266,7 @@ "x-appwrite": { "method": "createMsg91Provider", "group": "providers", - "weight": 273, + "weight": 269, "cookies": false, "type": "", "demo": "messaging\/create-msg-91-provider.md", @@ -17262,7 +17370,7 @@ "x-appwrite": { "method": "updateMsg91Provider", "group": "providers", - "weight": 286, + "weight": 282, "cookies": false, "type": "", "demo": "messaging\/update-msg-91-provider.md", @@ -17364,7 +17472,7 @@ "x-appwrite": { "method": "createSendgridProvider", "group": "providers", - "weight": 271, + "weight": 267, "cookies": false, "type": "", "demo": "messaging\/create-sendgrid-provider.md", @@ -17480,7 +17588,7 @@ "x-appwrite": { "method": "updateSendgridProvider", "group": "providers", - "weight": 284, + "weight": 280, "cookies": false, "type": "", "demo": "messaging\/update-sendgrid-provider.md", @@ -17594,7 +17702,7 @@ "x-appwrite": { "method": "createSmtpProvider", "group": "providers", - "weight": 272, + "weight": 268, "cookies": false, "type": "", "demo": "messaging\/create-smtp-provider.md", @@ -17840,7 +17948,7 @@ "x-appwrite": { "method": "updateSmtpProvider", "group": "providers", - "weight": 285, + "weight": 281, "cookies": false, "type": "", "demo": "messaging\/update-smtp-provider.md", @@ -18079,7 +18187,7 @@ "x-appwrite": { "method": "createTelesignProvider", "group": "providers", - "weight": 274, + "weight": 270, "cookies": false, "type": "", "demo": "messaging\/create-telesign-provider.md", @@ -18183,7 +18291,7 @@ "x-appwrite": { "method": "updateTelesignProvider", "group": "providers", - "weight": 287, + "weight": 283, "cookies": false, "type": "", "demo": "messaging\/update-telesign-provider.md", @@ -18285,7 +18393,7 @@ "x-appwrite": { "method": "createTextmagicProvider", "group": "providers", - "weight": 275, + "weight": 271, "cookies": false, "type": "", "demo": "messaging\/create-textmagic-provider.md", @@ -18389,7 +18497,7 @@ "x-appwrite": { "method": "updateTextmagicProvider", "group": "providers", - "weight": 288, + "weight": 284, "cookies": false, "type": "", "demo": "messaging\/update-textmagic-provider.md", @@ -18491,7 +18599,7 @@ "x-appwrite": { "method": "createTwilioProvider", "group": "providers", - "weight": 276, + "weight": 272, "cookies": false, "type": "", "demo": "messaging\/create-twilio-provider.md", @@ -18595,7 +18703,7 @@ "x-appwrite": { "method": "updateTwilioProvider", "group": "providers", - "weight": 289, + "weight": 285, "cookies": false, "type": "", "demo": "messaging\/update-twilio-provider.md", @@ -18697,7 +18805,7 @@ "x-appwrite": { "method": "createVonageProvider", "group": "providers", - "weight": 277, + "weight": 273, "cookies": false, "type": "", "demo": "messaging\/create-vonage-provider.md", @@ -18801,7 +18909,7 @@ "x-appwrite": { "method": "updateVonageProvider", "group": "providers", - "weight": 290, + "weight": 286, "cookies": false, "type": "", "demo": "messaging\/update-vonage-provider.md", @@ -18901,7 +19009,7 @@ "x-appwrite": { "method": "getProvider", "group": "providers", - "weight": 282, + "weight": 278, "cookies": false, "type": "", "demo": "messaging\/get-provider.md", @@ -18957,7 +19065,7 @@ "x-appwrite": { "method": "deleteProvider", "group": "providers", - "weight": 293, + "weight": 289, "cookies": false, "type": "", "demo": "messaging\/delete-provider.md", @@ -19018,7 +19126,7 @@ "x-appwrite": { "method": "listProviderLogs", "group": "providers", - "weight": 281, + "weight": 277, "cookies": false, "type": "", "demo": "messaging\/list-provider-logs.md", @@ -19091,7 +19199,7 @@ "x-appwrite": { "method": "listSubscriberLogs", "group": "subscribers", - "weight": 302, + "weight": 298, "cookies": false, "type": "", "demo": "messaging\/list-subscriber-logs.md", @@ -19164,7 +19272,7 @@ "x-appwrite": { "method": "listTopics", "group": "topics", - "weight": 295, + "weight": 291, "cookies": false, "type": "", "demo": "messaging\/list-topics.md", @@ -19238,7 +19346,7 @@ "x-appwrite": { "method": "createTopic", "group": "topics", - "weight": 294, + "weight": 290, "cookies": false, "type": "", "demo": "messaging\/create-topic.md", @@ -19327,7 +19435,7 @@ "x-appwrite": { "method": "getTopic", "group": "topics", - "weight": 297, + "weight": 293, "cookies": false, "type": "", "demo": "messaging\/get-topic.md", @@ -19388,7 +19496,7 @@ "x-appwrite": { "method": "updateTopic", "group": "topics", - "weight": 298, + "weight": 294, "cookies": false, "type": "", "demo": "messaging\/update-topic.md", @@ -19468,7 +19576,7 @@ "x-appwrite": { "method": "deleteTopic", "group": "topics", - "weight": 299, + "weight": 295, "cookies": false, "type": "", "demo": "messaging\/delete-topic.md", @@ -19529,7 +19637,7 @@ "x-appwrite": { "method": "listTopicLogs", "group": "topics", - "weight": 296, + "weight": 292, "cookies": false, "type": "", "demo": "messaging\/list-topic-logs.md", @@ -19602,7 +19710,7 @@ "x-appwrite": { "method": "listSubscribers", "group": "subscribers", - "weight": 301, + "weight": 297, "cookies": false, "type": "", "demo": "messaging\/list-subscribers.md", @@ -19684,7 +19792,7 @@ "x-appwrite": { "method": "createSubscriber", "group": "subscribers", - "weight": 300, + "weight": 296, "cookies": false, "type": "", "demo": "messaging\/create-subscriber.md", @@ -19773,7 +19881,7 @@ "x-appwrite": { "method": "getSubscriber", "group": "subscribers", - "weight": 303, + "weight": 299, "cookies": false, "type": "", "demo": "messaging\/get-subscriber.md", @@ -19837,7 +19945,7 @@ "x-appwrite": { "method": "deleteSubscriber", "group": "subscribers", - "weight": 304, + "weight": 300, "cookies": false, "type": "", "demo": "messaging\/delete-subscriber.md", @@ -19909,7 +20017,7 @@ "x-appwrite": { "method": "list", "group": "sites", - "weight": 473, + "weight": 469, "cookies": false, "type": "", "demo": "sites\/list.md", @@ -19982,7 +20090,7 @@ "x-appwrite": { "method": "create", "group": "sites", - "weight": 471, + "weight": 467, "cookies": false, "type": "", "demo": "sites\/create.md", @@ -20250,7 +20358,7 @@ "x-appwrite": { "method": "listFrameworks", "group": "frameworks", - "weight": 476, + "weight": 472, "cookies": false, "type": "", "demo": "sites\/list-frameworks.md", @@ -20300,7 +20408,7 @@ "x-appwrite": { "method": "listSpecifications", "group": "frameworks", - "weight": 499, + "weight": 495, "cookies": false, "type": "", "demo": "sites\/list-specifications.md", @@ -20351,7 +20459,7 @@ "x-appwrite": { "method": "get", "group": "sites", - "weight": 472, + "weight": 468, "cookies": false, "type": "", "demo": "sites\/get.md", @@ -20411,7 +20519,7 @@ "x-appwrite": { "method": "update", "group": "sites", - "weight": 474, + "weight": 470, "cookies": false, "type": "", "demo": "sites\/update.md", @@ -20674,7 +20782,7 @@ "x-appwrite": { "method": "delete", "group": "sites", - "weight": 475, + "weight": 471, "cookies": false, "type": "", "demo": "sites\/delete.md", @@ -20736,7 +20844,7 @@ "x-appwrite": { "method": "updateSiteDeployment", "group": "sites", - "weight": 482, + "weight": 478, "cookies": false, "type": "", "demo": "sites\/update-site-deployment.md", @@ -20814,7 +20922,7 @@ "x-appwrite": { "method": "listDeployments", "group": "deployments", - "weight": 481, + "weight": 477, "cookies": false, "type": "", "demo": "sites\/list-deployments.md", @@ -20895,7 +21003,7 @@ "x-appwrite": { "method": "createDeployment", "group": "deployments", - "weight": 477, + "weight": 473, "cookies": false, "type": "upload", "demo": "sites\/create-deployment.md", @@ -20996,7 +21104,7 @@ "x-appwrite": { "method": "createDuplicateDeployment", "group": "deployments", - "weight": 485, + "weight": 481, "cookies": false, "type": "", "demo": "sites\/create-duplicate-deployment.md", @@ -21063,7 +21171,7 @@ "tags": [ "sites" ], - "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "description": "Create a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "responses": { "202": { "description": "Deployment", @@ -21076,11 +21184,11 @@ "x-appwrite": { "method": "createTemplateDeployment", "group": "deployments", - "weight": 478, + "weight": 474, "cookies": false, "type": "", "demo": "sites\/create-template-deployment.md", - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/server\/sites#listTemplates) to find the template details.", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/masterCreate a deployment based on a template.\n\nUse this endpoint with combination of [listTemplates](https:\/\/appwrite.io\/docs\/products\/sites\/templates) to find the template details.", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -21183,7 +21291,7 @@ "x-appwrite": { "method": "createVcsDeployment", "group": "deployments", - "weight": 479, + "weight": 475, "cookies": false, "type": "", "demo": "sites\/create-vcs-deployment.md", @@ -21281,7 +21389,7 @@ "x-appwrite": { "method": "getDeployment", "group": "deployments", - "weight": 480, + "weight": 476, "cookies": false, "type": "", "demo": "sites\/get-deployment.md", @@ -21344,7 +21452,7 @@ "x-appwrite": { "method": "deleteDeployment", "group": "deployments", - "weight": 483, + "weight": 479, "cookies": false, "type": "", "demo": "sites\/delete-deployment.md", @@ -21412,7 +21520,7 @@ "x-appwrite": { "method": "getDeploymentDownload", "group": "deployments", - "weight": 484, + "weight": 480, "cookies": false, "type": "location", "demo": "sites\/get-deployment-download.md", @@ -21498,7 +21606,7 @@ "x-appwrite": { "method": "updateDeploymentStatus", "group": "deployments", - "weight": 486, + "weight": 482, "cookies": false, "type": "", "demo": "sites\/update-deployment-status.md", @@ -21566,7 +21674,7 @@ "x-appwrite": { "method": "listLogs", "group": "logs", - "weight": 488, + "weight": 484, "cookies": false, "type": "", "demo": "sites\/list-logs.md", @@ -21638,7 +21746,7 @@ "x-appwrite": { "method": "getLog", "group": "logs", - "weight": 487, + "weight": 483, "cookies": false, "type": "", "demo": "sites\/get-log.md", @@ -21703,7 +21811,7 @@ "x-appwrite": { "method": "deleteLog", "group": "logs", - "weight": 489, + "weight": 485, "cookies": false, "type": "", "demo": "sites\/delete-log.md", @@ -21771,7 +21879,7 @@ "x-appwrite": { "method": "listVariables", "group": "variables", - "weight": 492, + "weight": 488, "cookies": false, "type": "", "demo": "sites\/list-variables.md", @@ -21831,7 +21939,7 @@ "x-appwrite": { "method": "createVariable", "group": "variables", - "weight": 490, + "weight": 486, "cookies": false, "type": "", "demo": "sites\/create-variable.md", @@ -21922,7 +22030,7 @@ "x-appwrite": { "method": "getVariable", "group": "variables", - "weight": 491, + "weight": 487, "cookies": false, "type": "", "demo": "sites\/get-variable.md", @@ -21990,7 +22098,7 @@ "x-appwrite": { "method": "updateVariable", "group": "variables", - "weight": 493, + "weight": 489, "cookies": false, "type": "", "demo": "sites\/update-variable.md", @@ -22083,7 +22191,7 @@ "x-appwrite": { "method": "deleteVariable", "group": "variables", - "weight": 494, + "weight": 490, "cookies": false, "type": "", "demo": "sites\/delete-variable.md", @@ -23391,7 +23499,7 @@ "x-appwrite": { "method": "list", "group": "tablesdb", - "weight": 380, + "weight": 376, "cookies": false, "type": "", "demo": "tablesdb\/list.md", @@ -23464,7 +23572,7 @@ "x-appwrite": { "method": "create", "group": "tablesdb", - "weight": 376, + "weight": 372, "cookies": false, "type": "", "demo": "tablesdb\/create.md", @@ -23547,7 +23655,7 @@ "x-appwrite": { "method": "get", "group": "tablesdb", - "weight": 377, + "weight": 373, "cookies": false, "type": "", "demo": "tablesdb\/get.md", @@ -23607,7 +23715,7 @@ "x-appwrite": { "method": "update", "group": "tablesdb", - "weight": 378, + "weight": 374, "cookies": false, "type": "", "demo": "tablesdb\/update.md", @@ -23686,7 +23794,7 @@ "x-appwrite": { "method": "delete", "group": "tablesdb", - "weight": 379, + "weight": 375, "cookies": false, "type": "", "demo": "tablesdb\/delete.md", @@ -23746,7 +23854,7 @@ "x-appwrite": { "method": "listTables", "group": "tables", - "weight": 387, + "weight": 383, "cookies": false, "type": "", "demo": "tablesdb\/list-tables.md", @@ -23817,7 +23925,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Table", @@ -23830,7 +23938,7 @@ "x-appwrite": { "method": "createTable", "group": "tables", - "weight": 383, + "weight": 379, "cookies": false, "type": "", "demo": "tablesdb\/create-table.md", @@ -23939,7 +24047,7 @@ "x-appwrite": { "method": "getTable", "group": "tables", - "weight": 384, + "weight": 380, "cookies": false, "type": "", "demo": "tablesdb\/get-table.md", @@ -24010,7 +24118,7 @@ "x-appwrite": { "method": "updateTable", "group": "tables", - "weight": 385, + "weight": 381, "cookies": false, "type": "", "demo": "tablesdb\/update-table.md", @@ -24115,7 +24223,7 @@ "x-appwrite": { "method": "deleteTable", "group": "tables", - "weight": 386, + "weight": 382, "cookies": false, "type": "", "demo": "tablesdb\/delete-table.md", @@ -24186,7 +24294,7 @@ "x-appwrite": { "method": "listColumns", "group": "columns", - "weight": 392, + "weight": 388, "cookies": false, "type": "", "demo": "tablesdb\/list-columns.md", @@ -24271,7 +24379,7 @@ "x-appwrite": { "method": "createBooleanColumn", "group": "columns", - "weight": 393, + "weight": 389, "cookies": false, "type": "", "demo": "tablesdb\/create-boolean-column.md", @@ -24309,7 +24417,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -24381,7 +24489,7 @@ "x-appwrite": { "method": "updateBooleanColumn", "group": "columns", - "weight": 394, + "weight": 390, "cookies": false, "type": "", "demo": "tablesdb\/update-boolean-column.md", @@ -24419,7 +24527,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -24493,7 +24601,7 @@ "x-appwrite": { "method": "createDatetimeColumn", "group": "columns", - "weight": 395, + "weight": 391, "cookies": false, "type": "", "demo": "tablesdb\/create-datetime-column.md", @@ -24603,7 +24711,7 @@ "x-appwrite": { "method": "updateDatetimeColumn", "group": "columns", - "weight": 396, + "weight": 392, "cookies": false, "type": "", "demo": "tablesdb\/update-datetime-column.md", @@ -24715,7 +24823,7 @@ "x-appwrite": { "method": "createEmailColumn", "group": "columns", - "weight": 397, + "weight": 393, "cookies": false, "type": "", "demo": "tablesdb\/create-email-column.md", @@ -24825,7 +24933,7 @@ "x-appwrite": { "method": "updateEmailColumn", "group": "columns", - "weight": 398, + "weight": 394, "cookies": false, "type": "", "demo": "tablesdb\/update-email-column.md", @@ -24937,7 +25045,7 @@ "x-appwrite": { "method": "createEnumColumn", "group": "columns", - "weight": 399, + "weight": 395, "cookies": false, "type": "", "demo": "tablesdb\/create-enum-column.md", @@ -25057,7 +25165,7 @@ "x-appwrite": { "method": "updateEnumColumn", "group": "columns", - "weight": 400, + "weight": 396, "cookies": false, "type": "", "demo": "tablesdb\/update-enum-column.md", @@ -25179,7 +25287,7 @@ "x-appwrite": { "method": "createFloatColumn", "group": "columns", - "weight": 401, + "weight": 397, "cookies": false, "type": "", "demo": "tablesdb\/create-float-column.md", @@ -25301,7 +25409,7 @@ "x-appwrite": { "method": "updateFloatColumn", "group": "columns", - "weight": 402, + "weight": 398, "cookies": false, "type": "", "demo": "tablesdb\/update-float-column.md", @@ -25425,7 +25533,7 @@ "x-appwrite": { "method": "createIntegerColumn", "group": "columns", - "weight": 403, + "weight": 399, "cookies": false, "type": "", "demo": "tablesdb\/create-integer-column.md", @@ -25547,7 +25655,7 @@ "x-appwrite": { "method": "updateIntegerColumn", "group": "columns", - "weight": 404, + "weight": 400, "cookies": false, "type": "", "demo": "tablesdb\/update-integer-column.md", @@ -25671,7 +25779,7 @@ "x-appwrite": { "method": "createIpColumn", "group": "columns", - "weight": 405, + "weight": 401, "cookies": false, "type": "", "demo": "tablesdb\/create-ip-column.md", @@ -25781,7 +25889,7 @@ "x-appwrite": { "method": "updateIpColumn", "group": "columns", - "weight": 406, + "weight": 402, "cookies": false, "type": "", "demo": "tablesdb\/update-ip-column.md", @@ -25880,7 +25988,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric line attribute.", + "description": "Create a geometric line column.", "responses": { "202": { "description": "ColumnLine", @@ -25893,7 +26001,7 @@ "x-appwrite": { "method": "createLineColumn", "group": "columns", - "weight": 407, + "weight": 403, "cookies": false, "type": "", "demo": "tablesdb\/create-line-column.md", @@ -25931,7 +26039,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -25959,7 +26067,7 @@ "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true } }, @@ -25985,7 +26093,7 @@ "tags": [ "tablesDB" ], - "description": "Update a line column. Changing the `default` value will not update already existing documents.", + "description": "Update a line column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnLine", @@ -25998,7 +26106,7 @@ "x-appwrite": { "method": "updateLineColumn", "group": "columns", - "weight": 408, + "weight": 404, "cookies": false, "type": "", "demo": "tablesdb\/update-line-column.md", @@ -26036,7 +26144,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26065,7 +26173,7 @@ "type": "array", "description": "Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], \u2026], listing the vertices of the line in order. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[1, 2], [3, 4], [5, 6]]", "x-nullable": true }, "newKey": { @@ -26096,7 +26204,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric point attribute.", + "description": "Create a geometric point column.", "responses": { "202": { "description": "ColumnPoint", @@ -26109,7 +26217,7 @@ "x-appwrite": { "method": "createPointColumn", "group": "columns", - "weight": 409, + "weight": 405, "cookies": false, "type": "", "demo": "tablesdb\/create-point-column.md", @@ -26147,7 +26255,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26175,7 +26283,7 @@ "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true } }, @@ -26201,7 +26309,7 @@ "tags": [ "tablesDB" ], - "description": "Update a point column. Changing the `default` value will not update already existing documents.", + "description": "Update a point column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPoint", @@ -26214,7 +26322,7 @@ "x-appwrite": { "method": "updatePointColumn", "group": "columns", - "weight": 410, + "weight": 406, "cookies": false, "type": "", "demo": "tablesdb\/update-point-column.md", @@ -26252,7 +26360,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26281,7 +26389,7 @@ "type": "array", "description": "Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[1, 2]", "x-nullable": true }, "newKey": { @@ -26312,7 +26420,7 @@ "tags": [ "tablesDB" ], - "description": "Create a geometric polygon attribute.", + "description": "Create a geometric polygon column.", "responses": { "202": { "description": "ColumnPolygon", @@ -26325,7 +26433,7 @@ "x-appwrite": { "method": "createPolygonColumn", "group": "columns", - "weight": 411, + "weight": 407, "cookies": false, "type": "", "demo": "tablesdb\/create-polygon-column.md", @@ -26363,7 +26471,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26391,7 +26499,7 @@ "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true } }, @@ -26417,7 +26525,7 @@ "tags": [ "tablesDB" ], - "description": "Update a polygon column. Changing the `default` value will not update already existing documents.", + "description": "Update a polygon column. Changing the `default` value will not update already existing rows.", "responses": { "200": { "description": "ColumnPolygon", @@ -26430,7 +26538,7 @@ "x-appwrite": { "method": "updatePolygonColumn", "group": "columns", - "weight": 412, + "weight": 408, "cookies": false, "type": "", "demo": "tablesdb\/update-polygon-column.md", @@ -26468,7 +26576,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26497,7 +26605,7 @@ "type": "array", "description": "Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], \u2026], \u2026], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.", "default": null, - "x-example": "[[1,2], [3, 4]]", + "x-example": "[[[1, 2], [3, 4], [5, 6], [1, 2]]]", "x-nullable": true }, "newKey": { @@ -26541,7 +26649,7 @@ "x-appwrite": { "method": "createRelationshipColumn", "group": "columns", - "weight": 413, + "weight": 409, "cookies": false, "type": "", "demo": "tablesdb\/create-relationship-column.md", @@ -26678,7 +26786,7 @@ "x-appwrite": { "method": "createStringColumn", "group": "columns", - "weight": 415, + "weight": 411, "cookies": false, "type": "", "demo": "tablesdb\/create-string-column.md", @@ -26716,7 +26824,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26801,7 +26909,7 @@ "x-appwrite": { "method": "updateStringColumn", "group": "columns", - "weight": 416, + "weight": 412, "cookies": false, "type": "", "demo": "tablesdb\/update-string-column.md", @@ -26839,7 +26947,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -26919,7 +27027,7 @@ "x-appwrite": { "method": "createUrlColumn", "group": "columns", - "weight": 417, + "weight": 413, "cookies": false, "type": "", "demo": "tablesdb\/create-url-column.md", @@ -27029,7 +27137,7 @@ "x-appwrite": { "method": "updateUrlColumn", "group": "columns", - "weight": 418, + "weight": 414, "cookies": false, "type": "", "demo": "tablesdb\/update-url-column.md", @@ -27170,7 +27278,7 @@ "x-appwrite": { "method": "getColumn", "group": "columns", - "weight": 390, + "weight": 386, "cookies": false, "type": "", "demo": "tablesdb\/get-column.md", @@ -27243,7 +27351,7 @@ "x-appwrite": { "method": "deleteColumn", "group": "columns", - "weight": 391, + "weight": 387, "cookies": false, "type": "", "demo": "tablesdb\/delete-column.md", @@ -27323,7 +27431,7 @@ "x-appwrite": { "method": "updateRelationshipColumn", "group": "columns", - "weight": 414, + "weight": 410, "cookies": false, "type": "", "demo": "tablesdb\/update-relationship-column.md", @@ -27429,7 +27537,7 @@ "x-appwrite": { "method": "listIndexes", "group": "indexes", - "weight": 422, + "weight": 418, "cookies": false, "type": "", "demo": "tablesdb\/list-indexes.md", @@ -27467,7 +27575,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -27512,7 +27620,7 @@ "x-appwrite": { "method": "createIndex", "group": "indexes", - "weight": 419, + "weight": 415, "cookies": false, "type": "", "demo": "tablesdb\/create-index.md", @@ -27550,7 +27658,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -27644,7 +27752,7 @@ "x-appwrite": { "method": "getIndex", "group": "indexes", - "weight": 420, + "weight": 416, "cookies": false, "type": "", "demo": "tablesdb\/get-index.md", @@ -27682,7 +27790,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -27717,7 +27825,7 @@ "x-appwrite": { "method": "deleteIndex", "group": "indexes", - "weight": 421, + "weight": 417, "cookies": false, "type": "", "demo": "tablesdb\/delete-index.md", @@ -27755,7 +27863,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -27795,7 +27903,7 @@ "x-appwrite": { "method": "listRows", "group": "rows", - "weight": 431, + "weight": 427, "cookies": false, "type": "", "demo": "tablesdb\/list-rows.md", @@ -27836,7 +27944,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the TableDB service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdbdb#tablesdbCreate).", + "description": "Table ID. You can create a new table using the TablesDB service [server integration](https:\/\/appwrite.io\/docs\/products\/databases\/tables#create-table).", "required": true, "type": "string", "x-example": "", @@ -27868,7 +27976,7 @@ "tags": [ "tablesDB" ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -27881,7 +27989,7 @@ "x-appwrite": { "method": "createRow", "group": "rows", - "weight": 423, + "weight": 419, "cookies": false, "type": "", "demo": "tablesdb\/create-row.md", @@ -27926,7 +28034,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-row.md" }, { @@ -27953,7 +28061,7 @@ "model": "#\/definitions\/rowList" } ], - "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/create-rows.md" } ], @@ -27981,7 +28089,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable). Make sure to define columns before creating rows.", "required": true, "type": "string", "x-example": "", @@ -28016,7 +28124,7 @@ }, "rows": { "type": "array", - "description": "Array of documents data as JSON objects.", + "description": "Array of rows data as JSON objects.", "default": [], "x-example": null, "items": { @@ -28040,7 +28148,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "responses": { "201": { "description": "Rows List", @@ -28053,7 +28161,7 @@ "x-appwrite": { "method": "upsertRows", "group": "rows", - "weight": 428, + "weight": 424, "cookies": false, "type": "", "demo": "tablesdb\/upsert-rows.md", @@ -28095,7 +28203,7 @@ "model": "#\/definitions\/rowList" } ], - "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.\n", + "description": "Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.\n", "demo": "tablesdb\/upsert-rows.md" } ], @@ -28175,7 +28283,7 @@ "x-appwrite": { "method": "updateRows", "group": "rows", - "weight": 426, + "weight": 422, "cookies": false, "type": "", "demo": "tablesdb\/update-rows.md", @@ -28271,7 +28379,7 @@ "x-appwrite": { "method": "deleteRows", "group": "rows", - "weight": 430, + "weight": 426, "cookies": false, "type": "", "demo": "tablesdb\/delete-rows.md", @@ -28310,7 +28418,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -28361,7 +28469,7 @@ "x-appwrite": { "method": "getRow", "group": "rows", - "weight": 424, + "weight": 420, "cookies": false, "type": "", "demo": "tablesdb\/get-row.md", @@ -28402,7 +28510,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -28442,7 +28550,7 @@ "tags": [ "tablesDB" ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "responses": { "201": { "description": "Row", @@ -28455,7 +28563,7 @@ "x-appwrite": { "method": "upsertRow", "group": "rows", - "weight": 427, + "weight": 423, "cookies": false, "type": "", "demo": "tablesdb\/upsert-row.md", @@ -28499,7 +28607,7 @@ "model": "#\/definitions\/row" } ], - "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreateTable) API or directly from your database console.", + "description": "Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable) API or directly from your database console.", "demo": "tablesdb\/upsert-row.md" } ], @@ -28592,7 +28700,7 @@ "x-appwrite": { "method": "updateRow", "group": "rows", - "weight": 425, + "weight": 421, "cookies": false, "type": "", "demo": "tablesdb\/update-row.md", @@ -28693,7 +28801,7 @@ "x-appwrite": { "method": "deleteRow", "group": "rows", - "weight": 429, + "weight": 425, "cookies": false, "type": "", "demo": "tablesdb\/delete-row.md", @@ -28734,7 +28842,7 @@ }, { "name": "tableId", - "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/tablesdb#tablesDBCreate).", + "description": "Table ID. You can create a new table using the Database service [server integration](https:\/\/appwrite.io\/docs\/references\/cloud\/server-dart\/tablesDB#createTable).", "required": true, "type": "string", "x-example": "", @@ -28777,7 +28885,7 @@ "x-appwrite": { "method": "decrementRowColumn", "group": "rows", - "weight": 434, + "weight": 430, "cookies": false, "type": "", "demo": "tablesdb\/decrement-row-column.md", @@ -28890,7 +28998,7 @@ "x-appwrite": { "method": "incrementRowColumn", "group": "rows", - "weight": 433, + "weight": 429, "cookies": false, "type": "", "demo": "tablesdb\/increment-row-column.md", @@ -35120,7 +35228,11 @@ "type": { "type": "string", "description": "Database type.", - "x-example": "legacy" + "x-example": "legacy", + "enum": [ + "legacy", + "tablesdb" + ] } }, "required": [ @@ -35359,7 +35471,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35447,7 +35567,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35537,7 +35665,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35627,7 +35763,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35700,7 +35844,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35780,7 +35932,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35870,7 +36030,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -35950,7 +36118,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36030,7 +36206,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36110,7 +36294,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36218,7 +36410,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36297,7 +36497,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36388,7 +36596,15 @@ "status": { "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "AttributeStatus" }, "error": { "type": "string", @@ -36705,7 +36921,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36793,7 +37017,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36883,7 +37115,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -36973,7 +37213,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37046,7 +37294,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37126,7 +37382,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37216,7 +37480,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37296,7 +37568,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37376,7 +37656,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37456,7 +37744,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37564,7 +37860,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37643,7 +37947,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37734,7 +38046,15 @@ "status": { "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ], + "x-enum-name": "ColumnStatus" }, "error": { "type": "string", @@ -37864,7 +38184,14 @@ "status": { "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", - "x-example": "available" + "x-example": "available", + "enum": [ + "available", + "processing", + "deleting", + "stuck", + "failed" + ] }, "error": { "type": "string", @@ -40307,7 +40634,14 @@ "status": { "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", and \"failed\".", - "x-example": "ready" + "x-example": "ready", + "enum": [ + "waiting", + "processing", + "building", + "ready", + "failed" + ] }, "buildLogs": { "type": "string", @@ -40335,11 +40669,6 @@ "description": "The url of the vcs provider repository", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function" }, - "providerBranch": { - "type": "string", - "description": "The branch of the vcs repository", - "x-example": "0.7.x" - }, "providerCommitHash": { "type": "string", "description": "The commit hash of the vcs commit", @@ -40365,6 +40694,11 @@ "description": "The url of the vcs commit", "x-example": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb" }, + "providerBranch": { + "type": "string", + "description": "The branch of the vcs repository", + "x-example": "0.7.x" + }, "providerBranchUrl": { "type": "string", "description": "The branch of the vcs repository", @@ -40392,12 +40726,12 @@ "providerRepositoryName", "providerRepositoryOwner", "providerRepositoryUrl", - "providerBranch", "providerCommitHash", "providerCommitAuthorUrl", "providerCommitAuthor", "providerCommitMessage", "providerCommitUrl", + "providerBranch", "providerBranchUrl" ], "example": { @@ -40421,12 +40755,12 @@ "providerRepositoryName": "database", "providerRepositoryOwner": "utopia", "providerRepositoryUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function", - "providerBranch": "0.7.x", "providerCommitHash": "7c3f25d", "providerCommitAuthorUrl": "https:\/\/github.com\/vermakhushboo", "providerCommitAuthor": "Khushboo Verma", "providerCommitMessage": "Update index.js", "providerCommitUrl": "https:\/\/github.com\/vermakhushboo\/g4-node-function\/commit\/60c0416257a9cbcdd96b2d370c38d8f8d150ccfb", + "providerBranch": "0.7.x", "providerBranchUrl": "https:\/\/github.com\/vermakhushboo\/appwrite\/tree\/0.7.x" } }, @@ -40472,12 +40806,23 @@ "trigger": { "type": "string", "description": "The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.", - "x-example": "http" + "x-example": "http", + "enum": [ + "http", + "schedule", + "event" + ] }, "status": { "type": "string", "description": "The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.", - "x-example": "processing" + "x-example": "processing", + "enum": [ + "waiting", + "processing", + "completed", + "failed" + ] }, "requestMethod": { "type": "string", @@ -40491,7 +40836,7 @@ }, "requestHeaders": { "type": "array", - "description": "HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", + "description": "HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.", "items": { "type": "object", "$ref": "#\/definitions\/headers" @@ -40847,8 +41192,13 @@ }, "status": { "type": "string", - "description": "Antivirus status. Possible values can are: `disabled`, `offline`, `online`", - "x-example": "online" + "description": "Antivirus status. Possible values are: `disabled`, `offline`, `online`", + "x-example": "online", + "enum": [ + "disabled", + "offline", + "online" + ] } }, "required": [ @@ -40895,8 +41245,13 @@ }, "status": { "type": "string", - "description": "Service status. Possible values can are: `pass`, `fail`", - "x-example": "pass" + "description": "Service status. Possible values are: `pass`, `fail`", + "x-example": "pass", + "enum": [ + "pass", + "fail" + ], + "x-enum-name": "HealthCheckStatus" } }, "required": [ @@ -41363,7 +41718,14 @@ "status": { "type": "string", "description": "Status of delivery.", - "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed." + "x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.", + "enum": [ + "draft", + "processing", + "scheduled", + "sent", + "failed" + ] } }, "required": [ diff --git a/app/controllers/api/account.php b/app/controllers/api/account.php index 6836c6bfaf..6500fcc4d7 100644 --- a/app/controllers/api/account.php +++ b/app/controllers/api/account.php @@ -3536,27 +3536,48 @@ App::put('/v1/account/recovery') $response->dynamic($recoveryDocument, Response::MODEL_TOKEN); }); -App::post('/v1/account/verification') +App::post('/v1/account/verifications/email') + ->alias('/v1/account/verification') ->desc('Create email verification') ->groups(['api', 'account']) ->label('scope', 'account') ->label('event', 'users.[userId].verification.[tokenId].create') ->label('audits.event', 'verification.create') ->label('audits.resource', 'user/{response.userId}') - ->label('sdk', new Method( - namespace: 'account', - group: 'verification', - name: 'createVerification', - description: '/docs/references/account/create-email-verification.md', - auth: [AuthType::SESSION, AuthType::JWT], - responses: [ - new SDKResponse( - code: Response::STATUS_CODE_CREATED, - model: Response::MODEL_TOKEN, - ) - ], - contentType: ContentType::JSON, - )) + ->label('sdk', [ + new Method( + namespace: 'account', + group: 'verification', + name: 'createEmailVerification', + description: '/docs/references/account/create-email-verification.md', + auth: [AuthType::SESSION, AuthType::JWT], + responses: [ + new SDKResponse( + code: Response::STATUS_CODE_CREATED, + model: Response::MODEL_TOKEN, + ) + ], + contentType: ContentType::JSON, + ), + new Method( + namespace: 'account', + group: 'verification', + name: 'createVerification', + description: '/docs/references/account/create-email-verification.md', + auth: [AuthType::SESSION, AuthType::JWT], + responses: [ + new SDKResponse( + code: Response::STATUS_CODE_CREATED, + model: Response::MODEL_TOKEN, + ) + ], + contentType: ContentType::JSON, + deprecated: new Deprecated( + since: '1.8.0', + replaceWith: 'account.createEmailVerification' + ), + ) + ]) ->label('abuse-limit', 10) ->label('abuse-key', 'url:{url},userId:{userId}') ->param('url', '', fn ($platforms, $devKey) => $devKey->isEmpty() ? new Redirect($platforms) : new URL(), 'URL to redirect the user back to your app from the verification email. Only URLs from hostnames in your project platform list are allowed. This requirement helps to prevent an [open redirect](https://cheatsheetseries.owasp.org/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.html) attack against your project API.', false, ['platforms', 'devKey']) // TODO add built-in confirm page @@ -3726,27 +3747,48 @@ App::post('/v1/account/verification') ->dynamic($verification, Response::MODEL_TOKEN); }); -App::put('/v1/account/verification') +App::put('/v1/account/verifications/email') + ->alias('/v1/account/verification') ->desc('Update email verification (confirmation)') ->groups(['api', 'account']) ->label('scope', 'public') ->label('event', 'users.[userId].verification.[tokenId].update') ->label('audits.event', 'verification.update') ->label('audits.resource', 'user/{response.userId}') - ->label('sdk', new Method( - namespace: 'account', - group: 'verification', - name: 'updateVerification', - description: '/docs/references/account/update-email-verification.md', - auth: [AuthType::SESSION, AuthType::JWT], - responses: [ - new SDKResponse( - code: Response::STATUS_CODE_OK, - model: Response::MODEL_TOKEN, - ) - ], - contentType: ContentType::JSON - )) + ->label('sdk', [ + new Method( + namespace: 'account', + group: 'verification', + name: 'updateEmailVerification', + description: '/docs/references/account/update-email-verification.md', + auth: [AuthType::SESSION, AuthType::JWT], + responses: [ + new SDKResponse( + code: Response::STATUS_CODE_OK, + model: Response::MODEL_TOKEN, + ) + ], + contentType: ContentType::JSON + ), + new Method( + namespace: 'account', + group: 'verification', + name: 'updateVerification', + description: '/docs/references/account/update-email-verification.md', + auth: [AuthType::SESSION, AuthType::JWT], + responses: [ + new SDKResponse( + code: Response::STATUS_CODE_OK, + model: Response::MODEL_TOKEN, + ) + ], + contentType: ContentType::JSON, + deprecated: new Deprecated( + since: '1.8.0', + replaceWith: 'account.updateEmailVerification' + ), + ) + ]) ->label('abuse-limit', 10) ->label('abuse-key', 'url:{url},userId:{param-userId}') ->param('userId', '', new UID(), 'User ID.') @@ -3793,7 +3835,8 @@ App::put('/v1/account/verification') $response->dynamic($verification, Response::MODEL_TOKEN); }); -App::post('/v1/account/verification/phone') +App::post('/v1/account/verifications/phone') + ->alias('/v1/account/verification/phone') ->desc('Create phone verification') ->groups(['api', 'account', 'auth']) ->label('scope', 'account') @@ -3942,7 +3985,8 @@ App::post('/v1/account/verification/phone') ->dynamic($verification, Response::MODEL_TOKEN); }); -App::put('/v1/account/verification/phone') +App::put('/v1/account/verifications/phone') + ->alias('/v1/account/verification/phone') ->desc('Update phone verification (confirmation)') ->groups(['api', 'account']) ->label('scope', 'public') diff --git a/app/controllers/api/health.php b/app/controllers/api/health.php index 988f061ed5..765688e1ee 100644 --- a/app/controllers/api/health.php +++ b/app/controllers/api/health.php @@ -538,7 +538,7 @@ App::get('/v1/health/queue/databases') ->inject('response') ->action(function (string $name, int|string $threshold, Database $queueForDatabase, Response $response) { $threshold = \intval($threshold); - $size = $queueForDatabase->getSize(); + $size = $queueForDatabase->setQueue($name)->getSize(); if ($size >= $threshold) { throw new Exception(Exception::HEALTH_QUEUE_SIZE_EXCEEDED, "Queue size threshold hit. Current size is {$size} and threshold is {$threshold}."); diff --git a/app/controllers/api/messaging.php b/app/controllers/api/messaging.php index d22c5cb2c2..dbc384f3c4 100644 --- a/app/controllers/api/messaging.php +++ b/app/controllers/api/messaging.php @@ -3102,7 +3102,7 @@ App::post('/v1/messaging/messages/email') case MessageStatus::SCHEDULED: $schedule = $dbForPlatform->createDocument('schedules', new Document([ 'region' => $project->getAttribute('region'), - 'resourceType' => 'message', + 'resourceType' => SCHEDULE_RESOURCE_TYPE_MESSAGE, 'resourceId' => $message->getId(), 'resourceInternalId' => $message->getSequence(), 'resourceUpdatedAt' => DateTime::now(), @@ -3244,7 +3244,7 @@ App::post('/v1/messaging/messages/sms') case MessageStatus::SCHEDULED: $schedule = $dbForPlatform->createDocument('schedules', new Document([ 'region' => $project->getAttribute('region'), - 'resourceType' => 'message', + 'resourceType' => SCHEDULE_RESOURCE_TYPE_MESSAGE, 'resourceId' => $message->getId(), 'resourceInternalId' => $message->getSequence(), 'resourceUpdatedAt' => DateTime::now(), @@ -3462,7 +3462,7 @@ App::post('/v1/messaging/messages/push') case MessageStatus::SCHEDULED: $schedule = $dbForPlatform->createDocument('schedules', new Document([ 'region' => $project->getAttribute('region'), - 'resourceType' => 'message', + 'resourceType' => SCHEDULE_RESOURCE_TYPE_MESSAGE, 'resourceId' => $message->getId(), 'resourceInternalId' => $message->getSequence(), 'resourceUpdatedAt' => DateTime::now(), @@ -3863,7 +3863,7 @@ App::patch('/v1/messaging/messages/email/:messageId') if (\is_null($currentScheduledAt) && !\is_null($scheduledAt)) { $schedule = $dbForPlatform->createDocument('schedules', new Document([ 'region' => $project->getAttribute('region'), - 'resourceType' => 'message', + 'resourceType' => SCHEDULE_RESOURCE_TYPE_MESSAGE, 'resourceId' => $message->getId(), 'resourceInternalId' => $message->getSequence(), 'resourceUpdatedAt' => DateTime::now(), @@ -4084,7 +4084,7 @@ App::patch('/v1/messaging/messages/sms/:messageId') if (\is_null($currentScheduledAt) && !\is_null($scheduledAt)) { $schedule = $dbForPlatform->createDocument('schedules', new Document([ 'region' => $project->getAttribute('region'), - 'resourceType' => 'message', + 'resourceType' => SCHEDULE_RESOURCE_TYPE_MESSAGE, 'resourceId' => $message->getId(), 'resourceInternalId' => $message->getSequence(), 'resourceUpdatedAt' => DateTime::now(), @@ -4258,7 +4258,7 @@ App::patch('/v1/messaging/messages/push/:messageId') if (\is_null($currentScheduledAt) && !\is_null($scheduledAt)) { $schedule = $dbForPlatform->createDocument('schedules', new Document([ 'region' => $project->getAttribute('region'), - 'resourceType' => 'message', + 'resourceType' => SCHEDULE_RESOURCE_TYPE_MESSAGE, 'resourceId' => $message->getId(), 'resourceInternalId' => $message->getSequence(), 'resourceUpdatedAt' => DateTime::now(), diff --git a/app/controllers/api/projects.php b/app/controllers/api/projects.php index ea3a00dcb6..80d407322e 100644 --- a/app/controllers/api/projects.php +++ b/app/controllers/api/projects.php @@ -1756,7 +1756,28 @@ App::post('/v1/projects/:projectId/platforms') ] )) ->param('projectId', '', new UID(), 'Project unique ID.') - ->param('type', null, new WhiteList([Platform::TYPE_WEB, Platform::TYPE_FLUTTER_WEB, Platform::TYPE_FLUTTER_IOS, Platform::TYPE_FLUTTER_ANDROID, Platform::TYPE_FLUTTER_LINUX, Platform::TYPE_FLUTTER_MACOS, Platform::TYPE_FLUTTER_WINDOWS, Platform::TYPE_APPLE_IOS, Platform::TYPE_APPLE_MACOS, Platform::TYPE_APPLE_WATCHOS, Platform::TYPE_APPLE_TVOS, Platform::TYPE_ANDROID, Platform::TYPE_UNITY, Platform::TYPE_REACT_NATIVE_IOS, Platform::TYPE_REACT_NATIVE_ANDROID], true), 'Platform type.') + ->param( + 'type', + null, + new WhiteList([ + Platform::TYPE_WEB, + Platform::TYPE_FLUTTER_WEB, + Platform::TYPE_FLUTTER_IOS, + Platform::TYPE_FLUTTER_ANDROID, + Platform::TYPE_FLUTTER_LINUX, + Platform::TYPE_FLUTTER_MACOS, + Platform::TYPE_FLUTTER_WINDOWS, + Platform::TYPE_APPLE_IOS, + Platform::TYPE_APPLE_MACOS, + Platform::TYPE_APPLE_WATCHOS, + Platform::TYPE_APPLE_TVOS, + Platform::TYPE_ANDROID, + Platform::TYPE_UNITY, + Platform::TYPE_REACT_NATIVE_IOS, + Platform::TYPE_REACT_NATIVE_ANDROID, + ], true), + 'Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.' + ) ->param('name', null, new Text(128), 'Platform name. Max length: 128 chars.') ->param('key', '', new Text(256), 'Package name for Android or bundle ID for iOS or macOS. Max length: 256 chars.', true) ->param('store', '', new Text(256), 'App store or Google Play store ID. Max length: 256 chars.', true) diff --git a/app/controllers/api/proxy.php b/app/controllers/api/proxy.php deleted file mode 100644 index 4a64448335..0000000000 --- a/app/controllers/api/proxy.php +++ /dev/null @@ -1,318 +0,0 @@ -groups(['api', 'proxy']) - ->desc('List rules') - ->label('scope', 'rules.read') - ->label('sdk', new Method( - namespace: 'proxy', - group: null, - name: 'listRules', - description: '/docs/references/proxy/list-rules.md', - auth: [AuthType::ADMIN], - responses: [ - new SDKResponse( - code: Response::STATUS_CODE_OK, - model: Response::MODEL_PROXY_RULE_LIST, - ) - ] - )) - ->param('queries', [], new Rules(), 'Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/databases#querying-documents). Maximum of ' . APP_LIMIT_ARRAY_PARAMS_SIZE . ' queries are allowed, each ' . APP_LIMIT_ARRAY_ELEMENT_SIZE . ' characters long. You may filter on the following attributes: ' . implode(', ', Rules::ALLOWED_ATTRIBUTES), true) - ->param('search', '', new Text(256), 'Search term to filter your list results. Max length: 256 chars.', true) - ->inject('response') - ->inject('project') - ->inject('dbForPlatform') - ->action(function (array $queries, string $search, Response $response, Document $project, Database $dbForPlatform) { - try { - $queries = Query::parseQueries($queries); - } catch (QueryException $e) { - throw new Exception(Exception::GENERAL_QUERY_INVALID, $e->getMessage()); - } - - if (!empty($search)) { - $queries[] = Query::search('search', $search); - } - - $queries[] = Query::equal('projectInternalId', [$project->getSequence()]); - - /** - * Get cursor document if there was a cursor query, we use array_filter and reset for reference $cursor to $queries - */ - $cursor = \array_filter($queries, function ($query) { - return \in_array($query->getMethod(), [Query::TYPE_CURSOR_AFTER, Query::TYPE_CURSOR_BEFORE]); - }); - $cursor = reset($cursor); - if ($cursor) { - /** @var Query $cursor */ - - $validator = new Cursor(); - if (!$validator->isValid($cursor)) { - throw new Exception(Exception::GENERAL_QUERY_INVALID, $validator->getDescription()); - } - - $ruleId = $cursor->getValue(); - $cursorDocument = $dbForPlatform->getDocument('rules', $ruleId); - - if ($cursorDocument->isEmpty()) { - throw new Exception(Exception::GENERAL_CURSOR_NOT_FOUND, "Rule '{$ruleId}' for the 'cursor' value not found."); - } - - $cursor->setValue($cursorDocument); - } - - $filterQueries = Query::groupByType($queries)['filters']; - - $rules = $dbForPlatform->find('rules', $queries); - foreach ($rules as $rule) { - $certificate = $dbForPlatform->getDocument('certificates', $rule->getAttribute('certificateId', '')); - $rule->setAttribute('logs', $certificate->getAttribute('logs', '')); - $rule->setAttribute('renewAt', $certificate->getAttribute('renewDate', '')); - } - - $response->dynamic(new Document([ - 'rules' => $rules, - 'total' => $dbForPlatform->count('rules', $filterQueries, APP_LIMIT_COUNT), - ]), Response::MODEL_PROXY_RULE_LIST); - }); - -App::get('/v1/proxy/rules/:ruleId') - ->groups(['api', 'proxy']) - ->desc('Get rule') - ->label('scope', 'rules.read') - ->label('sdk', new Method( - namespace: 'proxy', - group: null, - name: 'getRule', - description: '/docs/references/proxy/get-rule.md', - auth: [AuthType::ADMIN], - responses: [ - new SDKResponse( - code: Response::STATUS_CODE_OK, - model: Response::MODEL_PROXY_RULE, - ) - ] - )) - ->param('ruleId', '', new UID(), 'Rule ID.') - ->inject('response') - ->inject('project') - ->inject('dbForPlatform') - ->action(function (string $ruleId, Response $response, Document $project, Database $dbForPlatform) { - $rule = $dbForPlatform->getDocument('rules', $ruleId); - - if ($rule->isEmpty() || $rule->getAttribute('projectInternalId') !== $project->getSequence()) { - throw new Exception(Exception::RULE_NOT_FOUND); - } - - $certificate = $dbForPlatform->getDocument('certificates', $rule->getAttribute('certificateId', '')); - $rule->setAttribute('logs', $certificate->getAttribute('logs', '')); - $rule->setAttribute('renewAt', $certificate->getAttribute('renewDate', '')); - - $response->dynamic($rule, Response::MODEL_PROXY_RULE); - }); - -App::delete('/v1/proxy/rules/:ruleId') - ->groups(['api', 'proxy']) - ->desc('Delete rule') - ->label('scope', 'rules.write') - ->label('event', 'rules.[ruleId].delete') - ->label('audits.event', 'rules.delete') - ->label('audits.resource', 'rule/{request.ruleId}') - ->label('sdk', new Method( - namespace: 'proxy', - group: null, - name: 'deleteRule', - description: '/docs/references/proxy/delete-rule.md', - auth: [AuthType::ADMIN], - responses: [ - new SDKResponse( - code: Response::STATUS_CODE_NOCONTENT, - model: Response::MODEL_NONE, - ) - ], - contentType: ContentType::NONE - )) - ->param('ruleId', '', new UID(), 'Rule ID.') - ->inject('response') - ->inject('project') - ->inject('dbForPlatform') - ->inject('queueForDeletes') - ->inject('queueForEvents') - ->action(function (string $ruleId, Response $response, Document $project, Database $dbForPlatform, Delete $queueForDeletes, Event $queueForEvents) { - $rule = $dbForPlatform->getDocument('rules', $ruleId); - - if ($rule->isEmpty() || $rule->getAttribute('projectInternalId') !== $project->getSequence()) { - throw new Exception(Exception::RULE_NOT_FOUND); - } - - $dbForPlatform->deleteDocument('rules', $rule->getId()); - - $queueForDeletes - ->setType(DELETE_TYPE_DOCUMENT) - ->setDocument($rule); - - $queueForEvents->setParam('ruleId', $rule->getId()); - - $response->noContent(); - }); - -App::patch('/v1/proxy/rules/:ruleId/verification') - ->desc('Update rule verification status') - ->groups(['api', 'proxy']) - ->label('scope', 'rules.write') - ->label('event', 'rules.[ruleId].update') - ->label('audits.event', 'rule.update') - ->label('audits.resource', 'rule/{response.$id}') - ->label('sdk', new Method( - namespace: 'proxy', - group: null, - name: 'updateRuleVerification', - description: '/docs/references/proxy/update-rule-verification.md', - auth: [AuthType::ADMIN], - responses: [ - new SDKResponse( - code: Response::STATUS_CODE_OK, - model: Response::MODEL_PROXY_RULE, - ) - ] - )) - ->param('ruleId', '', new UID(), 'Rule ID.') - ->inject('response') - ->inject('queueForCertificates') - ->inject('queueForEvents') - ->inject('project') - ->inject('dbForPlatform') - ->inject('log') - ->action(function (string $ruleId, Response $response, Certificate $queueForCertificates, Event $queueForEvents, Document $project, Database $dbForPlatform, Log $log) { - $rule = $dbForPlatform->getDocument('rules', $ruleId); - - if ($rule->isEmpty() || $rule->getAttribute('projectInternalId') !== $project->getSequence()) { - throw new Exception(Exception::RULE_NOT_FOUND); - } - - $targetCNAME = null; - switch ($rule->getAttribute('type', '')) { - case 'api': - // For example: fra.cloud.appwrite.io - $targetCNAME = new Domain(System::getEnv('_APP_DOMAIN_TARGET_CNAME', '')); - break; - case 'redirect': - // For example: appwrite.network - $targetCNAME = new Domain(System::getEnv('_APP_DOMAIN_SITES', '')); - break; - case 'deployment': - switch ($rule->getAttribute('deploymentResourceType', '')) { - case 'function': - // For example: fra.appwrite.run - $targetCNAME = new Domain(System::getEnv('_APP_DOMAIN_FUNCTIONS', '')); - break; - case 'site': - // For example: appwrite.network - $targetCNAME = new Domain(System::getEnv('_APP_DOMAIN_SITES', '')); - break; - default: - break; - } - // no break - default: - break; - } - - $validators = []; - - if (!is_null($targetCNAME)) { - if ($targetCNAME->isKnown() && !$targetCNAME->isTest()) { - $validators[] = new DNS($targetCNAME->get(), DNS::RECORD_CNAME); - } - } - - if ((new IP(IP::V4))->isValid(System::getEnv('_APP_DOMAIN_TARGET_A', ''))) { - $validators[] = new DNS(System::getEnv('_APP_DOMAIN_TARGET_A', ''), DNS::RECORD_A); - } - if ((new IP(IP::V6))->isValid(System::getEnv('_APP_DOMAIN_TARGET_AAAA', ''))) { - $validators[] = new DNS(System::getEnv('_APP_DOMAIN_TARGET_AAAA', ''), DNS::RECORD_AAAA); - } - - if (empty($validators)) { - throw new Exception(Exception::GENERAL_SERVER_ERROR, 'At least one of domain targets environment variable must be configured.'); - } - - if ($rule->getAttribute('verification') === true) { - return $response->dynamic($rule, Response::MODEL_PROXY_RULE); - } - - $validator = new AnyOf($validators, AnyOf::TYPE_STRING); - $domain = new Domain($rule->getAttribute('domain', '')); - - $validationStart = \microtime(true); - if (!$validator->isValid($domain->get())) { - $log->addExtra('dnsTiming', \strval(\microtime(true) - $validationStart)); - $log->addTag('dnsDomain', $domain->get()); - - $errors = []; - foreach ($validators as $validator) { - if (!empty($validator->getLogs())) { - $errors[] = $validator->getLogs(); - } - } - - $error = \implode("\n", $errors); - $log->addExtra('dnsResponse', \is_array($error) ? \json_encode($error) : \strval($error)); - - throw new Exception(Exception::RULE_VERIFICATION_FAILED); - } - - // Ensure CAA won't block certificate issuance - if (!empty(System::getEnv('_APP_DOMAIN_TARGET_CAA', ''))) { - $validationStart = \microtime(true); - $validator = new DNS(System::getEnv('_APP_DOMAIN_TARGET_CAA', ''), DNS::RECORD_CAA); - if (!$validator->isValid($domain->get())) { - $log->addExtra('dnsTimingCaa', \strval(\microtime(true) - $validationStart)); - $log->addTag('dnsDomain', $domain->get()); - $error = $validator->getDescription(); - $log->addExtra('dnsResponse', \is_array($error) ? \json_encode($error) : \strval($error)); - throw new Exception(Exception::RULE_VERIFICATION_FAILED, 'Domain verification failed because CAA records do not allow Appwrite\'s certificate issuer.'); - } - } - - $dbForPlatform->updateDocument('rules', $rule->getId(), $rule->setAttribute('status', 'verifying')); - - // Issue a TLS certificate when domain is verified - $queueForCertificates - ->setDomain(new Document([ - 'domain' => $rule->getAttribute('domain'), - 'domainType' => $rule->getAttribute('deploymentResourceType', $rule->getAttribute('type')), - ])) - ->trigger(); - - $queueForEvents->setParam('ruleId', $rule->getId()); - - $certificate = $dbForPlatform->getDocument('certificates', $rule->getAttribute('certificateId', '')); - $rule->setAttribute('logs', $certificate->getAttribute('logs', '')); - - $response->dynamic($rule, Response::MODEL_PROXY_RULE); - }); diff --git a/app/controllers/api/storage.php b/app/controllers/api/storage.php index 8cfeb5da3b..8bc383cabd 100644 --- a/app/controllers/api/storage.php +++ b/app/controllers/api/storage.php @@ -225,6 +225,8 @@ App::get('/v1/storage/buckets') $total = $dbForProject->count('buckets', $filterQueries, APP_LIMIT_COUNT); } catch (OrderException $e) { throw new Exception(Exception::DATABASE_QUERY_ORDER_NULL, "The order attribute '{$e->getAttribute()}' had a null value. Cursor pagination requires all documents order attribute values are non-null."); + } catch (QueryException $e) { + throw new Exception(Exception::GENERAL_QUERY_INVALID, $e->getMessage()); } $response->dynamic(new Document([ 'buckets' => $buckets, @@ -853,6 +855,8 @@ App::get('/v1/storage/buckets/:bucketId/files') throw new Exception(Exception::STORAGE_BUCKET_NOT_FOUND); } catch (OrderException $e) { throw new Exception(Exception::DATABASE_QUERY_ORDER_NULL, "The order attribute '{$e->getAttribute()}' had a null value. Cursor pagination requires all documents order attribute values are non-null."); + } catch (QueryException $e) { + throw new Exception(Exception::GENERAL_QUERY_INVALID, $e->getMessage()); } $response->dynamic(new Document([ diff --git a/app/controllers/shared/api.php b/app/controllers/shared/api.php index 6dcb99b56f..959ee77b7d 100644 --- a/app/controllers/shared/api.php +++ b/app/controllers/shared/api.php @@ -246,10 +246,11 @@ App::init() $role = $apiKey->getRole(); $scopes = $apiKey->getScopes(); - // Disable authorization checks for API keys - Authorization::setDefaultStatus(false); if ($apiKey->getRole() === Auth::USER_ROLE_APPS) { + // Disable authorization checks for API keys + Authorization::setDefaultStatus(false); + $user = new Document([ '$id' => '', 'status' => true, diff --git a/app/http.php b/app/http.php index 30f4013821..1bd3e97e69 100644 --- a/app/http.php +++ b/app/http.php @@ -10,6 +10,7 @@ use Swoole\Http\Response as SwooleResponse; use Swoole\Http\Server; use Swoole\Process; use Swoole\Table; +use Swoole\Timer; use Utopia\App; use Utopia\Audit\Audit; use Utopia\CLI\Console; @@ -156,11 +157,16 @@ $http->on(Constant::EVENT_WORKER_START, function ($server, $workerId) { Console::success('Worker ' . ++$workerId . ' started successfully'); }); -$http->on(Constant::EVENT_BEFORE_RELOAD, function ($server, $workerId) { +$http->on(Constant::EVENT_WORKER_STOP, function ($server, $workerId) { + Timer::clearAll(); + Console::success('Worker ' . ++$workerId . ' stopped successfully'); +}); + +$http->on(Constant::EVENT_BEFORE_RELOAD, function ($server) { Console::success('Starting reload...'); }); -$http->on(Constant::EVENT_AFTER_RELOAD, function ($server, $workerId) { +$http->on(Constant::EVENT_AFTER_RELOAD, function ($server) { Console::success('Reload completed...'); }); @@ -550,7 +556,7 @@ $http->on(Constant::EVENT_TASK, function () use ($register, $domains) { /** @var Utopia\Database\Database $dbForPlatform */ $dbForPlatform = $app->getResource('dbForPlatform'); - Console::loop(function () use ($dbForPlatform, $domains, &$lastSyncUpdate) { + Timer::tick(DOMAIN_SYNC_TIMER * 1000, function () use ($dbForPlatform, $domains, &$lastSyncUpdate) { try { $time = DateTime::now(); $limit = 1000; @@ -589,8 +595,6 @@ $http->on(Constant::EVENT_TASK, function () use ($register, $domains) { } catch (Throwable $th) { Console::error($th->getMessage()); } - }, DOMAIN_SYNC_TIMER, 0, function ($error) { - Console::error($error); }); }); diff --git a/app/init/constants.php b/app/init/constants.php index 16ddcf5551..95269507f1 100644 --- a/app/init/constants.php +++ b/app/init/constants.php @@ -263,7 +263,6 @@ const METRIC_SITES_ID_INBOUND = 'sites.{siteInternalId}.inbound'; const METRIC_SITES_ID_OUTBOUND = 'sites.{siteInternalId}.outbound'; // Resource types - const RESOURCE_TYPE_PROJECTS = 'projects'; const RESOURCE_TYPE_FUNCTIONS = 'functions'; const RESOURCE_TYPE_SITES = 'sites'; @@ -273,10 +272,15 @@ const RESOURCE_TYPE_PROVIDERS = 'providers'; const RESOURCE_TYPE_TOPICS = 'topics'; const RESOURCE_TYPE_SUBSCRIBERS = 'subscribers'; const RESOURCE_TYPE_MESSAGES = 'messages'; +const RESOURCE_TYPE_EXECUTIONS = 'executions'; // Resource types for Tokens - const TOKENS_RESOURCE_TYPE_FILES = 'files'; const TOKENS_RESOURCE_TYPE_SITES = 'sites'; const TOKENS_RESOURCE_TYPE_FUNCTIONS = 'functions'; const TOKENS_RESOURCE_TYPE_DATABASES = 'databases'; + +// Resource types for Schedules +const SCHEDULE_RESOURCE_TYPE_EXECUTION = 'execution'; +const SCHEDULE_RESOURCE_TYPE_FUNCTION = 'function'; +const SCHEDULE_RESOURCE_TYPE_MESSAGE = 'message'; diff --git a/app/init/database/filters.php b/app/init/database/filters.php index 33f5d8077a..c4cfd1ac81 100644 --- a/app/init/database/filters.php +++ b/app/init/database/filters.php @@ -255,6 +255,8 @@ Database::addFilter( ->find('variables', [ Query::equal('resourceInternalId', [$document->getSequence()]), Query::equal('resourceType', $resourceType), + Query::orderAsc('resourceType'), + Query::orderAsc(), Query::limit(APP_LIMIT_SUBQUERY), ]); } diff --git a/app/init/resources.php b/app/init/resources.php index e4e8fbef5e..16307edee3 100644 --- a/app/init/resources.php +++ b/app/init/resources.php @@ -151,7 +151,7 @@ App::setResource('queueForMigrations', function (Publisher $publisher) { App::setResource('queueForStatsResources', function (Publisher $publisher) { return new StatsResources($publisher); }, ['publisher']); -App::setResource('platforms', function (Request $request, Document $console, Document $project) { +App::setResource('platforms', function (Request $request, Document $console, Document $project, Database $dbForPlatform) { $console->setAttribute('platforms', [ // Always allow current host '$collection' => ID::custom('platforms'), 'name' => 'Current Host', @@ -190,11 +190,40 @@ App::setResource('platforms', function (Request $request, Document $console, Doc ], Document::SET_TYPE_APPEND); } + $origin = \parse_url($request->getOrigin(), PHP_URL_HOST); + + if (empty($origin)) { + $origin = \parse_url($request->getReferer(), PHP_URL_HOST); + } + + // Safe if rule with same project ID exists + if (!empty($origin)) { + if (System::getEnv('_APP_RULES_FORMAT') === 'md5') { + $rule = Authorization::skip(fn () => $dbForPlatform->getDocument('rules', md5($origin ?? ''))); + } else { + $rule = Authorization::skip( + fn () => $dbForPlatform->find('rules', [ + Query::equal('domain', [$origin]), + Query::limit(1) + ]) + )[0] ?? new Document(); + } + + if (!$rule->isEmpty() && $rule->getAttribute('projectInternalId') === $project->getSequence()) { + $project->setAttribute('platforms', [ + '$collection' => ID::custom('platforms'), + 'type' => Platform::TYPE_WEB, + 'name' => $origin, + 'hostname' => $origin, + ], Document::SET_TYPE_APPEND); + } + } + return [ ...$console->getAttribute('platforms', []), ...$project->getAttribute('platforms', []), ]; -}, ['request', 'console', 'project']); +}, ['request', 'console', 'project', 'dbForPlatform']); App::setResource('user', function ($mode, $project, $console, $request, $response, $dbForProject, $dbForPlatform) { /** @var Appwrite\Utopia\Request $request */ @@ -375,7 +404,7 @@ App::setResource('dbForProject', function (Group $pools, Database $dbForPlatform if (\in_array($dsn->getHost(), $sharedTables)) { $database ->setSharedTables(true) - ->setTenant((int)$project->getSequence()) + ->setTenant((int) $project->getSequence()) ->setNamespace($dsn->getParam('namespace')); } else { $database @@ -428,7 +457,7 @@ App::setResource('getProjectDB', function (Group $pools, Database $dbForPlatform if (\in_array($dsn->getHost(), $sharedTables)) { $database ->setSharedTables(true) - ->setTenant((int)$project->getSequence()) + ->setTenant((int) $project->getSequence()) ->setNamespace($dsn->getParam('namespace')); } else { $database @@ -458,7 +487,7 @@ App::setResource('getLogsDB', function (Group $pools, Cache $cache) { return function (?Document $project = null) use ($pools, $cache, &$database) { if ($database !== null && $project !== null && !$project->isEmpty() && $project->getId() !== 'console') { - $database->setTenant((int)$project->getSequence()); + $database->setTenant((int) $project->getSequence()); return $database; } @@ -473,7 +502,7 @@ App::setResource('getLogsDB', function (Group $pools, Cache $cache) { // set tenant if ($project !== null && !$project->isEmpty() && $project->getId() !== 'console') { - $database->setTenant((int)$project->getSequence()); + $database->setTenant((int) $project->getSequence()); } return $database; @@ -501,7 +530,7 @@ App::setResource('redis', function () { $pass = System::getEnv('_APP_REDIS_PASS', ''); $redis = new \Redis(); - @$redis->pconnect($host, (int)$port); + @$redis->pconnect($host, (int) $port); if ($pass) { $redis->auth($pass); } @@ -714,7 +743,7 @@ App::setResource('schema', function ($utopia, $dbForProject) { // NOTE: `params` and `urls` are not used internally in the `Schema::build` function below! $params = [ 'list' => function (string $databaseId, string $collectionId, array $args) { - return [ 'queries' => $args['queries']]; + return ['queries' => $args['queries']]; }, 'create' => function (string $databaseId, string $collectionId, array $args) { $id = $args['id'] ?? 'unique()'; @@ -963,7 +992,7 @@ App::setResource('resourceToken', function ($project, $dbForProject, $request) { } $accessedAt = $token->getAttribute('accessedAt', 0); - if (empty($accessedAt) || DatabaseDateTime::formatTz(DatabaseDateTime::addSeconds(new \DateTime(), - APP_RESOURCE_TOKEN_ACCESS)) > $accessedAt) { + if (empty($accessedAt) || DatabaseDateTime::formatTz(DatabaseDateTime::addSeconds(new \DateTime(), -APP_RESOURCE_TOKEN_ACCESS)) > $accessedAt) { $token->setAttribute('accessedAt', DatabaseDateTime::now()); Authorization::skip(fn () => $dbForProject->updateDocument('resourceTokens', $token->getId(), $token)); } @@ -1005,24 +1034,6 @@ App::setResource('httpReferrerSafe', function (Request $request, string $httpRef return $referrer; } - // Safe if rule with same project ID exists - if (!empty($origin)) { - if (System::getEnv('_APP_RULES_FORMAT') === 'md5') { - $rule = Authorization::skip(fn () => $dbForPlatform->getDocument('rules', md5($origin ?? ''))); - } else { - $rule = Authorization::skip( - fn () => $dbForPlatform->find('rules', [ - Query::equal('domain', [$origin]), - Query::limit(1) - ]) - )[0] ?? new Document(); - } - - if (!$rule->isEmpty() && $rule->getAttribute('projectInternalId') === $project->getSequence()) { - return $referrer; - } - } - // Unsafe; Localhost is always safe for ease of local development $origin = 'localhost'; $protocol = \parse_url($request->getOrigin($httpReferrer), PHP_URL_SCHEME); diff --git a/app/realtime.php b/app/realtime.php index bb0d4da78c..fccf5c9a20 100644 --- a/app/realtime.php +++ b/app/realtime.php @@ -604,11 +604,18 @@ $server->onOpen(function (int $connection, SwooleRequest $request) use ($server, $code = 500; } + $message = $th->getMessage(); + + // sanitize 5xx errors + if ($code >= 500 && !App::isDevelopment()) { + $message = 'Error: Server Error'; + } + $response = [ 'type' => 'error', 'data' => [ 'code' => $code, - 'message' => $th->getMessage() + 'message' => $message ] ]; @@ -705,11 +712,23 @@ $server->onMessage(function (int $connection, string $message) use ($server, $re throw new Exception(Exception::REALTIME_MESSAGE_FORMAT_INVALID, 'Message type is not valid.'); } } catch (Throwable $th) { + $code = $th->getCode(); + if (!is_int($code)) { + $code = 500; + } + + $message = $th->getMessage(); + + // sanitize 5xx errors + if ($code >= 500 && !App::isDevelopment()) { + $message = 'Error: Server Error'; + } + $response = [ 'type' => 'error', 'data' => [ - 'code' => $th->getCode(), - 'message' => $th->getMessage() + 'code' => $code, + 'message' => $message ] ]; diff --git a/composer.json b/composer.json index 1dc7288441..9042cb088f 100644 --- a/composer.json +++ b/composer.json @@ -52,7 +52,7 @@ "utopia-php/cache": "0.13.*", "utopia-php/cli": "0.15.*", "utopia-php/config": "0.2.*", - "utopia-php/database": "1.*", + "utopia-php/database": "2.*", "utopia-php/detector": "0.1.*", "utopia-php/domains": "0.8.*", "utopia-php/dns": "0.3.*", diff --git a/composer.lock b/composer.lock index 8e600c326f..32f4903a75 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "7553e976312b0423cc31544abb91caec", + "content-hash": "773efb29b9b584b1249790e0016c823a", "packages": [ { "name": "adhocore/jwt", @@ -3293,16 +3293,16 @@ }, { "name": "utopia-php/abuse", - "version": "1.0.0", + "version": "1.0.1", "source": { "type": "git", "url": "https://github.com/utopia-php/abuse.git", - "reference": "c5e2232033b507a07f72180dc56d37e1872ee7be" + "reference": "cd591568791556d246d901d6aaf9935ab02c3f9a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/utopia-php/abuse/zipball/c5e2232033b507a07f72180dc56d37e1872ee7be", - "reference": "c5e2232033b507a07f72180dc56d37e1872ee7be", + "url": "https://api.github.com/repos/utopia-php/abuse/zipball/cd591568791556d246d901d6aaf9935ab02c3f9a", + "reference": "cd591568791556d246d901d6aaf9935ab02c3f9a", "shasum": "" }, "require": { @@ -3310,7 +3310,7 @@ "ext-pdo": "*", "ext-redis": "*", "php": ">=8.0", - "utopia-php/database": "1.*" + "utopia-php/database": "2.*" }, "require-dev": { "laravel/pint": "1.*", @@ -3338,9 +3338,9 @@ ], "support": { "issues": "https://github.com/utopia-php/abuse/issues", - "source": "https://github.com/utopia-php/abuse/tree/1.0.0" + "source": "https://github.com/utopia-php/abuse/tree/1.0.1" }, - "time": "2025-08-13T09:12:54+00:00" + "time": "2025-09-04T12:46:54+00:00" }, { "name": "utopia-php/analytics", @@ -3390,21 +3390,21 @@ }, { "name": "utopia-php/audit", - "version": "1.0.0", + "version": "1.0.1", "source": { "type": "git", "url": "https://github.com/utopia-php/audit.git", - "reference": "c0ed75f4d068f1f6c2e7149a909490d4214e72bb" + "reference": "5ef26d6a2ab2db7bb86288a1a6ef970307b46f22" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/utopia-php/audit/zipball/c0ed75f4d068f1f6c2e7149a909490d4214e72bb", - "reference": "c0ed75f4d068f1f6c2e7149a909490d4214e72bb", + "url": "https://api.github.com/repos/utopia-php/audit/zipball/5ef26d6a2ab2db7bb86288a1a6ef970307b46f22", + "reference": "5ef26d6a2ab2db7bb86288a1a6ef970307b46f22", "shasum": "" }, "require": { "php": ">=8.0", - "utopia-php/database": "1.*" + "utopia-php/database": "2.*" }, "require-dev": { "laravel/pint": "1.*", @@ -3431,9 +3431,9 @@ ], "support": { "issues": "https://github.com/utopia-php/audit/issues", - "source": "https://github.com/utopia-php/audit/tree/1.0.0" + "source": "https://github.com/utopia-php/audit/tree/1.0.1" }, - "time": "2025-08-13T09:09:00+00:00" + "time": "2025-09-04T12:46:43+00:00" }, { "name": "utopia-php/cache", @@ -3635,16 +3635,16 @@ }, { "name": "utopia-php/database", - "version": "1.5.1", + "version": "2.3.2", "source": { "type": "git", "url": "https://github.com/utopia-php/database.git", - "reference": "56efe4daaf23abb753553acffccdcc04cd6178c9" + "reference": "35c978ddd20b649d119296094686d3cc9fcf161f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/utopia-php/database/zipball/56efe4daaf23abb753553acffccdcc04cd6178c9", - "reference": "56efe4daaf23abb753553acffccdcc04cd6178c9", + "url": "https://api.github.com/repos/utopia-php/database/zipball/35c978ddd20b649d119296094686d3cc9fcf161f", + "reference": "35c978ddd20b649d119296094686d3cc9fcf161f", "shasum": "" }, "require": { @@ -3685,9 +3685,9 @@ ], "support": { "issues": "https://github.com/utopia-php/database/issues", - "source": "https://github.com/utopia-php/database/tree/1.5.1" + "source": "https://github.com/utopia-php/database/tree/2.3.2" }, - "time": "2025-10-01T04:44:14+00:00" + "time": "2025-10-07T03:09:32+00:00" }, { "name": "utopia-php/detector", @@ -4187,16 +4187,16 @@ }, { "name": "utopia-php/migration", - "version": "1.2.0", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/utopia-php/migration.git", - "reference": "42ff497c5231f5a727d1e229419ff1d2195d8093" + "reference": "6fb6f8f032cd34c3c65728a55d494adeac2ff038" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/utopia-php/migration/zipball/42ff497c5231f5a727d1e229419ff1d2195d8093", - "reference": "42ff497c5231f5a727d1e229419ff1d2195d8093", + "url": "https://api.github.com/repos/utopia-php/migration/zipball/6fb6f8f032cd34c3c65728a55d494adeac2ff038", + "reference": "6fb6f8f032cd34c3c65728a55d494adeac2ff038", "shasum": "" }, "require": { @@ -4204,7 +4204,7 @@ "ext-curl": "*", "ext-openssl": "*", "php": ">=8.1", - "utopia-php/database": "1.*", + "utopia-php/database": "2.*", "utopia-php/dsn": "0.2.*", "utopia-php/framework": "0.33.*", "utopia-php/storage": "0.18.*" @@ -4237,9 +4237,9 @@ ], "support": { "issues": "https://github.com/utopia-php/migration/issues", - "source": "https://github.com/utopia-php/migration/tree/1.2.0" + "source": "https://github.com/utopia-php/migration/tree/1.1.0" }, - "time": "2025-09-24T10:32:24+00:00" + "time": "2025-09-10T05:45:30+00:00" }, { "name": "utopia-php/orchestration", diff --git a/docs/examples/1.8.x/client-android/java/account/create-email-verification.md b/docs/examples/1.8.x/client-android/java/account/create-email-verification.md new file mode 100644 index 0000000000..dfbf059d45 --- /dev/null +++ b/docs/examples/1.8.x/client-android/java/account/create-email-verification.md @@ -0,0 +1,22 @@ +import io.appwrite.Client; +import io.appwrite.coroutines.CoroutineCallback; +import io.appwrite.services.Account; + +Client client = new Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject(""); // Your project ID + +Account account = new Account(client); + +account.createEmailVerification( + "https://example.com", // url + new CoroutineCallback<>((result, error) -> { + if (error != null) { + error.printStackTrace(); + return; + } + + Log.d("Appwrite", result.toString()); + }) +); + diff --git a/docs/examples/1.8.x/client-android/java/account/update-email-verification.md b/docs/examples/1.8.x/client-android/java/account/update-email-verification.md new file mode 100644 index 0000000000..9d157c8e92 --- /dev/null +++ b/docs/examples/1.8.x/client-android/java/account/update-email-verification.md @@ -0,0 +1,23 @@ +import io.appwrite.Client; +import io.appwrite.coroutines.CoroutineCallback; +import io.appwrite.services.Account; + +Client client = new Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject(""); // Your project ID + +Account account = new Account(client); + +account.updateEmailVerification( + "", // userId + "", // secret + new CoroutineCallback<>((result, error) -> { + if (error != null) { + error.printStackTrace(); + return; + } + + Log.d("Appwrite", result.toString()); + }) +); + diff --git a/docs/examples/1.8.x/client-android/kotlin/account/create-email-verification.md b/docs/examples/1.8.x/client-android/kotlin/account/create-email-verification.md new file mode 100644 index 0000000000..dc87901eaf --- /dev/null +++ b/docs/examples/1.8.x/client-android/kotlin/account/create-email-verification.md @@ -0,0 +1,13 @@ +import io.appwrite.Client +import io.appwrite.coroutines.CoroutineCallback +import io.appwrite.services.Account + +val client = Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + +val account = Account(client) + +val result = account.createEmailVerification( + url = "https://example.com", +) \ No newline at end of file diff --git a/docs/examples/1.8.x/client-android/kotlin/account/update-email-verification.md b/docs/examples/1.8.x/client-android/kotlin/account/update-email-verification.md new file mode 100644 index 0000000000..9fb21d2d7c --- /dev/null +++ b/docs/examples/1.8.x/client-android/kotlin/account/update-email-verification.md @@ -0,0 +1,14 @@ +import io.appwrite.Client +import io.appwrite.coroutines.CoroutineCallback +import io.appwrite.services.Account + +val client = Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + +val account = Account(client) + +val result = account.updateEmailVerification( + userId = "", + secret = "", +) \ No newline at end of file diff --git a/docs/examples/1.8.x/client-apple/examples/account/create-email-verification.md b/docs/examples/1.8.x/client-apple/examples/account/create-email-verification.md new file mode 100644 index 0000000000..378558ecd6 --- /dev/null +++ b/docs/examples/1.8.x/client-apple/examples/account/create-email-verification.md @@ -0,0 +1,12 @@ +import Appwrite + +let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + +let account = Account(client) + +let token = try await account.createEmailVerification( + url: "https://example.com" +) + diff --git a/docs/examples/1.8.x/client-apple/examples/account/update-email-verification.md b/docs/examples/1.8.x/client-apple/examples/account/update-email-verification.md new file mode 100644 index 0000000000..77ef28eb49 --- /dev/null +++ b/docs/examples/1.8.x/client-apple/examples/account/update-email-verification.md @@ -0,0 +1,13 @@ +import Appwrite + +let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + +let account = Account(client) + +let token = try await account.updateEmailVerification( + userId: "", + secret: "" +) + diff --git a/docs/examples/1.8.x/client-flutter/examples/account/create-email-verification.md b/docs/examples/1.8.x/client-flutter/examples/account/create-email-verification.md new file mode 100644 index 0000000000..823ea2f216 --- /dev/null +++ b/docs/examples/1.8.x/client-flutter/examples/account/create-email-verification.md @@ -0,0 +1,11 @@ +import 'package:appwrite/appwrite.dart'; + +Client client = Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject(''); // Your project ID + +Account account = Account(client); + +Token result = await account.createEmailVerification( + url: 'https://example.com', +); diff --git a/docs/examples/1.8.x/client-flutter/examples/account/update-email-verification.md b/docs/examples/1.8.x/client-flutter/examples/account/update-email-verification.md new file mode 100644 index 0000000000..927aadf184 --- /dev/null +++ b/docs/examples/1.8.x/client-flutter/examples/account/update-email-verification.md @@ -0,0 +1,12 @@ +import 'package:appwrite/appwrite.dart'; + +Client client = Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject(''); // Your project ID + +Account account = Account(client); + +Token result = await account.updateEmailVerification( + userId: '', + secret: '', +); diff --git a/docs/examples/1.8.x/client-graphql/examples/account/create-email-verification.md b/docs/examples/1.8.x/client-graphql/examples/account/create-email-verification.md new file mode 100644 index 0000000000..1781188527 --- /dev/null +++ b/docs/examples/1.8.x/client-graphql/examples/account/create-email-verification.md @@ -0,0 +1,12 @@ +mutation { + accountCreateEmailVerification( + url: "https://example.com" + ) { + _id + _createdAt + userId + secret + expire + phrase + } +} diff --git a/docs/examples/1.8.x/client-graphql/examples/account/update-email-verification.md b/docs/examples/1.8.x/client-graphql/examples/account/update-email-verification.md new file mode 100644 index 0000000000..6386d34bfa --- /dev/null +++ b/docs/examples/1.8.x/client-graphql/examples/account/update-email-verification.md @@ -0,0 +1,13 @@ +mutation { + accountUpdateEmailVerification( + userId: "", + secret: "" + ) { + _id + _createdAt + userId + secret + expire + phrase + } +} diff --git a/docs/examples/1.8.x/client-react-native/examples/account/create-email-verification.md b/docs/examples/1.8.x/client-react-native/examples/account/create-email-verification.md new file mode 100644 index 0000000000..42260501c2 --- /dev/null +++ b/docs/examples/1.8.x/client-react-native/examples/account/create-email-verification.md @@ -0,0 +1,13 @@ +import { Client, Account } from "react-native-appwrite"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject(''); // Your project ID + +const account = new Account(client); + +const result = await account.createEmailVerification({ + url: 'https://example.com' +}); + +console.log(result); diff --git a/docs/examples/1.8.x/client-react-native/examples/account/update-email-verification.md b/docs/examples/1.8.x/client-react-native/examples/account/update-email-verification.md new file mode 100644 index 0000000000..4270380d5f --- /dev/null +++ b/docs/examples/1.8.x/client-react-native/examples/account/update-email-verification.md @@ -0,0 +1,14 @@ +import { Client, Account } from "react-native-appwrite"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject(''); // Your project ID + +const account = new Account(client); + +const result = await account.updateEmailVerification({ + userId: '', + secret: '' +}); + +console.log(result); diff --git a/docs/examples/1.8.x/client-rest/examples/account/create-email-verification.md b/docs/examples/1.8.x/client-rest/examples/account/create-email-verification.md new file mode 100644 index 0000000000..ed5479dbe5 --- /dev/null +++ b/docs/examples/1.8.x/client-rest/examples/account/create-email-verification.md @@ -0,0 +1,11 @@ +POST /v1/account/verification HTTP/1.1 +Host: cloud.appwrite.io +Content-Type: application/json +X-Appwrite-Response-Format: 1.8.0 +X-Appwrite-Project: +X-Appwrite-Session: +X-Appwrite-JWT: + +{ + "url": "https://example.com" +} diff --git a/docs/examples/1.8.x/client-rest/examples/account/update-email-verification.md b/docs/examples/1.8.x/client-rest/examples/account/update-email-verification.md new file mode 100644 index 0000000000..a4dcbf76a3 --- /dev/null +++ b/docs/examples/1.8.x/client-rest/examples/account/update-email-verification.md @@ -0,0 +1,12 @@ +PUT /v1/account/verification HTTP/1.1 +Host: cloud.appwrite.io +Content-Type: application/json +X-Appwrite-Response-Format: 1.8.0 +X-Appwrite-Project: +X-Appwrite-Session: +X-Appwrite-JWT: + +{ + "userId": "", + "secret": "" +} diff --git a/docs/examples/1.8.x/client-web/examples/account/create-email-verification.md b/docs/examples/1.8.x/client-web/examples/account/create-email-verification.md new file mode 100644 index 0000000000..8f93533c35 --- /dev/null +++ b/docs/examples/1.8.x/client-web/examples/account/create-email-verification.md @@ -0,0 +1,13 @@ +import { Client, Account } from "appwrite"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject(''); // Your project ID + +const account = new Account(client); + +const result = await account.createEmailVerification({ + url: 'https://example.com' +}); + +console.log(result); diff --git a/docs/examples/1.8.x/client-web/examples/account/update-email-verification.md b/docs/examples/1.8.x/client-web/examples/account/update-email-verification.md new file mode 100644 index 0000000000..4f1e03f3c6 --- /dev/null +++ b/docs/examples/1.8.x/client-web/examples/account/update-email-verification.md @@ -0,0 +1,14 @@ +import { Client, Account } from "appwrite"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject(''); // Your project ID + +const account = new Account(client); + +const result = await account.updateEmailVerification({ + userId: '', + secret: '' +}); + +console.log(result); diff --git a/docs/examples/1.8.x/console-cli/examples/account/create-email-verification.md b/docs/examples/1.8.x/console-cli/examples/account/create-email-verification.md new file mode 100644 index 0000000000..f9f37f2f8f --- /dev/null +++ b/docs/examples/1.8.x/console-cli/examples/account/create-email-verification.md @@ -0,0 +1,2 @@ +appwrite account create-email-verification \ + --url https://example.com diff --git a/docs/examples/1.8.x/console-cli/examples/account/update-email-verification.md b/docs/examples/1.8.x/console-cli/examples/account/update-email-verification.md new file mode 100644 index 0000000000..02ff32aa57 --- /dev/null +++ b/docs/examples/1.8.x/console-cli/examples/account/update-email-verification.md @@ -0,0 +1,3 @@ +appwrite account update-email-verification \ + --user-id \ + --secret diff --git a/docs/examples/1.8.x/console-web/examples/account/create-email-verification.md b/docs/examples/1.8.x/console-web/examples/account/create-email-verification.md new file mode 100644 index 0000000000..b0e52db469 --- /dev/null +++ b/docs/examples/1.8.x/console-web/examples/account/create-email-verification.md @@ -0,0 +1,13 @@ +import { Client, Account } from "@appwrite.io/console"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject(''); // Your project ID + +const account = new Account(client); + +const result = await account.createEmailVerification({ + url: 'https://example.com' +}); + +console.log(result); diff --git a/docs/examples/1.8.x/console-web/examples/account/update-email-verification.md b/docs/examples/1.8.x/console-web/examples/account/update-email-verification.md new file mode 100644 index 0000000000..e0e09fd4ce --- /dev/null +++ b/docs/examples/1.8.x/console-web/examples/account/update-email-verification.md @@ -0,0 +1,14 @@ +import { Client, Account } from "@appwrite.io/console"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject(''); // Your project ID + +const account = new Account(client); + +const result = await account.updateEmailVerification({ + userId: '', + secret: '' +}); + +console.log(result); diff --git a/docs/examples/1.8.x/console-web/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/console-web/examples/databases/create-line-attribute.md index 3f8ef6dd9d..113ccc8028 100644 --- a/docs/examples/1.8.x/console-web/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/console-web/examples/databases/create-line-attribute.md @@ -11,7 +11,7 @@ const result = await databases.createLineAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [[1, 2], [3, 4], [5, 6]] // optional }); console.log(result); diff --git a/docs/examples/1.8.x/console-web/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/console-web/examples/databases/create-point-attribute.md index 2e4e46ae6f..8e24fb9c0f 100644 --- a/docs/examples/1.8.x/console-web/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/console-web/examples/databases/create-point-attribute.md @@ -11,7 +11,7 @@ const result = await databases.createPointAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [1, 2] // optional }); console.log(result); diff --git a/docs/examples/1.8.x/console-web/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/console-web/examples/databases/create-polygon-attribute.md index d25177d846..82c2e519f0 100644 --- a/docs/examples/1.8.x/console-web/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/console-web/examples/databases/create-polygon-attribute.md @@ -11,7 +11,7 @@ const result = await databases.createPolygonAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional }); console.log(result); diff --git a/docs/examples/1.8.x/console-web/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/console-web/examples/databases/update-line-attribute.md index bceac57b93..85190fc085 100644 --- a/docs/examples/1.8.x/console-web/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/console-web/examples/databases/update-line-attribute.md @@ -11,7 +11,7 @@ const result = await databases.updateLineAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/console-web/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/console-web/examples/databases/update-point-attribute.md index 50799cb639..ec4a2c02c1 100644 --- a/docs/examples/1.8.x/console-web/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/console-web/examples/databases/update-point-attribute.md @@ -11,7 +11,7 @@ const result = await databases.updatePointAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [1, 2], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/console-web/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/console-web/examples/databases/update-polygon-attribute.md index 51d6364e8c..4fa9eb197b 100644 --- a/docs/examples/1.8.x/console-web/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/console-web/examples/databases/update-polygon-attribute.md @@ -11,7 +11,7 @@ const result = await databases.updatePolygonAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/console-web/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/console-web/examples/tablesdb/create-line-column.md index f2229a1782..05b4ec76d0 100644 --- a/docs/examples/1.8.x/console-web/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/console-web/examples/tablesdb/create-line-column.md @@ -11,7 +11,7 @@ const result = await tablesDB.createLineColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [[1, 2], [3, 4], [5, 6]] // optional }); console.log(result); diff --git a/docs/examples/1.8.x/console-web/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/console-web/examples/tablesdb/create-point-column.md index 7240a8632e..a2c94fb247 100644 --- a/docs/examples/1.8.x/console-web/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/console-web/examples/tablesdb/create-point-column.md @@ -11,7 +11,7 @@ const result = await tablesDB.createPointColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [1, 2] // optional }); console.log(result); diff --git a/docs/examples/1.8.x/console-web/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/console-web/examples/tablesdb/create-polygon-column.md index 2908a1e88e..5de3ece01a 100644 --- a/docs/examples/1.8.x/console-web/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/console-web/examples/tablesdb/create-polygon-column.md @@ -11,7 +11,7 @@ const result = await tablesDB.createPolygonColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional }); console.log(result); diff --git a/docs/examples/1.8.x/console-web/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/console-web/examples/tablesdb/update-line-column.md index 12f31b9092..38b5aedb37 100644 --- a/docs/examples/1.8.x/console-web/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/console-web/examples/tablesdb/update-line-column.md @@ -11,7 +11,7 @@ const result = await tablesDB.updateLineColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/console-web/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/console-web/examples/tablesdb/update-point-column.md index d811cc13b6..f361d4c5bc 100644 --- a/docs/examples/1.8.x/console-web/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/console-web/examples/tablesdb/update-point-column.md @@ -11,7 +11,7 @@ const result = await tablesDB.updatePointColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [1, 2], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/console-web/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/console-web/examples/tablesdb/update-polygon-column.md index 5a7b41eff6..64b60d7630 100644 --- a/docs/examples/1.8.x/console-web/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/console-web/examples/tablesdb/update-polygon-column.md @@ -11,7 +11,7 @@ const result = await tablesDB.updatePolygonColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-dart/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-dart/examples/account/create-email-verification.md new file mode 100644 index 0000000000..b10173d190 --- /dev/null +++ b/docs/examples/1.8.x/server-dart/examples/account/create-email-verification.md @@ -0,0 +1,12 @@ +import 'package:dart_appwrite/dart_appwrite.dart'; + +Client client = Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with + +Account account = Account(client); + +Token result = await account.createEmailVerification( + url: 'https://example.com', +); diff --git a/docs/examples/1.8.x/server-dart/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-dart/examples/account/update-email-verification.md new file mode 100644 index 0000000000..b48535a31a --- /dev/null +++ b/docs/examples/1.8.x/server-dart/examples/account/update-email-verification.md @@ -0,0 +1,13 @@ +import 'package:dart_appwrite/dart_appwrite.dart'; + +Client client = Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with + +Account account = Account(client); + +Token result = await account.updateEmailVerification( + userId: '', + secret: '', +); diff --git a/docs/examples/1.8.x/server-dart/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-dart/examples/databases/create-line-attribute.md index ddbe06ccd1..74e8e406b8 100644 --- a/docs/examples/1.8.x/server-dart/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-dart/examples/databases/create-line-attribute.md @@ -12,5 +12,5 @@ AttributeLine result = await databases.createLineAttribute( collectionId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [[1, 2], [3, 4], [5, 6]], // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-dart/examples/databases/create-point-attribute.md index cc1656264c..7a630825a1 100644 --- a/docs/examples/1.8.x/server-dart/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-dart/examples/databases/create-point-attribute.md @@ -12,5 +12,5 @@ AttributePoint result = await databases.createPointAttribute( collectionId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [1, 2], // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-dart/examples/databases/create-polygon-attribute.md index 42050cc078..b0fa8d6a38 100644 --- a/docs/examples/1.8.x/server-dart/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-dart/examples/databases/create-polygon-attribute.md @@ -12,5 +12,5 @@ AttributePolygon result = await databases.createPolygonAttribute( collectionId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-dart/examples/databases/update-line-attribute.md index 30252b2cf7..8787e84433 100644 --- a/docs/examples/1.8.x/server-dart/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-dart/examples/databases/update-line-attribute.md @@ -12,6 +12,6 @@ AttributeLine result = await databases.updateLineAttribute( collectionId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [[1, 2], [3, 4], [5, 6]], // (optional) newKey: '', // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-dart/examples/databases/update-point-attribute.md index 879e007e12..d1a64941d5 100644 --- a/docs/examples/1.8.x/server-dart/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-dart/examples/databases/update-point-attribute.md @@ -12,6 +12,6 @@ AttributePoint result = await databases.updatePointAttribute( collectionId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [1, 2], // (optional) newKey: '', // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-dart/examples/databases/update-polygon-attribute.md index 043596445e..3596475911 100644 --- a/docs/examples/1.8.x/server-dart/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-dart/examples/databases/update-polygon-attribute.md @@ -12,6 +12,6 @@ AttributePolygon result = await databases.updatePolygonAttribute( collectionId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // (optional) newKey: '', // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-dart/examples/tablesdb/create-line-column.md index f1786d5554..e9b578f466 100644 --- a/docs/examples/1.8.x/server-dart/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-dart/examples/tablesdb/create-line-column.md @@ -12,5 +12,5 @@ ColumnLine result = await tablesDB.createLineColumn( tableId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [[1, 2], [3, 4], [5, 6]], // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-dart/examples/tablesdb/create-point-column.md index e6ddf73747..6e055170dc 100644 --- a/docs/examples/1.8.x/server-dart/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-dart/examples/tablesdb/create-point-column.md @@ -12,5 +12,5 @@ ColumnPoint result = await tablesDB.createPointColumn( tableId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [1, 2], // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-dart/examples/tablesdb/create-polygon-column.md index 525a98ff26..5e851f86f1 100644 --- a/docs/examples/1.8.x/server-dart/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-dart/examples/tablesdb/create-polygon-column.md @@ -12,5 +12,5 @@ ColumnPolygon result = await tablesDB.createPolygonColumn( tableId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-dart/examples/tablesdb/update-line-column.md index 6d8ed43143..53d7999d6f 100644 --- a/docs/examples/1.8.x/server-dart/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-dart/examples/tablesdb/update-line-column.md @@ -12,6 +12,6 @@ ColumnLine result = await tablesDB.updateLineColumn( tableId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [[1, 2], [3, 4], [5, 6]], // (optional) newKey: '', // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-dart/examples/tablesdb/update-point-column.md index ba0415b858..5658393b07 100644 --- a/docs/examples/1.8.x/server-dart/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-dart/examples/tablesdb/update-point-column.md @@ -12,6 +12,6 @@ ColumnPoint result = await tablesDB.updatePointColumn( tableId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [1, 2], // (optional) newKey: '', // (optional) ); diff --git a/docs/examples/1.8.x/server-dart/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-dart/examples/tablesdb/update-polygon-column.md index 7a5792d033..b98e8615a4 100644 --- a/docs/examples/1.8.x/server-dart/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-dart/examples/tablesdb/update-polygon-column.md @@ -12,6 +12,6 @@ ColumnPolygon result = await tablesDB.updatePolygonColumn( tableId: '', key: '', xrequired: false, - xdefault: '', // (optional) + xdefault: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // (optional) newKey: '', // (optional) ); diff --git a/docs/examples/1.8.x/server-deno/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-deno/examples/databases/create-line-attribute.md index 65b20a5518..2f6b1f9bd2 100644 --- a/docs/examples/1.8.x/server-deno/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-deno/examples/databases/create-line-attribute.md @@ -12,5 +12,5 @@ const response = await databases.createLineAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [[1,2], [3, 4]] // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-deno/examples/databases/create-point-attribute.md index 6ca0bfc3ea..173c759928 100644 --- a/docs/examples/1.8.x/server-deno/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-deno/examples/databases/create-point-attribute.md @@ -12,5 +12,5 @@ const response = await databases.createPointAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [[1,2], [3, 4]] // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-deno/examples/databases/create-polygon-attribute.md index 65086b3702..13bec65296 100644 --- a/docs/examples/1.8.x/server-deno/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-deno/examples/databases/create-polygon-attribute.md @@ -12,5 +12,5 @@ const response = await databases.createPolygonAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [[1,2], [3, 4]] // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-deno/examples/databases/update-line-attribute.md index 051688199a..a9cdf41f04 100644 --- a/docs/examples/1.8.x/server-deno/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-deno/examples/databases/update-line-attribute.md @@ -12,6 +12,6 @@ const response = await databases.updateLineAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [[1,2], [3, 4]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-deno/examples/databases/update-point-attribute.md index 41ae3e51ee..552db1e60e 100644 --- a/docs/examples/1.8.x/server-deno/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-deno/examples/databases/update-point-attribute.md @@ -12,6 +12,6 @@ const response = await databases.updatePointAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [[1,2], [3, 4]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-deno/examples/databases/update-polygon-attribute.md index 91882ba6e3..fc655f0737 100644 --- a/docs/examples/1.8.x/server-deno/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-deno/examples/databases/update-polygon-attribute.md @@ -12,6 +12,6 @@ const response = await databases.updatePolygonAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [[1,2], [3, 4]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-deno/examples/tablesdb/create-line-column.md index cef681035f..66d02cb64d 100644 --- a/docs/examples/1.8.x/server-deno/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-deno/examples/tablesdb/create-line-column.md @@ -12,5 +12,5 @@ const response = await tablesDB.createLineColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [[1,2], [3, 4]] // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-deno/examples/tablesdb/create-point-column.md index 9b63b7a228..db8034e507 100644 --- a/docs/examples/1.8.x/server-deno/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-deno/examples/tablesdb/create-point-column.md @@ -12,5 +12,5 @@ const response = await tablesDB.createPointColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [[1,2], [3, 4]] // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-deno/examples/tablesdb/create-polygon-column.md index d5a2eae95b..00dbbda632 100644 --- a/docs/examples/1.8.x/server-deno/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-deno/examples/tablesdb/create-polygon-column.md @@ -12,5 +12,5 @@ const response = await tablesDB.createPolygonColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [[1,2], [3, 4]] // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-deno/examples/tablesdb/update-line-column.md index fad46a3e2b..71ddd6bdcf 100644 --- a/docs/examples/1.8.x/server-deno/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-deno/examples/tablesdb/update-line-column.md @@ -12,6 +12,6 @@ const response = await tablesDB.updateLineColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [[1,2], [3, 4]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-deno/examples/tablesdb/update-point-column.md index 6461b96fce..0075c71eba 100644 --- a/docs/examples/1.8.x/server-deno/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-deno/examples/tablesdb/update-point-column.md @@ -12,6 +12,6 @@ const response = await tablesDB.updatePointColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [[1,2], [3, 4]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-deno/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-deno/examples/tablesdb/update-polygon-column.md index aa26d7b52b..c057ba4225 100644 --- a/docs/examples/1.8.x/server-deno/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-deno/examples/tablesdb/update-polygon-column.md @@ -12,6 +12,6 @@ const response = await tablesDB.updatePolygonColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [[1,2], [3, 4]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-dotnet/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-dotnet/examples/account/create-email-verification.md new file mode 100644 index 0000000000..6efee895e0 --- /dev/null +++ b/docs/examples/1.8.x/server-dotnet/examples/account/create-email-verification.md @@ -0,0 +1,14 @@ +using Appwrite; +using Appwrite.Models; +using Appwrite.Services; + +Client client = new Client() + .SetEndPoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .SetProject("") // Your project ID + .SetSession(""); // The user session to authenticate with + +Account account = new Account(client); + +Token result = await account.CreateEmailVerification( + url: "https://example.com" +); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-dotnet/examples/account/update-email-verification.md new file mode 100644 index 0000000000..a336682be3 --- /dev/null +++ b/docs/examples/1.8.x/server-dotnet/examples/account/update-email-verification.md @@ -0,0 +1,15 @@ +using Appwrite; +using Appwrite.Models; +using Appwrite.Services; + +Client client = new Client() + .SetEndPoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .SetProject("") // Your project ID + .SetSession(""); // The user session to authenticate with + +Account account = new Account(client); + +Token result = await account.UpdateEmailVerification( + userId: "", + secret: "" +); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-dotnet/examples/databases/create-line-attribute.md index fc834cd6cd..d0de49457d 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-dotnet/examples/databases/create-line-attribute.md @@ -14,5 +14,5 @@ AttributeLine result = await databases.CreateLineAttribute( collectionId: "", key: "", required: false, - default: "" // optional + default: [[1, 2], [3, 4], [5, 6]] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-dotnet/examples/databases/create-point-attribute.md index 3f8c7d56c0..4843174c1a 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-dotnet/examples/databases/create-point-attribute.md @@ -14,5 +14,5 @@ AttributePoint result = await databases.CreatePointAttribute( collectionId: "", key: "", required: false, - default: "" // optional + default: [1, 2] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-dotnet/examples/databases/create-polygon-attribute.md index 61ce8a14d5..15c8b98696 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-dotnet/examples/databases/create-polygon-attribute.md @@ -14,5 +14,5 @@ AttributePolygon result = await databases.CreatePolygonAttribute( collectionId: "", key: "", required: false, - default: "" // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-dotnet/examples/databases/update-line-attribute.md index 51e85a4d77..0cc21572bc 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-dotnet/examples/databases/update-line-attribute.md @@ -14,6 +14,6 @@ AttributeLine result = await databases.UpdateLineAttribute( collectionId: "", key: "", required: false, - default: "", // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: "" // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-dotnet/examples/databases/update-point-attribute.md index 20822287de..3969b16074 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-dotnet/examples/databases/update-point-attribute.md @@ -14,6 +14,6 @@ AttributePoint result = await databases.UpdatePointAttribute( collectionId: "", key: "", required: false, - default: "", // optional + default: [1, 2], // optional newKey: "" // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-dotnet/examples/databases/update-polygon-attribute.md index 5d5cd108f2..1344574585 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-dotnet/examples/databases/update-polygon-attribute.md @@ -14,6 +14,6 @@ AttributePolygon result = await databases.UpdatePolygonAttribute( collectionId: "", key: "", required: false, - default: "", // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: "" // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-line-column.md index 13a2cde7cb..31dc069815 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-line-column.md @@ -14,5 +14,5 @@ ColumnLine result = await tablesDB.CreateLineColumn( tableId: "", key: "", required: false, - default: "" // optional + default: [[1, 2], [3, 4], [5, 6]] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-point-column.md index 9c3946144b..a1461bcc8f 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-point-column.md @@ -14,5 +14,5 @@ ColumnPoint result = await tablesDB.CreatePointColumn( tableId: "", key: "", required: false, - default: "" // optional + default: [1, 2] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-polygon-column.md index 2787f9b423..e1e92b2d97 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/create-polygon-column.md @@ -14,5 +14,5 @@ ColumnPolygon result = await tablesDB.CreatePolygonColumn( tableId: "", key: "", required: false, - default: "" // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-line-column.md index ce04ab266c..7a7620a98d 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-line-column.md @@ -14,6 +14,6 @@ ColumnLine result = await tablesDB.UpdateLineColumn( tableId: "", key: "", required: false, - default: "", // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: "" // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-point-column.md index e17ebb3178..663f1838a0 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-point-column.md @@ -14,6 +14,6 @@ ColumnPoint result = await tablesDB.UpdatePointColumn( tableId: "", key: "", required: false, - default: "", // optional + default: [1, 2], // optional newKey: "" // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-polygon-column.md index 4137a21174..ac8300ad39 100644 --- a/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-dotnet/examples/tablesdb/update-polygon-column.md @@ -14,6 +14,6 @@ ColumnPolygon result = await tablesDB.UpdatePolygonColumn( tableId: "", key: "", required: false, - default: "", // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: "" // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-go/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-go/examples/account/create-email-verification.md new file mode 100644 index 0000000000..d10b88e21d --- /dev/null +++ b/docs/examples/1.8.x/server-go/examples/account/create-email-verification.md @@ -0,0 +1,19 @@ +package main + +import ( + "fmt" + "github.com/appwrite/sdk-for-go/client" + "github.com/appwrite/sdk-for-go/account" +) + +client := client.New( + client.WithEndpoint("https://.cloud.appwrite.io/v1") + client.WithProject("") + client.WithSession("") +) + +service := account.New(client) + +response, error := service.CreateEmailVerification( + "https://example.com", +) diff --git a/docs/examples/1.8.x/server-go/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-go/examples/account/update-email-verification.md new file mode 100644 index 0000000000..780405d514 --- /dev/null +++ b/docs/examples/1.8.x/server-go/examples/account/update-email-verification.md @@ -0,0 +1,20 @@ +package main + +import ( + "fmt" + "github.com/appwrite/sdk-for-go/client" + "github.com/appwrite/sdk-for-go/account" +) + +client := client.New( + client.WithEndpoint("https://.cloud.appwrite.io/v1") + client.WithProject("") + client.WithSession("") +) + +service := account.New(client) + +response, error := service.UpdateEmailVerification( + "", + "", +) diff --git a/docs/examples/1.8.x/server-go/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-go/examples/databases/create-line-attribute.md index 172a4dfbdb..4993176457 100644 --- a/docs/examples/1.8.x/server-go/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-go/examples/databases/create-line-attribute.md @@ -19,5 +19,5 @@ response, error := service.CreateLineAttribute( "", "", false, - databases.WithCreateLineAttributeDefault(""), + databases.WithCreateLineAttributeDefault(interface{}{[1, 2], [3, 4], [5, 6]}), ) diff --git a/docs/examples/1.8.x/server-go/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-go/examples/databases/create-point-attribute.md index 105021720a..75d5e7908d 100644 --- a/docs/examples/1.8.x/server-go/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-go/examples/databases/create-point-attribute.md @@ -19,5 +19,5 @@ response, error := service.CreatePointAttribute( "", "", false, - databases.WithCreatePointAttributeDefault(""), + databases.WithCreatePointAttributeDefault(interface{}{1, 2}), ) diff --git a/docs/examples/1.8.x/server-go/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-go/examples/databases/create-polygon-attribute.md index f3b596b689..0f89b4237d 100644 --- a/docs/examples/1.8.x/server-go/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-go/examples/databases/create-polygon-attribute.md @@ -19,5 +19,5 @@ response, error := service.CreatePolygonAttribute( "", "", false, - databases.WithCreatePolygonAttributeDefault(""), + databases.WithCreatePolygonAttributeDefault(interface{}{[[1, 2], [3, 4], [5, 6], [1, 2]]}), ) diff --git a/docs/examples/1.8.x/server-go/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-go/examples/databases/update-line-attribute.md index d6ad02967d..209044158f 100644 --- a/docs/examples/1.8.x/server-go/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-go/examples/databases/update-line-attribute.md @@ -19,6 +19,6 @@ response, error := service.UpdateLineAttribute( "", "", false, - databases.WithUpdateLineAttributeDefault(""), + databases.WithUpdateLineAttributeDefault(interface{}{[1, 2], [3, 4], [5, 6]}), databases.WithUpdateLineAttributeNewKey(""), ) diff --git a/docs/examples/1.8.x/server-go/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-go/examples/databases/update-point-attribute.md index d26f5a1006..735b4d8c64 100644 --- a/docs/examples/1.8.x/server-go/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-go/examples/databases/update-point-attribute.md @@ -19,6 +19,6 @@ response, error := service.UpdatePointAttribute( "", "", false, - databases.WithUpdatePointAttributeDefault(""), + databases.WithUpdatePointAttributeDefault(interface{}{1, 2}), databases.WithUpdatePointAttributeNewKey(""), ) diff --git a/docs/examples/1.8.x/server-go/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-go/examples/databases/update-polygon-attribute.md index af29422e13..6499f3640f 100644 --- a/docs/examples/1.8.x/server-go/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-go/examples/databases/update-polygon-attribute.md @@ -19,6 +19,6 @@ response, error := service.UpdatePolygonAttribute( "", "", false, - databases.WithUpdatePolygonAttributeDefault(""), + databases.WithUpdatePolygonAttributeDefault(interface{}{[[1, 2], [3, 4], [5, 6], [1, 2]]}), databases.WithUpdatePolygonAttributeNewKey(""), ) diff --git a/docs/examples/1.8.x/server-go/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-go/examples/tablesdb/create-line-column.md index adbdeb2b86..77b23f872c 100644 --- a/docs/examples/1.8.x/server-go/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-go/examples/tablesdb/create-line-column.md @@ -19,5 +19,5 @@ response, error := service.CreateLineColumn( "", "", false, - tablesdb.WithCreateLineColumnDefault(""), + tablesdb.WithCreateLineColumnDefault(interface{}{[1, 2], [3, 4], [5, 6]}), ) diff --git a/docs/examples/1.8.x/server-go/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-go/examples/tablesdb/create-point-column.md index a0f2b59fae..7faaf786f8 100644 --- a/docs/examples/1.8.x/server-go/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-go/examples/tablesdb/create-point-column.md @@ -19,5 +19,5 @@ response, error := service.CreatePointColumn( "", "", false, - tablesdb.WithCreatePointColumnDefault(""), + tablesdb.WithCreatePointColumnDefault(interface{}{1, 2}), ) diff --git a/docs/examples/1.8.x/server-go/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-go/examples/tablesdb/create-polygon-column.md index 03ae57e71f..10946ef0fd 100644 --- a/docs/examples/1.8.x/server-go/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-go/examples/tablesdb/create-polygon-column.md @@ -19,5 +19,5 @@ response, error := service.CreatePolygonColumn( "", "", false, - tablesdb.WithCreatePolygonColumnDefault(""), + tablesdb.WithCreatePolygonColumnDefault(interface{}{[[1, 2], [3, 4], [5, 6], [1, 2]]}), ) diff --git a/docs/examples/1.8.x/server-go/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-go/examples/tablesdb/update-line-column.md index d2056c2403..397e0b735a 100644 --- a/docs/examples/1.8.x/server-go/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-go/examples/tablesdb/update-line-column.md @@ -19,6 +19,6 @@ response, error := service.UpdateLineColumn( "", "", false, - tablesdb.WithUpdateLineColumnDefault(""), + tablesdb.WithUpdateLineColumnDefault(interface{}{[1, 2], [3, 4], [5, 6]}), tablesdb.WithUpdateLineColumnNewKey(""), ) diff --git a/docs/examples/1.8.x/server-go/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-go/examples/tablesdb/update-point-column.md index 4b5d38174a..970536a6af 100644 --- a/docs/examples/1.8.x/server-go/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-go/examples/tablesdb/update-point-column.md @@ -19,6 +19,6 @@ response, error := service.UpdatePointColumn( "", "", false, - tablesdb.WithUpdatePointColumnDefault(""), + tablesdb.WithUpdatePointColumnDefault(interface{}{1, 2}), tablesdb.WithUpdatePointColumnNewKey(""), ) diff --git a/docs/examples/1.8.x/server-go/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-go/examples/tablesdb/update-polygon-column.md index 81cd394e9a..8e627d178d 100644 --- a/docs/examples/1.8.x/server-go/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-go/examples/tablesdb/update-polygon-column.md @@ -19,6 +19,6 @@ response, error := service.UpdatePolygonColumn( "", "", false, - tablesdb.WithUpdatePolygonColumnDefault(""), + tablesdb.WithUpdatePolygonColumnDefault(interface{}{[[1, 2], [3, 4], [5, 6], [1, 2]]}), tablesdb.WithUpdatePolygonColumnNewKey(""), ) diff --git a/docs/examples/1.8.x/server-graphql/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-graphql/examples/account/create-email-verification.md new file mode 100644 index 0000000000..1781188527 --- /dev/null +++ b/docs/examples/1.8.x/server-graphql/examples/account/create-email-verification.md @@ -0,0 +1,12 @@ +mutation { + accountCreateEmailVerification( + url: "https://example.com" + ) { + _id + _createdAt + userId + secret + expire + phrase + } +} diff --git a/docs/examples/1.8.x/server-graphql/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-graphql/examples/account/update-email-verification.md new file mode 100644 index 0000000000..6386d34bfa --- /dev/null +++ b/docs/examples/1.8.x/server-graphql/examples/account/update-email-verification.md @@ -0,0 +1,13 @@ +mutation { + accountUpdateEmailVerification( + userId: "", + secret: "" + ) { + _id + _createdAt + userId + secret + expire + phrase + } +} diff --git a/docs/examples/1.8.x/server-graphql/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-graphql/examples/databases/create-line-attribute.md index 3cb90718cd..3ecff7a87d 100644 --- a/docs/examples/1.8.x/server-graphql/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-graphql/examples/databases/create-line-attribute.md @@ -4,7 +4,7 @@ mutation { collectionId: "", key: "", required: false, - default: "" + default: [[1, 2], [3, 4], [5, 6]] ) { key type diff --git a/docs/examples/1.8.x/server-graphql/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-graphql/examples/databases/create-point-attribute.md index 719c49272a..f3ba5285d4 100644 --- a/docs/examples/1.8.x/server-graphql/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-graphql/examples/databases/create-point-attribute.md @@ -4,7 +4,7 @@ mutation { collectionId: "", key: "", required: false, - default: "" + default: [1, 2] ) { key type diff --git a/docs/examples/1.8.x/server-graphql/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-graphql/examples/databases/create-polygon-attribute.md index 3686981f25..19caa389a5 100644 --- a/docs/examples/1.8.x/server-graphql/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-graphql/examples/databases/create-polygon-attribute.md @@ -4,7 +4,7 @@ mutation { collectionId: "", key: "", required: false, - default: "" + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] ) { key type diff --git a/docs/examples/1.8.x/server-graphql/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-graphql/examples/databases/update-line-attribute.md index d04da21175..2f96ecf958 100644 --- a/docs/examples/1.8.x/server-graphql/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-graphql/examples/databases/update-line-attribute.md @@ -4,7 +4,7 @@ mutation { collectionId: "", key: "", required: false, - default: "", + default: [[1, 2], [3, 4], [5, 6]], newKey: "" ) { key diff --git a/docs/examples/1.8.x/server-graphql/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-graphql/examples/databases/update-point-attribute.md index 03cc5456b3..b031c3a6ea 100644 --- a/docs/examples/1.8.x/server-graphql/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-graphql/examples/databases/update-point-attribute.md @@ -4,7 +4,7 @@ mutation { collectionId: "", key: "", required: false, - default: "", + default: [1, 2], newKey: "" ) { key diff --git a/docs/examples/1.8.x/server-graphql/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-graphql/examples/databases/update-polygon-attribute.md index de5150e2aa..59498299c6 100644 --- a/docs/examples/1.8.x/server-graphql/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-graphql/examples/databases/update-polygon-attribute.md @@ -4,7 +4,7 @@ mutation { collectionId: "", key: "", required: false, - default: "", + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], newKey: "" ) { key diff --git a/docs/examples/1.8.x/server-graphql/examples/functions/create-duplicate-deployment.md b/docs/examples/1.8.x/server-graphql/examples/functions/create-duplicate-deployment.md index cdd92c2a02..bc3587fcec 100644 --- a/docs/examples/1.8.x/server-graphql/examples/functions/create-duplicate-deployment.md +++ b/docs/examples/1.8.x/server-graphql/examples/functions/create-duplicate-deployment.md @@ -24,12 +24,12 @@ mutation { providerRepositoryName providerRepositoryOwner providerRepositoryUrl - providerBranch providerCommitHash providerCommitAuthorUrl providerCommitAuthor providerCommitMessage providerCommitUrl + providerBranch providerBranchUrl } } diff --git a/docs/examples/1.8.x/server-graphql/examples/functions/create-template-deployment.md b/docs/examples/1.8.x/server-graphql/examples/functions/create-template-deployment.md index 12c50c32f3..0ce968e5f4 100644 --- a/docs/examples/1.8.x/server-graphql/examples/functions/create-template-deployment.md +++ b/docs/examples/1.8.x/server-graphql/examples/functions/create-template-deployment.md @@ -27,12 +27,12 @@ mutation { providerRepositoryName providerRepositoryOwner providerRepositoryUrl - providerBranch providerCommitHash providerCommitAuthorUrl providerCommitAuthor providerCommitMessage providerCommitUrl + providerBranch providerBranchUrl } } diff --git a/docs/examples/1.8.x/server-graphql/examples/functions/create-vcs-deployment.md b/docs/examples/1.8.x/server-graphql/examples/functions/create-vcs-deployment.md index ebfced2c68..60a78c41ca 100644 --- a/docs/examples/1.8.x/server-graphql/examples/functions/create-vcs-deployment.md +++ b/docs/examples/1.8.x/server-graphql/examples/functions/create-vcs-deployment.md @@ -25,12 +25,12 @@ mutation { providerRepositoryName providerRepositoryOwner providerRepositoryUrl - providerBranch providerCommitHash providerCommitAuthorUrl providerCommitAuthor providerCommitMessage providerCommitUrl + providerBranch providerBranchUrl } } diff --git a/docs/examples/1.8.x/server-graphql/examples/functions/update-deployment-status.md b/docs/examples/1.8.x/server-graphql/examples/functions/update-deployment-status.md index 50df97fd21..68735b35ca 100644 --- a/docs/examples/1.8.x/server-graphql/examples/functions/update-deployment-status.md +++ b/docs/examples/1.8.x/server-graphql/examples/functions/update-deployment-status.md @@ -23,12 +23,12 @@ mutation { providerRepositoryName providerRepositoryOwner providerRepositoryUrl - providerBranch providerCommitHash providerCommitAuthorUrl providerCommitAuthor providerCommitMessage providerCommitUrl + providerBranch providerBranchUrl } } diff --git a/docs/examples/1.8.x/server-graphql/examples/sites/create-duplicate-deployment.md b/docs/examples/1.8.x/server-graphql/examples/sites/create-duplicate-deployment.md index 6226282651..1b2d3dc131 100644 --- a/docs/examples/1.8.x/server-graphql/examples/sites/create-duplicate-deployment.md +++ b/docs/examples/1.8.x/server-graphql/examples/sites/create-duplicate-deployment.md @@ -23,12 +23,12 @@ mutation { providerRepositoryName providerRepositoryOwner providerRepositoryUrl - providerBranch providerCommitHash providerCommitAuthorUrl providerCommitAuthor providerCommitMessage providerCommitUrl + providerBranch providerBranchUrl } } diff --git a/docs/examples/1.8.x/server-graphql/examples/sites/create-template-deployment.md b/docs/examples/1.8.x/server-graphql/examples/sites/create-template-deployment.md index 72562556e4..f63d8c5e5a 100644 --- a/docs/examples/1.8.x/server-graphql/examples/sites/create-template-deployment.md +++ b/docs/examples/1.8.x/server-graphql/examples/sites/create-template-deployment.md @@ -27,12 +27,12 @@ mutation { providerRepositoryName providerRepositoryOwner providerRepositoryUrl - providerBranch providerCommitHash providerCommitAuthorUrl providerCommitAuthor providerCommitMessage providerCommitUrl + providerBranch providerBranchUrl } } diff --git a/docs/examples/1.8.x/server-graphql/examples/sites/create-vcs-deployment.md b/docs/examples/1.8.x/server-graphql/examples/sites/create-vcs-deployment.md index ccc18cf2e0..6c5241e734 100644 --- a/docs/examples/1.8.x/server-graphql/examples/sites/create-vcs-deployment.md +++ b/docs/examples/1.8.x/server-graphql/examples/sites/create-vcs-deployment.md @@ -25,12 +25,12 @@ mutation { providerRepositoryName providerRepositoryOwner providerRepositoryUrl - providerBranch providerCommitHash providerCommitAuthorUrl providerCommitAuthor providerCommitMessage providerCommitUrl + providerBranch providerBranchUrl } } diff --git a/docs/examples/1.8.x/server-graphql/examples/sites/update-deployment-status.md b/docs/examples/1.8.x/server-graphql/examples/sites/update-deployment-status.md index 92751c167f..24064428e2 100644 --- a/docs/examples/1.8.x/server-graphql/examples/sites/update-deployment-status.md +++ b/docs/examples/1.8.x/server-graphql/examples/sites/update-deployment-status.md @@ -23,12 +23,12 @@ mutation { providerRepositoryName providerRepositoryOwner providerRepositoryUrl - providerBranch providerCommitHash providerCommitAuthorUrl providerCommitAuthor providerCommitMessage providerCommitUrl + providerBranch providerBranchUrl } } diff --git a/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-line-column.md index 322c48a191..67fed4416c 100644 --- a/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-line-column.md @@ -4,7 +4,7 @@ mutation { tableId: "", key: "", required: false, - default: "" + default: [[1, 2], [3, 4], [5, 6]] ) { key type diff --git a/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-point-column.md index 9c5d7c85d2..20f31dc9c1 100644 --- a/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-point-column.md @@ -4,7 +4,7 @@ mutation { tableId: "", key: "", required: false, - default: "" + default: [1, 2] ) { key type diff --git a/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-polygon-column.md index a930675ee6..7f349c03b9 100644 --- a/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-graphql/examples/tablesdb/create-polygon-column.md @@ -4,7 +4,7 @@ mutation { tableId: "", key: "", required: false, - default: "" + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] ) { key type diff --git a/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-line-column.md index 973bc4740c..ebb7bb1749 100644 --- a/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-line-column.md @@ -4,7 +4,7 @@ mutation { tableId: "", key: "", required: false, - default: "", + default: [[1, 2], [3, 4], [5, 6]], newKey: "" ) { key diff --git a/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-point-column.md index 8cfb389679..81d75c3b19 100644 --- a/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-point-column.md @@ -4,7 +4,7 @@ mutation { tableId: "", key: "", required: false, - default: "", + default: [1, 2], newKey: "" ) { key diff --git a/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-polygon-column.md index ef0d58be0c..3b291a452c 100644 --- a/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-graphql/examples/tablesdb/update-polygon-column.md @@ -4,7 +4,7 @@ mutation { tableId: "", key: "", required: false, - default: "", + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], newKey: "" ) { key diff --git a/docs/examples/1.8.x/server-kotlin/java/account/create-email-verification.md b/docs/examples/1.8.x/server-kotlin/java/account/create-email-verification.md new file mode 100644 index 0000000000..de80353b29 --- /dev/null +++ b/docs/examples/1.8.x/server-kotlin/java/account/create-email-verification.md @@ -0,0 +1,23 @@ +import io.appwrite.Client; +import io.appwrite.coroutines.CoroutineCallback; +import io.appwrite.services.Account; + +Client client = new Client() + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + .setSession(""); // The user session to authenticate with + +Account account = new Account(client); + +account.createEmailVerification( + "https://example.com", // url + new CoroutineCallback<>((result, error) -> { + if (error != null) { + error.printStackTrace(); + return; + } + + System.out.println(result); + }) +); + diff --git a/docs/examples/1.8.x/server-kotlin/java/account/update-email-verification.md b/docs/examples/1.8.x/server-kotlin/java/account/update-email-verification.md new file mode 100644 index 0000000000..92dfd8d00c --- /dev/null +++ b/docs/examples/1.8.x/server-kotlin/java/account/update-email-verification.md @@ -0,0 +1,24 @@ +import io.appwrite.Client; +import io.appwrite.coroutines.CoroutineCallback; +import io.appwrite.services.Account; + +Client client = new Client() + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + .setSession(""); // The user session to authenticate with + +Account account = new Account(client); + +account.updateEmailVerification( + "", // userId + "", // secret + new CoroutineCallback<>((result, error) -> { + if (error != null) { + error.printStackTrace(); + return; + } + + System.out.println(result); + }) +); + diff --git a/docs/examples/1.8.x/server-kotlin/java/databases/create-line-attribute.md b/docs/examples/1.8.x/server-kotlin/java/databases/create-line-attribute.md index 36f79b946d..ad988b8773 100644 --- a/docs/examples/1.8.x/server-kotlin/java/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/java/databases/create-line-attribute.md @@ -14,7 +14,7 @@ databases.createLineAttribute( "", // collectionId "", // key false, // required - "", // default (optional) + listOf([1, 2], [3, 4], [5, 6]), // default (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { error.printStackTrace(); diff --git a/docs/examples/1.8.x/server-kotlin/java/databases/create-point-attribute.md b/docs/examples/1.8.x/server-kotlin/java/databases/create-point-attribute.md index 5a8a39b0cc..89d7cc7177 100644 --- a/docs/examples/1.8.x/server-kotlin/java/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/java/databases/create-point-attribute.md @@ -14,7 +14,7 @@ databases.createPointAttribute( "", // collectionId "", // key false, // required - "", // default (optional) + listOf(1, 2), // default (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { error.printStackTrace(); diff --git a/docs/examples/1.8.x/server-kotlin/java/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-kotlin/java/databases/create-polygon-attribute.md index 22ee4d5cdf..556fb38481 100644 --- a/docs/examples/1.8.x/server-kotlin/java/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/java/databases/create-polygon-attribute.md @@ -14,7 +14,7 @@ databases.createPolygonAttribute( "", // collectionId "", // key false, // required - "", // default (optional) + listOf([[1, 2], [3, 4], [5, 6], [1, 2]]), // default (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { error.printStackTrace(); diff --git a/docs/examples/1.8.x/server-kotlin/java/databases/update-line-attribute.md b/docs/examples/1.8.x/server-kotlin/java/databases/update-line-attribute.md index 7c83476148..6a4265bbda 100644 --- a/docs/examples/1.8.x/server-kotlin/java/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/java/databases/update-line-attribute.md @@ -14,7 +14,7 @@ databases.updateLineAttribute( "", // collectionId "", // key false, // required - "", // default (optional) + listOf([1, 2], [3, 4], [5, 6]), // default (optional) "", // newKey (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { diff --git a/docs/examples/1.8.x/server-kotlin/java/databases/update-point-attribute.md b/docs/examples/1.8.x/server-kotlin/java/databases/update-point-attribute.md index b0a233f678..38d48c27e8 100644 --- a/docs/examples/1.8.x/server-kotlin/java/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/java/databases/update-point-attribute.md @@ -14,7 +14,7 @@ databases.updatePointAttribute( "", // collectionId "", // key false, // required - "", // default (optional) + listOf(1, 2), // default (optional) "", // newKey (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { diff --git a/docs/examples/1.8.x/server-kotlin/java/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-kotlin/java/databases/update-polygon-attribute.md index 1d365896a2..6e6fd08575 100644 --- a/docs/examples/1.8.x/server-kotlin/java/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/java/databases/update-polygon-attribute.md @@ -14,7 +14,7 @@ databases.updatePolygonAttribute( "", // collectionId "", // key false, // required - "", // default (optional) + listOf([[1, 2], [3, 4], [5, 6], [1, 2]]), // default (optional) "", // newKey (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { diff --git a/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-line-column.md index 64952912c2..afe029ebe8 100644 --- a/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-line-column.md @@ -14,7 +14,7 @@ tablesDB.createLineColumn( "", // tableId "", // key false, // required - "", // default (optional) + listOf([1, 2], [3, 4], [5, 6]), // default (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { error.printStackTrace(); diff --git a/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-point-column.md index d0ddef983c..2c9941b09c 100644 --- a/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-point-column.md @@ -14,7 +14,7 @@ tablesDB.createPointColumn( "", // tableId "", // key false, // required - "", // default (optional) + listOf(1, 2), // default (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { error.printStackTrace(); diff --git a/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-polygon-column.md index 3aa5487cc2..58ca798381 100644 --- a/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-kotlin/java/tablesdb/create-polygon-column.md @@ -14,7 +14,7 @@ tablesDB.createPolygonColumn( "", // tableId "", // key false, // required - "", // default (optional) + listOf([[1, 2], [3, 4], [5, 6], [1, 2]]), // default (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { error.printStackTrace(); diff --git a/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-line-column.md index a1a0c67f5d..4c65a907f7 100644 --- a/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-line-column.md @@ -14,7 +14,7 @@ tablesDB.updateLineColumn( "", // tableId "", // key false, // required - "", // default (optional) + listOf([1, 2], [3, 4], [5, 6]), // default (optional) "", // newKey (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { diff --git a/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-point-column.md index 45565063a0..56ac86a6f0 100644 --- a/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-point-column.md @@ -14,7 +14,7 @@ tablesDB.updatePointColumn( "", // tableId "", // key false, // required - "", // default (optional) + listOf(1, 2), // default (optional) "", // newKey (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { diff --git a/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-polygon-column.md index d7757bd580..189d473175 100644 --- a/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-kotlin/java/tablesdb/update-polygon-column.md @@ -14,7 +14,7 @@ tablesDB.updatePolygonColumn( "", // tableId "", // key false, // required - "", // default (optional) + listOf([[1, 2], [3, 4], [5, 6], [1, 2]]), // default (optional) "", // newKey (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/account/create-email-verification.md b/docs/examples/1.8.x/server-kotlin/kotlin/account/create-email-verification.md new file mode 100644 index 0000000000..4ef178fb9f --- /dev/null +++ b/docs/examples/1.8.x/server-kotlin/kotlin/account/create-email-verification.md @@ -0,0 +1,14 @@ +import io.appwrite.Client +import io.appwrite.coroutines.CoroutineCallback +import io.appwrite.services.Account + +val client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + .setSession("") // The user session to authenticate with + +val account = Account(client) + +val response = account.createEmailVerification( + url = "https://example.com" +) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/account/update-email-verification.md b/docs/examples/1.8.x/server-kotlin/kotlin/account/update-email-verification.md new file mode 100644 index 0000000000..6eb97bccc2 --- /dev/null +++ b/docs/examples/1.8.x/server-kotlin/kotlin/account/update-email-verification.md @@ -0,0 +1,15 @@ +import io.appwrite.Client +import io.appwrite.coroutines.CoroutineCallback +import io.appwrite.services.Account + +val client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + .setSession("") // The user session to authenticate with + +val account = Account(client) + +val response = account.updateEmailVerification( + userId = "", + secret = "" +) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-line-attribute.md b/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-line-attribute.md index 187f875c6b..af9a4d2425 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-line-attribute.md @@ -14,5 +14,5 @@ val response = databases.createLineAttribute( collectionId = "", key = "", required = false, - default = "" // optional + default = listOf([1, 2], [3, 4], [5, 6]) // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-point-attribute.md b/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-point-attribute.md index d6915c1f5b..04f095ee4e 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-point-attribute.md @@ -14,5 +14,5 @@ val response = databases.createPointAttribute( collectionId = "", key = "", required = false, - default = "" // optional + default = listOf(1, 2) // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-polygon-attribute.md index 0a22962525..ffeb3c4398 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/databases/create-polygon-attribute.md @@ -14,5 +14,5 @@ val response = databases.createPolygonAttribute( collectionId = "", key = "", required = false, - default = "" // optional + default = listOf([[1, 2], [3, 4], [5, 6], [1, 2]]) // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-line-attribute.md b/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-line-attribute.md index c4b515ad47..0d6b40a2d8 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-line-attribute.md @@ -14,6 +14,6 @@ val response = databases.updateLineAttribute( collectionId = "", key = "", required = false, - default = "", // optional + default = listOf([1, 2], [3, 4], [5, 6]), // optional newKey = "" // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-point-attribute.md b/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-point-attribute.md index 02bca873d7..68d5311c98 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-point-attribute.md @@ -14,6 +14,6 @@ val response = databases.updatePointAttribute( collectionId = "", key = "", required = false, - default = "", // optional + default = listOf(1, 2), // optional newKey = "" // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-polygon-attribute.md index b8c0fc94a0..66bbdea11c 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/databases/update-polygon-attribute.md @@ -14,6 +14,6 @@ val response = databases.updatePolygonAttribute( collectionId = "", key = "", required = false, - default = "", // optional + default = listOf([[1, 2], [3, 4], [5, 6], [1, 2]]), // optional newKey = "" // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-line-column.md index 0993eed919..3dd9ebd083 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-line-column.md @@ -14,5 +14,5 @@ val response = tablesDB.createLineColumn( tableId = "", key = "", required = false, - default = "" // optional + default = listOf([1, 2], [3, 4], [5, 6]) // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-point-column.md index e18bfc34ed..7fd6ad7504 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-point-column.md @@ -14,5 +14,5 @@ val response = tablesDB.createPointColumn( tableId = "", key = "", required = false, - default = "" // optional + default = listOf(1, 2) // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-polygon-column.md index 2f8ffd8125..218b4cba33 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/create-polygon-column.md @@ -14,5 +14,5 @@ val response = tablesDB.createPolygonColumn( tableId = "", key = "", required = false, - default = "" // optional + default = listOf([[1, 2], [3, 4], [5, 6], [1, 2]]) // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-line-column.md index 05781dd6dd..571d25206c 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-line-column.md @@ -14,6 +14,6 @@ val response = tablesDB.updateLineColumn( tableId = "", key = "", required = false, - default = "", // optional + default = listOf([1, 2], [3, 4], [5, 6]), // optional newKey = "" // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-point-column.md index 947b4410d6..2230e59f8e 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-point-column.md @@ -14,6 +14,6 @@ val response = tablesDB.updatePointColumn( tableId = "", key = "", required = false, - default = "", // optional + default = listOf(1, 2), // optional newKey = "" // optional ) diff --git a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-polygon-column.md index b9da6350f6..db3a46bc6c 100644 --- a/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-kotlin/kotlin/tablesdb/update-polygon-column.md @@ -14,6 +14,6 @@ val response = tablesDB.updatePolygonColumn( tableId = "", key = "", required = false, - default = "", // optional + default = listOf([[1, 2], [3, 4], [5, 6], [1, 2]]), // optional newKey = "" // optional ) diff --git a/docs/examples/1.8.x/server-nodejs/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-nodejs/examples/account/create-email-verification.md new file mode 100644 index 0000000000..e2aaf8015a --- /dev/null +++ b/docs/examples/1.8.x/server-nodejs/examples/account/create-email-verification.md @@ -0,0 +1,12 @@ +const sdk = require('node-appwrite'); + +const client = new sdk.Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with + +const account = new sdk.Account(client); + +const result = await account.createEmailVerification({ + url: 'https://example.com' +}); diff --git a/docs/examples/1.8.x/server-nodejs/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-nodejs/examples/account/update-email-verification.md new file mode 100644 index 0000000000..eb6507e332 --- /dev/null +++ b/docs/examples/1.8.x/server-nodejs/examples/account/update-email-verification.md @@ -0,0 +1,13 @@ +const sdk = require('node-appwrite'); + +const client = new sdk.Client() + .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with + +const account = new sdk.Account(client); + +const result = await account.updateEmailVerification({ + userId: '', + secret: '' +}); diff --git a/docs/examples/1.8.x/server-nodejs/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-nodejs/examples/databases/create-line-attribute.md index 36584b9ee2..160bb5b9dc 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-nodejs/examples/databases/create-line-attribute.md @@ -12,5 +12,5 @@ const result = await databases.createLineAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [[1, 2], [3, 4], [5, 6]] // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-nodejs/examples/databases/create-point-attribute.md index 9aba8c3eb7..e65f5bd58d 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-nodejs/examples/databases/create-point-attribute.md @@ -12,5 +12,5 @@ const result = await databases.createPointAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [1, 2] // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-nodejs/examples/databases/create-polygon-attribute.md index 34e1c84708..3d51887414 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-nodejs/examples/databases/create-polygon-attribute.md @@ -12,5 +12,5 @@ const result = await databases.createPolygonAttribute({ collectionId: '', key: '', required: false, - default: '' // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-nodejs/examples/databases/update-line-attribute.md index 7d04a6eb1e..3c4d785def 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-nodejs/examples/databases/update-line-attribute.md @@ -12,6 +12,6 @@ const result = await databases.updateLineAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-nodejs/examples/databases/update-point-attribute.md index 092f85cc5a..0da3b338a4 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-nodejs/examples/databases/update-point-attribute.md @@ -12,6 +12,6 @@ const result = await databases.updatePointAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [1, 2], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-nodejs/examples/databases/update-polygon-attribute.md index 04c1467cde..c7767cb902 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-nodejs/examples/databases/update-polygon-attribute.md @@ -12,6 +12,6 @@ const result = await databases.updatePolygonAttribute({ collectionId: '', key: '', required: false, - default: '', // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-line-column.md index c9d2782104..84b941c38d 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-line-column.md @@ -12,5 +12,5 @@ const result = await tablesDB.createLineColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [[1, 2], [3, 4], [5, 6]] // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-point-column.md index ec29e1dfae..c59e420ee3 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-point-column.md @@ -12,5 +12,5 @@ const result = await tablesDB.createPointColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [1, 2] // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-polygon-column.md index 2adda2eaa2..36f2f4ca5c 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/create-polygon-column.md @@ -12,5 +12,5 @@ const result = await tablesDB.createPolygonColumn({ tableId: '', key: '', required: false, - default: '' // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-line-column.md index 68b86dabdc..4ec0abe5f9 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-line-column.md @@ -12,6 +12,6 @@ const result = await tablesDB.updateLineColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-point-column.md index c1484992a2..cddb1989af 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-point-column.md @@ -12,6 +12,6 @@ const result = await tablesDB.updatePointColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [1, 2], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-polygon-column.md index 0805b4131e..963db8bae7 100644 --- a/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-nodejs/examples/tablesdb/update-polygon-column.md @@ -12,6 +12,6 @@ const result = await tablesDB.updatePolygonColumn({ tableId: '', key: '', required: false, - default: '', // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: '' // optional }); diff --git a/docs/examples/1.8.x/server-php/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-php/examples/account/create-email-verification.md new file mode 100644 index 0000000000..691d6fa300 --- /dev/null +++ b/docs/examples/1.8.x/server-php/examples/account/create-email-verification.md @@ -0,0 +1,15 @@ +setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + ->setProject('') // Your project ID + ->setSession(''); // The user session to authenticate with + +$account = new Account($client); + +$result = $account->createEmailVerification( + url: 'https://example.com' +); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-php/examples/account/update-email-verification.md new file mode 100644 index 0000000000..95cd1b5e42 --- /dev/null +++ b/docs/examples/1.8.x/server-php/examples/account/update-email-verification.md @@ -0,0 +1,16 @@ +setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint + ->setProject('') // Your project ID + ->setSession(''); // The user session to authenticate with + +$account = new Account($client); + +$result = $account->updateEmailVerification( + userId: '', + secret: '' +); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-php/examples/databases/create-line-attribute.md index 5d4f968a4c..56d007c67c 100644 --- a/docs/examples/1.8.x/server-php/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-php/examples/databases/create-line-attribute.md @@ -15,5 +15,5 @@ $result = $databases->createLineAttribute( collectionId: '', key: '', required: false, - default: '' // optional + default: [[1, 2], [3, 4], [5, 6]] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-php/examples/databases/create-point-attribute.md index 1c8cdb508e..dee0801178 100644 --- a/docs/examples/1.8.x/server-php/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-php/examples/databases/create-point-attribute.md @@ -15,5 +15,5 @@ $result = $databases->createPointAttribute( collectionId: '', key: '', required: false, - default: '' // optional + default: [1, 2] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-php/examples/databases/create-polygon-attribute.md index 0608d33f4f..d745589329 100644 --- a/docs/examples/1.8.x/server-php/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-php/examples/databases/create-polygon-attribute.md @@ -15,5 +15,5 @@ $result = $databases->createPolygonAttribute( collectionId: '', key: '', required: false, - default: '' // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-php/examples/databases/update-line-attribute.md index a5de5459ae..86b8f646e8 100644 --- a/docs/examples/1.8.x/server-php/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-php/examples/databases/update-line-attribute.md @@ -15,6 +15,6 @@ $result = $databases->updateLineAttribute( collectionId: '', key: '', required: false, - default: '', // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: '' // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-php/examples/databases/update-point-attribute.md index 0499663762..cdff22656c 100644 --- a/docs/examples/1.8.x/server-php/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-php/examples/databases/update-point-attribute.md @@ -15,6 +15,6 @@ $result = $databases->updatePointAttribute( collectionId: '', key: '', required: false, - default: '', // optional + default: [1, 2], // optional newKey: '' // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-php/examples/databases/update-polygon-attribute.md index 99c63f19a2..c2736bd4bf 100644 --- a/docs/examples/1.8.x/server-php/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-php/examples/databases/update-polygon-attribute.md @@ -15,6 +15,6 @@ $result = $databases->updatePolygonAttribute( collectionId: '', key: '', required: false, - default: '', // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: '' // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-php/examples/tablesdb/create-line-column.md index daab57e198..69f2e66717 100644 --- a/docs/examples/1.8.x/server-php/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-php/examples/tablesdb/create-line-column.md @@ -15,5 +15,5 @@ $result = $tablesDB->createLineColumn( tableId: '', key: '', required: false, - default: '' // optional + default: [[1, 2], [3, 4], [5, 6]] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-php/examples/tablesdb/create-point-column.md index 6b8cf1d0ae..006c9e0089 100644 --- a/docs/examples/1.8.x/server-php/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-php/examples/tablesdb/create-point-column.md @@ -15,5 +15,5 @@ $result = $tablesDB->createPointColumn( tableId: '', key: '', required: false, - default: '' // optional + default: [1, 2] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-php/examples/tablesdb/create-polygon-column.md index 11147466f9..20fb27161e 100644 --- a/docs/examples/1.8.x/server-php/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-php/examples/tablesdb/create-polygon-column.md @@ -15,5 +15,5 @@ $result = $tablesDB->createPolygonColumn( tableId: '', key: '', required: false, - default: '' // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-php/examples/tablesdb/update-line-column.md index ac2584d6e3..56a557cbe6 100644 --- a/docs/examples/1.8.x/server-php/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-php/examples/tablesdb/update-line-column.md @@ -15,6 +15,6 @@ $result = $tablesDB->updateLineColumn( tableId: '', key: '', required: false, - default: '', // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: '' // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-php/examples/tablesdb/update-point-column.md index 159f893a52..abe8b737ca 100644 --- a/docs/examples/1.8.x/server-php/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-php/examples/tablesdb/update-point-column.md @@ -15,6 +15,6 @@ $result = $tablesDB->updatePointColumn( tableId: '', key: '', required: false, - default: '', // optional + default: [1, 2], // optional newKey: '' // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-php/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-php/examples/tablesdb/update-polygon-column.md index 3f6f3e82fb..2ff401151f 100644 --- a/docs/examples/1.8.x/server-php/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-php/examples/tablesdb/update-polygon-column.md @@ -15,6 +15,6 @@ $result = $tablesDB->updatePolygonColumn( tableId: '', key: '', required: false, - default: '', // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: '' // optional ); \ No newline at end of file diff --git a/docs/examples/1.8.x/server-python/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-python/examples/account/create-email-verification.md new file mode 100644 index 0000000000..a76a4bdb89 --- /dev/null +++ b/docs/examples/1.8.x/server-python/examples/account/create-email-verification.md @@ -0,0 +1,13 @@ +from appwrite.client import Client +from appwrite.services.account import Account + +client = Client() +client.set_endpoint('https://.cloud.appwrite.io/v1') # Your API Endpoint +client.set_project('') # Your project ID +client.set_session('') # The user session to authenticate with + +account = Account(client) + +result = account.create_email_verification( + url = 'https://example.com' +) diff --git a/docs/examples/1.8.x/server-python/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-python/examples/account/update-email-verification.md new file mode 100644 index 0000000000..5e99587e86 --- /dev/null +++ b/docs/examples/1.8.x/server-python/examples/account/update-email-verification.md @@ -0,0 +1,14 @@ +from appwrite.client import Client +from appwrite.services.account import Account + +client = Client() +client.set_endpoint('https://.cloud.appwrite.io/v1') # Your API Endpoint +client.set_project('') # Your project ID +client.set_session('') # The user session to authenticate with + +account = Account(client) + +result = account.update_email_verification( + user_id = '', + secret = '' +) diff --git a/docs/examples/1.8.x/server-python/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-python/examples/databases/create-line-attribute.md index 3521cc90b7..c61be8fb51 100644 --- a/docs/examples/1.8.x/server-python/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-python/examples/databases/create-line-attribute.md @@ -13,5 +13,5 @@ result = databases.create_line_attribute( collection_id = '', key = '', required = False, - default = '' # optional + default = [[1, 2], [3, 4], [5, 6]] # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-python/examples/databases/create-point-attribute.md index 8a808c444a..7acdb94399 100644 --- a/docs/examples/1.8.x/server-python/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-python/examples/databases/create-point-attribute.md @@ -13,5 +13,5 @@ result = databases.create_point_attribute( collection_id = '', key = '', required = False, - default = '' # optional + default = [1, 2] # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-python/examples/databases/create-polygon-attribute.md index 478a369210..c727b719f4 100644 --- a/docs/examples/1.8.x/server-python/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-python/examples/databases/create-polygon-attribute.md @@ -13,5 +13,5 @@ result = databases.create_polygon_attribute( collection_id = '', key = '', required = False, - default = '' # optional + default = [[[1, 2], [3, 4], [5, 6], [1, 2]]] # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-python/examples/databases/update-line-attribute.md index 378e5a9bc6..b1804f648b 100644 --- a/docs/examples/1.8.x/server-python/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-python/examples/databases/update-line-attribute.md @@ -13,6 +13,6 @@ result = databases.update_line_attribute( collection_id = '', key = '', required = False, - default = '', # optional + default = [[1, 2], [3, 4], [5, 6]], # optional new_key = '' # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-python/examples/databases/update-point-attribute.md index a7d96d0b47..58def4b687 100644 --- a/docs/examples/1.8.x/server-python/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-python/examples/databases/update-point-attribute.md @@ -13,6 +13,6 @@ result = databases.update_point_attribute( collection_id = '', key = '', required = False, - default = '', # optional + default = [1, 2], # optional new_key = '' # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-python/examples/databases/update-polygon-attribute.md index b6ac782d48..c3625fe3e0 100644 --- a/docs/examples/1.8.x/server-python/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-python/examples/databases/update-polygon-attribute.md @@ -13,6 +13,6 @@ result = databases.update_polygon_attribute( collection_id = '', key = '', required = False, - default = '', # optional + default = [[[1, 2], [3, 4], [5, 6], [1, 2]]], # optional new_key = '' # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-python/examples/tablesdb/create-line-column.md index 9c6a1b7615..11591236cf 100644 --- a/docs/examples/1.8.x/server-python/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-python/examples/tablesdb/create-line-column.md @@ -13,5 +13,5 @@ result = tables_db.create_line_column( table_id = '', key = '', required = False, - default = '' # optional + default = [[1, 2], [3, 4], [5, 6]] # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-python/examples/tablesdb/create-point-column.md index 4a9e92b504..8f51e95ca2 100644 --- a/docs/examples/1.8.x/server-python/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-python/examples/tablesdb/create-point-column.md @@ -13,5 +13,5 @@ result = tables_db.create_point_column( table_id = '', key = '', required = False, - default = '' # optional + default = [1, 2] # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-python/examples/tablesdb/create-polygon-column.md index 6863fdd815..cf4540e029 100644 --- a/docs/examples/1.8.x/server-python/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-python/examples/tablesdb/create-polygon-column.md @@ -13,5 +13,5 @@ result = tables_db.create_polygon_column( table_id = '', key = '', required = False, - default = '' # optional + default = [[[1, 2], [3, 4], [5, 6], [1, 2]]] # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-python/examples/tablesdb/update-line-column.md index b1a6475599..2f02b61e24 100644 --- a/docs/examples/1.8.x/server-python/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-python/examples/tablesdb/update-line-column.md @@ -13,6 +13,6 @@ result = tables_db.update_line_column( table_id = '', key = '', required = False, - default = '', # optional + default = [[1, 2], [3, 4], [5, 6]], # optional new_key = '' # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-python/examples/tablesdb/update-point-column.md index 47c94395c7..63fb30837f 100644 --- a/docs/examples/1.8.x/server-python/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-python/examples/tablesdb/update-point-column.md @@ -13,6 +13,6 @@ result = tables_db.update_point_column( table_id = '', key = '', required = False, - default = '', # optional + default = [1, 2], # optional new_key = '' # optional ) diff --git a/docs/examples/1.8.x/server-python/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-python/examples/tablesdb/update-polygon-column.md index a38acbaf04..07118b1c1e 100644 --- a/docs/examples/1.8.x/server-python/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-python/examples/tablesdb/update-polygon-column.md @@ -13,6 +13,6 @@ result = tables_db.update_polygon_column( table_id = '', key = '', required = False, - default = '', # optional + default = [[[1, 2], [3, 4], [5, 6], [1, 2]]], # optional new_key = '' # optional ) diff --git a/docs/examples/1.8.x/server-rest/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-rest/examples/account/create-email-verification.md new file mode 100644 index 0000000000..ed5479dbe5 --- /dev/null +++ b/docs/examples/1.8.x/server-rest/examples/account/create-email-verification.md @@ -0,0 +1,11 @@ +POST /v1/account/verification HTTP/1.1 +Host: cloud.appwrite.io +Content-Type: application/json +X-Appwrite-Response-Format: 1.8.0 +X-Appwrite-Project: +X-Appwrite-Session: +X-Appwrite-JWT: + +{ + "url": "https://example.com" +} diff --git a/docs/examples/1.8.x/server-rest/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-rest/examples/account/update-email-verification.md new file mode 100644 index 0000000000..a4dcbf76a3 --- /dev/null +++ b/docs/examples/1.8.x/server-rest/examples/account/update-email-verification.md @@ -0,0 +1,12 @@ +PUT /v1/account/verification HTTP/1.1 +Host: cloud.appwrite.io +Content-Type: application/json +X-Appwrite-Response-Format: 1.8.0 +X-Appwrite-Project: +X-Appwrite-Session: +X-Appwrite-JWT: + +{ + "userId": "", + "secret": "" +} diff --git a/docs/examples/1.8.x/server-rest/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-rest/examples/databases/create-line-attribute.md index 429a219f20..54d2de02de 100644 --- a/docs/examples/1.8.x/server-rest/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-rest/examples/databases/create-line-attribute.md @@ -8,5 +8,5 @@ X-Appwrite-Key: { "key": "", "required": false, - "default": "" + "default": [[1, 2], [3, 4], [5, 6]] } diff --git a/docs/examples/1.8.x/server-rest/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-rest/examples/databases/create-point-attribute.md index e6ba1f791e..ade94fc085 100644 --- a/docs/examples/1.8.x/server-rest/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-rest/examples/databases/create-point-attribute.md @@ -8,5 +8,5 @@ X-Appwrite-Key: { "key": "", "required": false, - "default": "" + "default": [1, 2] } diff --git a/docs/examples/1.8.x/server-rest/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-rest/examples/databases/create-polygon-attribute.md index 62299b9754..9b2f43b6ff 100644 --- a/docs/examples/1.8.x/server-rest/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-rest/examples/databases/create-polygon-attribute.md @@ -8,5 +8,5 @@ X-Appwrite-Key: { "key": "", "required": false, - "default": "" + "default": [[[1, 2], [3, 4], [5, 6], [1, 2]]] } diff --git a/docs/examples/1.8.x/server-rest/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-rest/examples/databases/update-line-attribute.md index fe044fae0d..47bcbea4ab 100644 --- a/docs/examples/1.8.x/server-rest/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-rest/examples/databases/update-line-attribute.md @@ -7,6 +7,6 @@ X-Appwrite-Key: { "required": false, - "default": "", + "default": [[1, 2], [3, 4], [5, 6]], "newKey": "" } diff --git a/docs/examples/1.8.x/server-rest/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-rest/examples/databases/update-point-attribute.md index 6f095e11ca..c0851c7d51 100644 --- a/docs/examples/1.8.x/server-rest/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-rest/examples/databases/update-point-attribute.md @@ -7,6 +7,6 @@ X-Appwrite-Key: { "required": false, - "default": "", + "default": [1, 2], "newKey": "" } diff --git a/docs/examples/1.8.x/server-rest/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-rest/examples/databases/update-polygon-attribute.md index b5624b3800..4cfae215b9 100644 --- a/docs/examples/1.8.x/server-rest/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-rest/examples/databases/update-polygon-attribute.md @@ -7,6 +7,6 @@ X-Appwrite-Key: { "required": false, - "default": "", + "default": [[[1, 2], [3, 4], [5, 6], [1, 2]]], "newKey": "" } diff --git a/docs/examples/1.8.x/server-rest/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-rest/examples/tablesdb/create-line-column.md index 7c11cc2b6c..7d70d59900 100644 --- a/docs/examples/1.8.x/server-rest/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-rest/examples/tablesdb/create-line-column.md @@ -8,5 +8,5 @@ X-Appwrite-Key: { "key": "", "required": false, - "default": "" + "default": [[1, 2], [3, 4], [5, 6]] } diff --git a/docs/examples/1.8.x/server-rest/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-rest/examples/tablesdb/create-point-column.md index c199a421fb..5a99e7ba5e 100644 --- a/docs/examples/1.8.x/server-rest/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-rest/examples/tablesdb/create-point-column.md @@ -8,5 +8,5 @@ X-Appwrite-Key: { "key": "", "required": false, - "default": "" + "default": [1, 2] } diff --git a/docs/examples/1.8.x/server-rest/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-rest/examples/tablesdb/create-polygon-column.md index 76ddade7b5..64495e9424 100644 --- a/docs/examples/1.8.x/server-rest/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-rest/examples/tablesdb/create-polygon-column.md @@ -8,5 +8,5 @@ X-Appwrite-Key: { "key": "", "required": false, - "default": "" + "default": [[[1, 2], [3, 4], [5, 6], [1, 2]]] } diff --git a/docs/examples/1.8.x/server-rest/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-rest/examples/tablesdb/update-line-column.md index 69ffb8db16..97370a5f1f 100644 --- a/docs/examples/1.8.x/server-rest/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-rest/examples/tablesdb/update-line-column.md @@ -7,6 +7,6 @@ X-Appwrite-Key: { "required": false, - "default": "", + "default": [[1, 2], [3, 4], [5, 6]], "newKey": "" } diff --git a/docs/examples/1.8.x/server-rest/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-rest/examples/tablesdb/update-point-column.md index d93ad4a514..7687f7eb67 100644 --- a/docs/examples/1.8.x/server-rest/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-rest/examples/tablesdb/update-point-column.md @@ -7,6 +7,6 @@ X-Appwrite-Key: { "required": false, - "default": "", + "default": [1, 2], "newKey": "" } diff --git a/docs/examples/1.8.x/server-rest/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-rest/examples/tablesdb/update-polygon-column.md index 19a8a22fc8..ace2b57e0d 100644 --- a/docs/examples/1.8.x/server-rest/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-rest/examples/tablesdb/update-polygon-column.md @@ -7,6 +7,6 @@ X-Appwrite-Key: { "required": false, - "default": "", + "default": [[[1, 2], [3, 4], [5, 6], [1, 2]]], "newKey": "" } diff --git a/docs/examples/1.8.x/server-ruby/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-ruby/examples/account/create-email-verification.md new file mode 100644 index 0000000000..11bf56b73f --- /dev/null +++ b/docs/examples/1.8.x/server-ruby/examples/account/create-email-verification.md @@ -0,0 +1,14 @@ +require 'appwrite' + +include Appwrite + +client = Client.new + .set_endpoint('https://.cloud.appwrite.io/v1') # Your API Endpoint + .set_project('') # Your project ID + .set_session('') # The user session to authenticate with + +account = Account.new(client) + +result = account.create_email_verification( + url: 'https://example.com' +) diff --git a/docs/examples/1.8.x/server-ruby/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-ruby/examples/account/update-email-verification.md new file mode 100644 index 0000000000..33b009a549 --- /dev/null +++ b/docs/examples/1.8.x/server-ruby/examples/account/update-email-verification.md @@ -0,0 +1,15 @@ +require 'appwrite' + +include Appwrite + +client = Client.new + .set_endpoint('https://.cloud.appwrite.io/v1') # Your API Endpoint + .set_project('') # Your project ID + .set_session('') # The user session to authenticate with + +account = Account.new(client) + +result = account.update_email_verification( + user_id: '', + secret: '' +) diff --git a/docs/examples/1.8.x/server-ruby/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-ruby/examples/databases/create-line-attribute.md index 798097367b..33bdab7cf8 100644 --- a/docs/examples/1.8.x/server-ruby/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-ruby/examples/databases/create-line-attribute.md @@ -14,5 +14,5 @@ result = databases.create_line_attribute( collection_id: '', key: '', required: false, - default: '' # optional + default: [[1, 2], [3, 4], [5, 6]] # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-ruby/examples/databases/create-point-attribute.md index 1e852a7baf..f50a99ffea 100644 --- a/docs/examples/1.8.x/server-ruby/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-ruby/examples/databases/create-point-attribute.md @@ -14,5 +14,5 @@ result = databases.create_point_attribute( collection_id: '', key: '', required: false, - default: '' # optional + default: [1, 2] # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-ruby/examples/databases/create-polygon-attribute.md index a9399808c7..d7930a5ffe 100644 --- a/docs/examples/1.8.x/server-ruby/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-ruby/examples/databases/create-polygon-attribute.md @@ -14,5 +14,5 @@ result = databases.create_polygon_attribute( collection_id: '', key: '', required: false, - default: '' # optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-ruby/examples/databases/update-line-attribute.md index 34bfd9a1e0..c6e6e46f95 100644 --- a/docs/examples/1.8.x/server-ruby/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-ruby/examples/databases/update-line-attribute.md @@ -14,6 +14,6 @@ result = databases.update_line_attribute( collection_id: '', key: '', required: false, - default: '', # optional + default: [[1, 2], [3, 4], [5, 6]], # optional new_key: '' # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-ruby/examples/databases/update-point-attribute.md index bc33d4daf6..ce0b42b739 100644 --- a/docs/examples/1.8.x/server-ruby/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-ruby/examples/databases/update-point-attribute.md @@ -14,6 +14,6 @@ result = databases.update_point_attribute( collection_id: '', key: '', required: false, - default: '', # optional + default: [1, 2], # optional new_key: '' # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-ruby/examples/databases/update-polygon-attribute.md index 04a3d9e824..c159822998 100644 --- a/docs/examples/1.8.x/server-ruby/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-ruby/examples/databases/update-polygon-attribute.md @@ -14,6 +14,6 @@ result = databases.update_polygon_attribute( collection_id: '', key: '', required: false, - default: '', # optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], # optional new_key: '' # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-line-column.md index e70b2111d8..ec2352e65a 100644 --- a/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-line-column.md @@ -14,5 +14,5 @@ result = tables_db.create_line_column( table_id: '', key: '', required: false, - default: '' # optional + default: [[1, 2], [3, 4], [5, 6]] # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-point-column.md index 5f2e046d31..bfe77a54d0 100644 --- a/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-point-column.md @@ -14,5 +14,5 @@ result = tables_db.create_point_column( table_id: '', key: '', required: false, - default: '' # optional + default: [1, 2] # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-polygon-column.md index 86a18522b0..40ac70e78c 100644 --- a/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-ruby/examples/tablesdb/create-polygon-column.md @@ -14,5 +14,5 @@ result = tables_db.create_polygon_column( table_id: '', key: '', required: false, - default: '' # optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-line-column.md index 7f71e18231..5c1e24d16e 100644 --- a/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-line-column.md @@ -14,6 +14,6 @@ result = tables_db.update_line_column( table_id: '', key: '', required: false, - default: '', # optional + default: [[1, 2], [3, 4], [5, 6]], # optional new_key: '' # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-point-column.md index ee32b54a1b..f2130bda64 100644 --- a/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-point-column.md @@ -14,6 +14,6 @@ result = tables_db.update_point_column( table_id: '', key: '', required: false, - default: '', # optional + default: [1, 2], # optional new_key: '' # optional ) diff --git a/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-polygon-column.md index 48c68a11ea..6b878e3e18 100644 --- a/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-ruby/examples/tablesdb/update-polygon-column.md @@ -14,6 +14,6 @@ result = tables_db.update_polygon_column( table_id: '', key: '', required: false, - default: '', # optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], # optional new_key: '' # optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/account/create-email-verification.md b/docs/examples/1.8.x/server-swift/examples/account/create-email-verification.md new file mode 100644 index 0000000000..788fd9585a --- /dev/null +++ b/docs/examples/1.8.x/server-swift/examples/account/create-email-verification.md @@ -0,0 +1,13 @@ +import Appwrite + +let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + .setSession("") // The user session to authenticate with + +let account = Account(client) + +let token = try await account.createEmailVerification( + url: "https://example.com" +) + diff --git a/docs/examples/1.8.x/server-swift/examples/account/update-email-verification.md b/docs/examples/1.8.x/server-swift/examples/account/update-email-verification.md new file mode 100644 index 0000000000..10c8afe901 --- /dev/null +++ b/docs/examples/1.8.x/server-swift/examples/account/update-email-verification.md @@ -0,0 +1,14 @@ +import Appwrite + +let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") // Your API Endpoint + .setProject("") // Your project ID + .setSession("") // The user session to authenticate with + +let account = Account(client) + +let token = try await account.updateEmailVerification( + userId: "", + secret: "" +) + diff --git a/docs/examples/1.8.x/server-swift/examples/databases/create-line-attribute.md b/docs/examples/1.8.x/server-swift/examples/databases/create-line-attribute.md index 38e7a7d13a..610da4dd71 100644 --- a/docs/examples/1.8.x/server-swift/examples/databases/create-line-attribute.md +++ b/docs/examples/1.8.x/server-swift/examples/databases/create-line-attribute.md @@ -12,6 +12,6 @@ let attributeLine = try await databases.createLineAttribute( collectionId: "", key: "", required: false, - default: "" // optional + default: [[1, 2], [3, 4], [5, 6]] // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/databases/create-point-attribute.md b/docs/examples/1.8.x/server-swift/examples/databases/create-point-attribute.md index bd204071ce..e3392e871f 100644 --- a/docs/examples/1.8.x/server-swift/examples/databases/create-point-attribute.md +++ b/docs/examples/1.8.x/server-swift/examples/databases/create-point-attribute.md @@ -12,6 +12,6 @@ let attributePoint = try await databases.createPointAttribute( collectionId: "", key: "", required: false, - default: "" // optional + default: [1, 2] // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/databases/create-polygon-attribute.md b/docs/examples/1.8.x/server-swift/examples/databases/create-polygon-attribute.md index 9799c08177..c68543e87b 100644 --- a/docs/examples/1.8.x/server-swift/examples/databases/create-polygon-attribute.md +++ b/docs/examples/1.8.x/server-swift/examples/databases/create-polygon-attribute.md @@ -12,6 +12,6 @@ let attributePolygon = try await databases.createPolygonAttribute( collectionId: "", key: "", required: false, - default: "" // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/databases/update-line-attribute.md b/docs/examples/1.8.x/server-swift/examples/databases/update-line-attribute.md index d7e7612c51..a9c65367aa 100644 --- a/docs/examples/1.8.x/server-swift/examples/databases/update-line-attribute.md +++ b/docs/examples/1.8.x/server-swift/examples/databases/update-line-attribute.md @@ -12,7 +12,7 @@ let attributeLine = try await databases.updateLineAttribute( collectionId: "", key: "", required: false, - default: "", // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: "" // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/databases/update-point-attribute.md b/docs/examples/1.8.x/server-swift/examples/databases/update-point-attribute.md index 8907cd0cd8..6fd00c5da6 100644 --- a/docs/examples/1.8.x/server-swift/examples/databases/update-point-attribute.md +++ b/docs/examples/1.8.x/server-swift/examples/databases/update-point-attribute.md @@ -12,7 +12,7 @@ let attributePoint = try await databases.updatePointAttribute( collectionId: "", key: "", required: false, - default: "", // optional + default: [1, 2], // optional newKey: "" // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/databases/update-polygon-attribute.md b/docs/examples/1.8.x/server-swift/examples/databases/update-polygon-attribute.md index 35da75bffb..08bbaec88e 100644 --- a/docs/examples/1.8.x/server-swift/examples/databases/update-polygon-attribute.md +++ b/docs/examples/1.8.x/server-swift/examples/databases/update-polygon-attribute.md @@ -12,7 +12,7 @@ let attributePolygon = try await databases.updatePolygonAttribute( collectionId: "", key: "", required: false, - default: "", // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: "" // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/tablesdb/create-line-column.md b/docs/examples/1.8.x/server-swift/examples/tablesdb/create-line-column.md index 6d776f9a22..2737d91cb8 100644 --- a/docs/examples/1.8.x/server-swift/examples/tablesdb/create-line-column.md +++ b/docs/examples/1.8.x/server-swift/examples/tablesdb/create-line-column.md @@ -12,6 +12,6 @@ let columnLine = try await tablesDB.createLineColumn( tableId: "", key: "", required: false, - default: "" // optional + default: [[1, 2], [3, 4], [5, 6]] // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/tablesdb/create-point-column.md b/docs/examples/1.8.x/server-swift/examples/tablesdb/create-point-column.md index 53ed8b45f9..2652ea0427 100644 --- a/docs/examples/1.8.x/server-swift/examples/tablesdb/create-point-column.md +++ b/docs/examples/1.8.x/server-swift/examples/tablesdb/create-point-column.md @@ -12,6 +12,6 @@ let columnPoint = try await tablesDB.createPointColumn( tableId: "", key: "", required: false, - default: "" // optional + default: [1, 2] // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/tablesdb/create-polygon-column.md b/docs/examples/1.8.x/server-swift/examples/tablesdb/create-polygon-column.md index 1c692be280..860a1eeab2 100644 --- a/docs/examples/1.8.x/server-swift/examples/tablesdb/create-polygon-column.md +++ b/docs/examples/1.8.x/server-swift/examples/tablesdb/create-polygon-column.md @@ -12,6 +12,6 @@ let columnPolygon = try await tablesDB.createPolygonColumn( tableId: "", key: "", required: false, - default: "" // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]] // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/tablesdb/update-line-column.md b/docs/examples/1.8.x/server-swift/examples/tablesdb/update-line-column.md index b04fd74c6e..d63e024849 100644 --- a/docs/examples/1.8.x/server-swift/examples/tablesdb/update-line-column.md +++ b/docs/examples/1.8.x/server-swift/examples/tablesdb/update-line-column.md @@ -12,7 +12,7 @@ let columnLine = try await tablesDB.updateLineColumn( tableId: "", key: "", required: false, - default: "", // optional + default: [[1, 2], [3, 4], [5, 6]], // optional newKey: "" // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/tablesdb/update-point-column.md b/docs/examples/1.8.x/server-swift/examples/tablesdb/update-point-column.md index b2885de919..3427b17bdf 100644 --- a/docs/examples/1.8.x/server-swift/examples/tablesdb/update-point-column.md +++ b/docs/examples/1.8.x/server-swift/examples/tablesdb/update-point-column.md @@ -12,7 +12,7 @@ let columnPoint = try await tablesDB.updatePointColumn( tableId: "", key: "", required: false, - default: "", // optional + default: [1, 2], // optional newKey: "" // optional ) diff --git a/docs/examples/1.8.x/server-swift/examples/tablesdb/update-polygon-column.md b/docs/examples/1.8.x/server-swift/examples/tablesdb/update-polygon-column.md index 8ce6d2077f..140665a1be 100644 --- a/docs/examples/1.8.x/server-swift/examples/tablesdb/update-polygon-column.md +++ b/docs/examples/1.8.x/server-swift/examples/tablesdb/update-polygon-column.md @@ -12,7 +12,7 @@ let columnPolygon = try await tablesDB.updatePolygonColumn( tableId: "", key: "", required: false, - default: "", // optional + default: [[[1, 2], [3, 4], [5, 6], [1, 2]]], // optional newKey: "" // optional ) diff --git a/docs/references/databases/create-point-attribute.md b/docs/references/databases/create-point-attribute.md index fb9b6be24b..dd92ffc98e 100644 --- a/docs/references/databases/create-point-attribute.md +++ b/docs/references/databases/create-point-attribute.md @@ -1 +1 @@ -Create a geometric 2d point attribute. \ No newline at end of file +Create a geometric point attribute. \ No newline at end of file diff --git a/docs/references/proxy/delete-rule.md b/docs/references/proxy/delete-rule.md deleted file mode 100644 index 7a4823f86d..0000000000 --- a/docs/references/proxy/delete-rule.md +++ /dev/null @@ -1 +0,0 @@ -Delete a proxy rule by its unique ID. \ No newline at end of file diff --git a/docs/references/proxy/get-rule.md b/docs/references/proxy/get-rule.md deleted file mode 100644 index cfd040141e..0000000000 --- a/docs/references/proxy/get-rule.md +++ /dev/null @@ -1 +0,0 @@ -Get a proxy rule by its unique ID. \ No newline at end of file diff --git a/docs/references/proxy/list-rules.md b/docs/references/proxy/list-rules.md deleted file mode 100644 index 042d780f02..0000000000 --- a/docs/references/proxy/list-rules.md +++ /dev/null @@ -1 +0,0 @@ -Get a list of all the proxy rules. You can use the query params to filter your results. \ No newline at end of file diff --git a/docs/references/proxy/update-rule-verification.md b/docs/references/proxy/update-rule-verification.md deleted file mode 100644 index c06994bc59..0000000000 --- a/docs/references/proxy/update-rule-verification.md +++ /dev/null @@ -1 +0,0 @@ -Retry getting verification process of a proxy rule. This endpoint triggers domain verification by checking DNS records (CNAME) against the configured target domain. If verification is successful, a TLS certificate will be automatically provisioned for the domain. \ No newline at end of file diff --git a/docs/references/tablesdb/create-line-column.md b/docs/references/tablesdb/create-line-column.md index 96f1509936..bee229c132 100644 --- a/docs/references/tablesdb/create-line-column.md +++ b/docs/references/tablesdb/create-line-column.md @@ -1 +1 @@ -Create a geometric line attribute. \ No newline at end of file +Create a geometric line column. \ No newline at end of file diff --git a/docs/references/tablesdb/create-point-column.md b/docs/references/tablesdb/create-point-column.md index dd92ffc98e..36bb5b6c37 100644 --- a/docs/references/tablesdb/create-point-column.md +++ b/docs/references/tablesdb/create-point-column.md @@ -1 +1 @@ -Create a geometric point attribute. \ No newline at end of file +Create a geometric point column. \ No newline at end of file diff --git a/docs/references/tablesdb/create-polygon-column.md b/docs/references/tablesdb/create-polygon-column.md index 7cb3985ff7..c334003cc6 100644 --- a/docs/references/tablesdb/create-polygon-column.md +++ b/docs/references/tablesdb/create-polygon-column.md @@ -1 +1 @@ -Create a geometric polygon attribute. \ No newline at end of file +Create a geometric polygon column. \ No newline at end of file diff --git a/docs/references/tablesdb/create-row.md b/docs/references/tablesdb/create-row.md index 9b25555eeb..2ddae7e5a7 100644 --- a/docs/references/tablesdb/create-row.md +++ b/docs/references/tablesdb/create-row.md @@ -1 +1 @@ -Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreateTable) API or directly from your database console. \ No newline at end of file +Create a new Row. Before using this route, you should create a new table resource using either a [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable) API or directly from your database console. \ No newline at end of file diff --git a/docs/references/tablesdb/create-rows.md b/docs/references/tablesdb/create-rows.md index 6a19d7bc9f..b8b5e93582 100644 --- a/docs/references/tablesdb/create-rows.md +++ b/docs/references/tablesdb/create-rows.md @@ -1 +1 @@ -Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreateTable) API or directly from your database console. \ No newline at end of file +Create new Rows. Before using this route, you should create a new table resource using either a [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable) API or directly from your database console. \ No newline at end of file diff --git a/docs/references/tablesdb/create-table.md b/docs/references/tablesdb/create-table.md index 006e8794df..c240440bf2 100644 --- a/docs/references/tablesdb/create-table.md +++ b/docs/references/tablesdb/create-table.md @@ -1 +1 @@ -Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreateTable) API or directly from your database console. \ No newline at end of file +Create a new Table. Before using this route, you should create a new database resource using either a [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable) API or directly from your database console. \ No newline at end of file diff --git a/docs/references/tablesdb/update-line-column.md b/docs/references/tablesdb/update-line-column.md index 1cd3b53d07..2558d4ab3c 100644 --- a/docs/references/tablesdb/update-line-column.md +++ b/docs/references/tablesdb/update-line-column.md @@ -1 +1 @@ -Update a line column. Changing the `default` value will not update already existing documents. \ No newline at end of file +Update a line column. Changing the `default` value will not update already existing rows. \ No newline at end of file diff --git a/docs/references/tablesdb/update-point-column.md b/docs/references/tablesdb/update-point-column.md index 251e6de260..9acf547538 100644 --- a/docs/references/tablesdb/update-point-column.md +++ b/docs/references/tablesdb/update-point-column.md @@ -1 +1 @@ -Update a point column. Changing the `default` value will not update already existing documents. \ No newline at end of file +Update a point column. Changing the `default` value will not update already existing rows. \ No newline at end of file diff --git a/docs/references/tablesdb/update-polygon-column.md b/docs/references/tablesdb/update-polygon-column.md index fc46a223cf..40dbf8a095 100644 --- a/docs/references/tablesdb/update-polygon-column.md +++ b/docs/references/tablesdb/update-polygon-column.md @@ -1 +1 @@ -Update a polygon column. Changing the `default` value will not update already existing documents. \ No newline at end of file +Update a polygon column. Changing the `default` value will not update already existing rows. \ No newline at end of file diff --git a/docs/references/tablesdb/upsert-row.md b/docs/references/tablesdb/upsert-row.md index 26edd7ad04..2ae62fedc9 100644 --- a/docs/references/tablesdb/upsert-row.md +++ b/docs/references/tablesdb/upsert-row.md @@ -1 +1 @@ -Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreateTable) API or directly from your database console. \ No newline at end of file +Create or update a Row. Before using this route, you should create a new table resource using either a [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable) API or directly from your database console. \ No newline at end of file diff --git a/docs/references/tablesdb/upsert-rows.md b/docs/references/tablesdb/upsert-rows.md index f980d8c30d..52f9d29398 100644 --- a/docs/references/tablesdb/upsert-rows.md +++ b/docs/references/tablesdb/upsert-rows.md @@ -1 +1 @@ -Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreateTable) API or directly from your database console. +Create or update Rows. Before using this route, you should create a new table resource using either a [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable) API or directly from your database console. diff --git a/docs/sdks/cli/CHANGELOG.md b/docs/sdks/cli/CHANGELOG.md index 8964d059a9..5af193d491 100644 --- a/docs/sdks/cli/CHANGELOG.md +++ b/docs/sdks/cli/CHANGELOG.md @@ -1,5 +1,21 @@ # Change Log +## 10.0.1 + +* Fix CLI Dart model generation issues +* Fix row permissions and security sync +* Fix error when pushing columns with relationships +* Fix resource name from attributes to columns for TablesDB indexes + +## 10.0.0 + +* **Breaking:** Removed Avatars CLI command and all related subcommands; corresponding examples deleted +* **Feat:** Geo defaults now accept coordinate arrays for Databases and Tables DB, with automatic normalization +* **Feat:** Pull command skips deprecated resources by default and shows clearer totals/messages +* **Feat:** Updated CLI descriptions: Databases marked legacy; added tables-db, projects, and project +* Fix TypeScript type generation now quotes invalid property names to produce valid typings +* Update documentation: Removed Avatars CLI examples and updated help text to reflect new geo defaults and terminology + ## 8.3.0 * **Feat:** Add support for `appwrite.config.json` file diff --git a/docs/sdks/dart/CHANGELOG.md b/docs/sdks/dart/CHANGELOG.md index 9a0b94a85d..7e33794153 100644 --- a/docs/sdks/dart/CHANGELOG.md +++ b/docs/sdks/dart/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 18.1.0 + +* Add `orderRandom` query support + +## 18.0.0 + +* Rename `CreditCard` enum value `unionChinaPay` to `unionPay` +* Add time between query support +* Add spatial attribute support +* Add spatial index support +* Add spatial query support + ## 17.0.0 * Support for Appwrite 1.8 diff --git a/docs/sdks/flutter/CHANGELOG.md b/docs/sdks/flutter/CHANGELOG.md index 9794709ed7..f704415675 100644 --- a/docs/sdks/flutter/CHANGELOG.md +++ b/docs/sdks/flutter/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 19.1.0 + +* Add `orderRandom` query support + +## 19.0.0 + +* Rename `CreditCard` enum value `unionChinaPay` to `unionPay` +* Add time between query support +* Add spatial query support + ## 18.0.0 * Support for Appwrite 1.8 diff --git a/package.json b/package.json index 6e32c7d515..1e2b1be430 100644 --- a/package.json +++ b/package.json @@ -4,5 +4,9 @@ "repository": { "type": "git", "url": "git+https://github.com/appwrite/appwrite.git" - } -} \ No newline at end of file + }, + "files": [ + "docs/examples", + "app/config/specs" + ] +} diff --git a/src/Appwrite/Auth/OAuth2/Oidc.php b/src/Appwrite/Auth/OAuth2/Oidc.php index 670169fe89..c9810c48eb 100644 --- a/src/Appwrite/Auth/OAuth2/Oidc.php +++ b/src/Appwrite/Auth/OAuth2/Oidc.php @@ -273,6 +273,9 @@ class Oidc extends OAuth2 { if (empty($this->wellKnownConfiguration)) { $response = $this->request('GET', $this->getWellKnownEndpoint()); + if (empty($response)) { + throw new Exception('Invalid well-known configuration'); + } $this->wellKnownConfiguration = \json_decode($response, true); } diff --git a/src/Appwrite/Event/Certificate.php b/src/Appwrite/Event/Certificate.php index 827472ae37..00875c7a4a 100644 --- a/src/Appwrite/Event/Certificate.php +++ b/src/Appwrite/Event/Certificate.php @@ -9,6 +9,7 @@ class Certificate extends Event { protected bool $skipRenewCheck = false; protected ?Document $domain = null; + protected ?string $validationDomain = null; public function __construct(protected Publisher $publisher) { @@ -55,6 +56,30 @@ class Certificate extends Event return $this; } + + /** + * Set override for main domain used for validation + * + * @param string|null $validationDomain + * @return self + */ + public function setValidationDomain(?string $validationDomain): self + { + $this->validationDomain = $validationDomain; + + return $this; + } + + /** + * Get validation domain + * + * @return string|null + */ + public function getValidationDomain(): ?string + { + return $this->validationDomain; + } + /** * Return if the certificate needs be validated. * @@ -65,6 +90,7 @@ class Certificate extends Event return $this->skipRenewCheck; } + /** * Prepare the payload for the event * @@ -75,7 +101,8 @@ class Certificate extends Event return [ 'project' => $this->project, 'domain' => $this->domain, - 'skipRenewCheck' => $this->skipRenewCheck + 'skipRenewCheck' => $this->skipRenewCheck, + 'validationDomain' => $this->validationDomain ]; } } diff --git a/src/Appwrite/Event/Database.php b/src/Appwrite/Event/Database.php index 70051f9055..8e7f6b7625 100644 --- a/src/Appwrite/Event/Database.php +++ b/src/Appwrite/Event/Database.php @@ -161,17 +161,20 @@ class Database extends Event return $this->document; } - public function getQueue(): string + public function setProject(Document $project): self { - try { - $dsn = new DSN($this->getProject()->getAttribute('database')); - } catch (\InvalidArgumentException) { - // TODO: Temporary until all projects are using shared tables - $dsn = new DSN('mysql://' . $this->getProject()->getAttribute('database')); + $database = $project->getAttribute('database'); + if (!empty($database)) { + try { + $dsn = new DSN($database); + } catch (\InvalidArgumentException) { + // TODO: Temporary until all projects are using shared tables + $dsn = new DSN("mysql://$database"); + } + $this->queue = $dsn->getHost(); } - $this->queue = $dsn->getHost(); - return $this->queue; + return parent::setProject($project); } /** diff --git a/src/Appwrite/Event/Event.php b/src/Appwrite/Event/Event.php index e9f3ccc2a2..16fe76bf8a 100644 --- a/src/Appwrite/Event/Event.php +++ b/src/Appwrite/Event/Event.php @@ -592,6 +592,7 @@ class Event $this->project = $event->getProject(); $this->user = $event->getUser(); $this->payload = $event->getPayload(); + $this->sensitive = $event->sensitive; $this->event = $event->getEvent(); $this->params = $event->getParams(); $this->context = $event->context; diff --git a/src/Appwrite/GraphQL/Types/Mapper.php b/src/Appwrite/GraphQL/Types/Mapper.php index f0394b2395..b74e2a7549 100644 --- a/src/Appwrite/GraphQL/Types/Mapper.php +++ b/src/Appwrite/GraphQL/Types/Mapper.php @@ -58,7 +58,8 @@ class Mapper 'json' => Types::json(), 'none' => Types::json(), 'any' => Types::json(), - 'array' => Types::json() + 'array' => Types::json(), + 'enum' => Type::string() ]; foreach ($defaults as $type => $default) { @@ -452,6 +453,7 @@ class Mapper 'ip' => static::model("{$prefix}Ip"), default => static::model("{$prefix}String"), }, + 'enum' => static::model("{$prefix}String"), // TODO: Add enum type (breaking change if added) 'integer' => static::model("{$prefix}Integer"), 'double' => static::model("{$prefix}Float"), 'boolean' => static::model("{$prefix}Boolean"), diff --git a/src/Appwrite/Messaging/Adapter/Realtime.php b/src/Appwrite/Messaging/Adapter/Realtime.php index 8b5e121dcd..35b8089668 100644 --- a/src/Appwrite/Messaging/Adapter/Realtime.php +++ b/src/Appwrite/Messaging/Adapter/Realtime.php @@ -312,13 +312,17 @@ class Realtime extends MessagingAdapter throw new \Exception('Collection or the Table needs to be passed to Realtime for Document/Row events in the Database.'); } + $tableId = $payload->getAttribute('$tableId', ''); + $collectionId = $payload->getAttribute('$collectionId', ''); + $resourceId = $tableId ?: $collectionId; + $channels[] = 'rows'; - $channels[] = 'databases.' . $database->getId() . '.tables.' . $payload->getAttribute('$tableId') . '.rows'; - $channels[] = 'databases.' . $database->getId() . '.tables.' . $payload->getAttribute('$tableId') . '.rows.' . $payload->getId(); + $channels[] = 'databases.' . $database->getId() . '.tables.' . $resourceId . '.rows'; + $channels[] = 'databases.' . $database->getId() . '.tables.' . $resourceId . '.rows.' . $payload->getId(); $channels[] = 'documents'; - $channels[] = 'databases.' . $database->getId() . '.collections.' . $payload->getAttribute('$collectionId') . '.documents'; - $channels[] = 'databases.' . $database->getId() . '.collections.' . $payload->getAttribute('$collectionId') . '.documents.' . $payload->getId(); + $channels[] = 'databases.' . $database->getId() . '.collections.' . $resourceId . '.documents'; + $channels[] = 'databases.' . $database->getId() . '.collections.' . $resourceId . '.documents.' . $payload->getId(); $roles = $collection->getAttribute('documentSecurity', false) ? \array_merge($collection->getRead(), $payload->getRead()) diff --git a/src/Appwrite/Migration/Version/V19.php b/src/Appwrite/Migration/Version/V19.php index d4dda02d75..f5cf84c95e 100644 --- a/src/Appwrite/Migration/Version/V19.php +++ b/src/Appwrite/Migration/Version/V19.php @@ -730,8 +730,8 @@ class V19 extends Migration if (empty($document->getAttribute('scheduleId', null))) { $schedule = $this->dbForPlatform->createDocument('schedules', new Document([ - 'region' => $project->getAttribute('region'), - 'resourceType' => 'function', + 'region' => $this->project->getAttribute('region'), + 'resourceType' => SCHEDULE_RESOURCE_TYPE_FUNCTION, 'resourceId' => $document->getId(), 'resourceInternalId' => $document->getSequence(), 'resourceUpdatedAt' => DateTime::now(), diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Action.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Action.php index f3903d91a7..22a90d2653 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Action.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Action.php @@ -122,7 +122,7 @@ abstract class Action extends UtopiaAction /** * Get the correct invalid structure message. */ - protected function getInvalidStructureException(): string + protected function getStructureException(): string { return $this->isCollectionsAPI() ? Exception::DOCUMENT_INVALID_STRUCTURE @@ -366,13 +366,27 @@ abstract class Action extends UtopiaAction 'filters' => $filters, 'options' => $options, ]); + if ( + !$dbForProject->getAdapter()->getSupportForSpatialIndexNull() && + \in_array($attribute->getAttribute('type'), Database::SPATIAL_TYPES) && + $attribute->getAttribute('required') + ) { + $hasData = !Authorization::skip(fn () => $dbForProject + ->findOne('database_' . $db->getSequence() . '_collection_' . $collection->getSequence())) + ->isEmpty(); + if ($hasData) { + throw new StructureException('Failed to add required spatial column: existing rows present. Make the column optional.'); + } + } $dbForProject->checkAttribute($collection, $attribute); $attribute = $dbForProject->createDocument('attributes', $attribute); } catch (DuplicateException) { throw new Exception($this->getDuplicateException()); } catch (LimitException) { throw new Exception($this->getLimitException()); + } catch (StructureException $e) { + throw new Exception($this->getStructureException(), $e->getMessage()); } catch (Throwable $e) { $dbForProject->purgeCachedDocument('database_' . $db->getSequence(), $collectionId); $dbForProject->purgeCachedCollection('database_' . $db->getSequence() . '_collection_' . $collection->getSequence()); @@ -416,7 +430,7 @@ abstract class Action extends UtopiaAction } catch (LimitException) { throw new Exception($this->getLimitException()); } catch (StructureException) { - throw new Exception($this->getInvalidStructureException()); + throw new Exception($this->getStructureException()); } catch (Throwable $e) { $dbForProject->deleteDocument('attributes', $attribute->getId()); throw $e; @@ -580,7 +594,7 @@ abstract class Action extends UtopiaAction } catch (RelationshipException $e) { throw new Exception(Exception::RELATIONSHIP_VALUE_INVALID, $e->getMessage()); } catch (StructureException $e) { - throw new Exception($this->getInvalidStructureException(), $e->getMessage()); + throw new Exception($this->getStructureException(), $e->getMessage()); } if ($primaryDocumentOptions['twoWay']) { diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Action.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Action.php index d1d0738990..e05e588201 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Action.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Action.php @@ -160,7 +160,7 @@ abstract class Action extends AppwriteAction /** * Get the correct invalid structure message. */ - protected function getInvalidStructureException(): string + protected function getStructureException(): string { return $this->isCollectionsAPI() ? Exception::DOCUMENT_INVALID_STRUCTURE diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Delete.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Delete.php index fc4e2a8a91..3467a9d11c 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Delete.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Delete.php @@ -124,6 +124,8 @@ class Delete extends Action throw new Exception($this->getConflictException()); } catch (RestrictedException) { throw new Exception($this->getRestrictedException()); + } catch (QueryException $e) { + throw new Exception(Exception::GENERAL_QUERY_INVALID, $e->getMessage()); } foreach ($documents as $document) { diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Update.php index 0f0ae14020..65bd255d32 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Update.php @@ -149,7 +149,9 @@ class Update extends Action } catch (RelationshipException $e) { throw new Exception(Exception::RELATIONSHIP_VALUE_INVALID, $e->getMessage()); } catch (StructureException $e) { - throw new Exception($this->getInvalidStructureException(), $e->getMessage()); + throw new Exception($this->getStructureException(), $e->getMessage()); + } catch (QueryException $e) { + throw new Exception(Exception::GENERAL_QUERY_INVALID, $e->getMessage()); } foreach ($documents as $document) { diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Upsert.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Upsert.php index 395e3d757b..03e4450f68 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Upsert.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Upsert.php @@ -113,7 +113,7 @@ class Upsert extends Action try { $modified = $dbForProject->withPreserveDates(function () use ($dbForProject, $database, $collection, $documents, $plan, &$upserted) { - return $dbForProject->createOrUpdateDocuments( + return $dbForProject->upsertDocuments( 'database_' . $database->getSequence() . '_collection_' . $collection->getSequence(), $documents, onNext: function (Document $document) use ($plan, &$upserted) { @@ -130,7 +130,7 @@ class Upsert extends Action } catch (RelationshipException $e) { throw new Exception(Exception::RELATIONSHIP_VALUE_INVALID, $e->getMessage()); } catch (StructureException $e) { - throw new Exception($this->getInvalidStructureException(), $e->getMessage()); + throw new Exception($this->getStructureException(), $e->getMessage()); } foreach ($upserted as $document) { diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Create.php index c03daabd4f..a8af1eda86 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Create.php @@ -375,7 +375,7 @@ class Create extends Action } catch (RelationshipException $e) { throw new Exception(Exception::RELATIONSHIP_VALUE_INVALID, $e->getMessage()); } catch (StructureException $e) { - throw new Exception($this->getInvalidStructureException(), $e->getMessage()); + throw new Exception($this->getStructureException(), $e->getMessage()); } $queueForEvents diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Logs/XList.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Logs/XList.php index 93c8639520..ed9378f644 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Logs/XList.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Logs/XList.php @@ -108,10 +108,7 @@ class XList extends Action $audit = new Audit($dbForProject); $type = $this->getCollectionsEventsContext(); $context = $this->getContext(); - $resource = match ($context) { - ROWS => "database/$databaseId/grid/$type/$collectionId/$context/{$document->getId()}", - default => "database/$databaseId/$type/$collectionId/$context/{$document->getId()}", - }; + $resource = "database/$databaseId/$type/$collectionId/$context/{$document->getId()}"; $logs = $audit->getLogsByResource($resource, $queries); diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Update.php index 8382bdd5e9..e510aeb089 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Update.php @@ -247,7 +247,7 @@ class Update extends Action } catch (RelationshipException $e) { throw new Exception(Exception::RELATIONSHIP_VALUE_INVALID, $e->getMessage()); } catch (StructureException $e) { - throw new Exception($this->getInvalidStructureException(), $e->getMessage()); + throw new Exception($this->getStructureException(), $e->getMessage()); } $collectionsCache = []; diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Upsert.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Upsert.php index 54b1cad950..23fbf205dc 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Upsert.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Upsert.php @@ -243,7 +243,7 @@ class Upsert extends Action $upserted = []; try { $dbForProject->withPreserveDates(function () use (&$upserted, $dbForProject, $database, $collection, $newDocument) { - return $dbForProject->createOrUpdateDocuments( + return $dbForProject->upsertDocuments( 'database_' . $database->getSequence() . '_collection_' . $collection->getSequence(), [$newDocument], onNext: function (Document $document) use (&$upserted) { @@ -258,7 +258,7 @@ class Upsert extends Action } catch (RelationshipException $e) { throw new Exception(Exception::RELATIONSHIP_VALUE_INVALID, $e->getMessage()); } catch (StructureException $e) { - throw new Exception($this->getInvalidStructureException(), $e->getMessage()); + throw new Exception($this->getStructureException(), $e->getMessage()); } $collectionsCache = []; diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/XList.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/XList.php index 9c8405cf18..546cbeddd4 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/XList.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/XList.php @@ -158,43 +158,6 @@ class XList extends Action ->addMetric(METRIC_DATABASES_OPERATIONS_READS, max($operations, 1)) ->addMetric(str_replace('{databaseInternalId}', $database->getSequence(), METRIC_DATABASE_ID_OPERATIONS_READS), $operations); - // Check if the SELECT query includes the removable attributes - $hasWildcard = false; - $hasSelectQueries = !empty($selectQueries); - $requestedAttributes = []; - - if ($hasSelectQueries) { - foreach ($selectQueries as $query) { - if ($query->getMethod() !== Query::TYPE_SELECT) { - continue; - } - - $values = $query->getValues(); - if (\in_array('*', $values, true)) { - $hasWildcard = true; - break; - } - - // Check which removable attributes are explicitly requested - foreach ($this->removableAttributes['*'] as $attribute) { - if (\in_array($attribute, $values, true)) { - $requestedAttributes[$attribute] = true; - } - } - } - - if (!$hasWildcard) { - foreach ($documents as $document) { - // Remove attributes that are not explicitly requested - foreach ($this->removableAttributes['*'] as $attribute) { - if (!isset($requestedAttributes[$attribute])) { - $document->removeAttribute($attribute); - } - } - } - } - } - $response->dynamic(new Document([ 'total' => $total, // rows or documents diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Logs/XList.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Logs/XList.php index 1309793234..fefc5ba5a0 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Logs/XList.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Logs/XList.php @@ -104,11 +104,7 @@ class XList extends Action $audit = new Audit($dbForProject); $context = $this->getContext(); - $resource = match ($context) { - TABLES => "database/$databaseId/grid/$context/$collectionId", - default => "database/$databaseId/$context/$collectionId", - }; - + $resource = "database/$databaseId/$context/$collectionId"; $logs = $audit->getLogsByResource($resource, $queries); $output = []; diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Usage/Get.php b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Usage/Get.php index 4770d727a0..c9de9d5217 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Databases/Usage/Get.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Databases/Usage/Get.php @@ -77,8 +77,8 @@ class Get extends Action str_replace('{databaseInternalId}', $database->getSequence(), METRIC_DATABASE_ID_COLLECTIONS), str_replace('{databaseInternalId}', $database->getSequence(), METRIC_DATABASE_ID_DOCUMENTS), str_replace('{databaseInternalId}', $database->getSequence(), METRIC_DATABASE_ID_STORAGE), - str_replace('{databaseInternalId}', $database->getSequence(), METRIC_DATABASES_OPERATIONS_READS), - str_replace('{databaseInternalId}', $database->getSequence(), METRIC_DATABASES_OPERATIONS_WRITES) + str_replace('{databaseInternalId}', $database->getSequence(), METRIC_DATABASE_ID_OPERATIONS_READS), + str_replace('{databaseInternalId}', $database->getSequence(), METRIC_DATABASE_ID_OPERATIONS_WRITES) ]; Authorization::skip(function () use ($dbForProject, $days, $metrics, &$stats) { diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Create.php index 5222d2e133..bb4bef35e8 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Create.php @@ -50,7 +50,7 @@ class Create extends BooleanCreate ] )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Boolean(), 'Default value for column when not provided. Cannot be set when column is required.', true) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Update.php index 3c6ef50813..2d8789e394 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Update.php @@ -53,7 +53,7 @@ class Update extends BooleanUpdate contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Nullable(new Boolean()), 'Default value for column when not provided. Cannot be set when column is required.') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Create.php index f60d4dd5b8..9903ad3a7e 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Create.php @@ -53,7 +53,7 @@ class Create extends LineCreate ] )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Nullable(new Spatial(Database::VAR_LINESTRING)), 'Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], …], listing the vertices of the line in order. Cannot be set when column is required.', true) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Update.php index 19c6df202d..04b514afb8 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Update.php @@ -55,7 +55,7 @@ class Update extends LineUpdate contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Nullable(new Spatial(Database::VAR_LINESTRING)), 'Default value for column when not provided, two-dimensional array of coordinate pairs, [[longitude, latitude], [longitude, latitude], …], listing the vertices of the line in order. Cannot be set when column is required.', true) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Create.php index 47d97e8077..ed95e4629c 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Create.php @@ -53,7 +53,7 @@ class Create extends PointCreate ] )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Nullable(new Spatial(Database::VAR_POINT)), 'Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.', true) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Update.php index 2e98bf2cf9..f29e5bb27a 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Update.php @@ -55,7 +55,7 @@ class Update extends PointUpdate contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Nullable(new Spatial(Database::VAR_POINT)), 'Default value for column when not provided, array of two numbers [longitude, latitude], representing a single coordinate. Cannot be set when column is required.', true) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Create.php index 371d5f8fd5..c50c5acd5c 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Create.php @@ -53,7 +53,7 @@ class Create extends PolygonCreate ] )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Nullable(new Spatial(Database::VAR_POLYGON)), 'Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], …], …], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.', true) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Update.php index c5654b77d4..9f689717c3 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Update.php @@ -55,7 +55,7 @@ class Update extends PolygonUpdate contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Nullable(new Spatial(Database::VAR_POLYGON)), 'Default value for column when not provided, three-dimensional array where the outer array holds one or more linear rings, [[[longitude, latitude], …], …], the first ring is the exterior boundary, any additional rings are interior holes, and each ring must start and end with the same coordinate pair. Cannot be set when column is required.', true) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Create.php index 14f0c8321e..efe7dd513f 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Create.php @@ -53,7 +53,7 @@ class Create extends StringCreate ] )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('size', null, new Range(1, APP_DATABASE_ATTRIBUTE_STRING_MAX_LENGTH, Validator::TYPE_INTEGER), 'Column size for text columns, in number of characters.') ->param('required', null, new Boolean(), 'Is column required?') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php index fc45557f3b..7ba813aedd 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php @@ -56,7 +56,7 @@ class Update extends StringUpdate contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Column Key.') ->param('required', null, new Boolean(), 'Is column required?') ->param('default', null, new Nullable(new Text(0, 0)), 'Default value for column when not provided. Cannot be set when column is required.') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Create.php index a2a5c8b453..fdbe91f5f7 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Create.php @@ -56,7 +56,7 @@ class Create extends IndexCreate contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', null, new Key(), 'Index Key.') ->param('type', null, new WhiteList([Database::INDEX_KEY, Database::INDEX_FULLTEXT, Database::INDEX_UNIQUE, Database::INDEX_SPATIAL]), 'Index type.') ->param('columns', null, new ArrayList(new Key(true), APP_LIMIT_ARRAY_PARAMS_SIZE), 'Array of columns to index. Maximum of ' . APP_LIMIT_ARRAY_PARAMS_SIZE . ' columns are allowed, each 32 characters long.') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Delete.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Delete.php index 586bad78f4..ec05c92a64 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Delete.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Delete.php @@ -55,7 +55,7 @@ class Delete extends IndexDelete contentType: ContentType::NONE )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', '', new Key(), 'Index Key.') ->inject('response') ->inject('dbForProject') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Get.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Get.php index 3f2978b547..907b396072 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Get.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/Get.php @@ -48,7 +48,7 @@ class Get extends IndexGet contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('key', null, new Key(), 'Index Key.') ->inject('response') ->inject('dbForProject') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/XList.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/XList.php index c275fd2771..835e543d07 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/XList.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Indexes/XList.php @@ -48,7 +48,7 @@ class XList extends IndexXList contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('queries', [], new Indexes(), '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. You may filter on the following columns: ' . implode(', ', Indexes::ALLOWED_ATTRIBUTES), true) ->inject('response') ->inject('dbForProject') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Bulk/Delete.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Bulk/Delete.php index c9729d714d..a99316394a 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Bulk/Delete.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Bulk/Delete.php @@ -54,7 +54,7 @@ class Delete extends DocumentsDelete contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('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('response') ->inject('dbForProject') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Create.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Create.php index cf38bac63b..a39d9adbda 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Create.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Create.php @@ -94,7 +94,7 @@ class Create extends DocumentCreate ]) ->param('databaseId', '', new UID(), 'Database ID.') ->param('rowId', '', new CustomId(), 'Row ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can\'t start with a special char. Max length is 36 chars.', true) - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate). Make sure to define columns before creating rows.') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable). Make sure to define columns before creating rows.') ->param('data', [], new JSON(), 'Row data as JSON object.', true, example: '{"username":"walter.obrien","email":"walter.obrien@example.com","fullName":"Walter O\'Brien","age":30,"isAdmin":false}') ->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, only the current user is granted all permissions. [Learn more about permissions](https://appwrite.io/docs/permissions).', true) ->param('rows', [], fn (array $plan) => new ArrayList(new JSON(), $plan['databasesBatchSize'] ?? APP_LIMIT_DATABASE_BATCH), 'Array of rows data as JSON objects.', true, ['plan']) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Delete.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Delete.php index 7ac954c5dd..72f4ef3d94 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Delete.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Delete.php @@ -59,7 +59,7 @@ class Delete extends DocumentDelete contentType: ContentType::NONE )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('rowId', '', new UID(), 'Row ID.') ->inject('requestTimestamp') ->inject('response') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Get.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Get.php index 5704f75d82..faf1584d0d 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Get.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Get.php @@ -49,7 +49,7 @@ class Get extends DocumentGet contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/server/tablesdb#tablesDBCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the Database service [server integration](https://appwrite.io/docs/references/cloud/server-dart/tablesDB#createTable).') ->param('rowId', '', new UID(), 'Row ID.') ->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('response') diff --git a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/XList.php b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/XList.php index 5d503f1c59..00953a1d04 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/XList.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/XList.php @@ -49,7 +49,7 @@ class XList extends DocumentXList contentType: ContentType::JSON )) ->param('databaseId', '', new UID(), 'Database ID.') - ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TableDB service [server integration](https://appwrite.io/docs/server/tablesdbdb#tablesdbCreate).') + ->param('tableId', '', new UID(), 'Table ID. You can create a new table using the TablesDB service [server integration](https://appwrite.io/docs/products/databases/tables#create-table).') ->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('response') ->inject('dbForProject') diff --git a/src/Appwrite/Platform/Modules/Functions/Http/Deployments/Template/Create.php b/src/Appwrite/Platform/Modules/Functions/Http/Deployments/Template/Create.php index 4d93c8e8cd..bbe84c56ee 100644 --- a/src/Appwrite/Platform/Modules/Functions/Http/Deployments/Template/Create.php +++ b/src/Appwrite/Platform/Modules/Functions/Http/Deployments/Template/Create.php @@ -51,7 +51,7 @@ class Create extends Base description: <<createDocument('schedules', new Document([ 'region' => $project->getAttribute('region'), - 'resourceType' => ScheduleExecutions::getSupportedResource(), + 'resourceType' => SCHEDULE_RESOURCE_TYPE_EXECUTION, 'resourceId' => $execution->getId(), 'resourceInternalId' => $execution->getSequence(), 'resourceUpdatedAt' => DateTime::now(), diff --git a/src/Appwrite/Platform/Modules/Functions/Http/Executions/Delete.php b/src/Appwrite/Platform/Modules/Functions/Http/Executions/Delete.php index 9c818cfacc..666cb8310c 100644 --- a/src/Appwrite/Platform/Modules/Functions/Http/Executions/Delete.php +++ b/src/Appwrite/Platform/Modules/Functions/Http/Executions/Delete.php @@ -5,7 +5,6 @@ namespace Appwrite\Platform\Modules\Functions\Http\Executions; use Appwrite\Event\Event; use Appwrite\Extend\Exception; use Appwrite\Platform\Modules\Compute\Base; -use Appwrite\Platform\Tasks\ScheduleExecutions; use Appwrite\SDK\AuthType; use Appwrite\SDK\ContentType; use Appwrite\SDK\Method; @@ -100,7 +99,7 @@ class Delete extends Base if ($status === 'scheduled') { $schedule = $dbForPlatform->findOne('schedules', [ Query::equal('resourceId', [$execution->getId()]), - Query::equal('resourceType', [ScheduleExecutions::getSupportedResource()]), + Query::equal('resourceType', [SCHEDULE_RESOURCE_TYPE_EXECUTION]), Query::equal('active', [true]), ]); diff --git a/src/Appwrite/Platform/Modules/Functions/Http/Functions/Create.php b/src/Appwrite/Platform/Modules/Functions/Http/Functions/Create.php index 21a74f9a81..b00a2ad2bf 100644 --- a/src/Appwrite/Platform/Modules/Functions/Http/Functions/Create.php +++ b/src/Appwrite/Platform/Modules/Functions/Http/Functions/Create.php @@ -235,7 +235,7 @@ class Create extends Base $schedule = Authorization::skip( fn () => $dbForPlatform->createDocument('schedules', new Document([ 'region' => $project->getAttribute('region'), - 'resourceType' => 'function', + 'resourceType' => SCHEDULE_RESOURCE_TYPE_FUNCTION, 'resourceId' => $function->getId(), 'resourceInternalId' => $function->getSequence(), 'resourceUpdatedAt' => DateTime::now(), diff --git a/src/Appwrite/Platform/Modules/Functions/Workers/Builds.php b/src/Appwrite/Platform/Modules/Functions/Workers/Builds.php index 9547a752ef..d6385c1f40 100644 --- a/src/Appwrite/Platform/Modules/Functions/Workers/Builds.php +++ b/src/Appwrite/Platform/Modules/Functions/Workers/Builds.php @@ -686,6 +686,7 @@ class Builds extends Action if ($version === 'v2') { $command = 'tar -zxf /tmp/code.tar.gz -C /usr/code && cd /usr/local/src/ && ./build.sh'; } else { + $outputDirectory = $deployment->getAttribute('buildOutput') ?? $resource->getAttribute('outputDirectory'); if ($resource->getCollection() === 'sites') { $listFilesCommand = ''; @@ -693,8 +694,8 @@ class Builds extends Action $listFilesCommand .= 'echo "{APPWRITE_DETECTION_SEPARATOR_START}" && cd /usr/local/build'; // Enter output directory, if set - if (!empty($resource->getAttribute('outputDirectory', ''))) { - $listFilesCommand .= ' && cd ' . \escapeshellarg($resource->getAttribute('outputDirectory', '')); + if (!empty($outputDirectory)) { + $listFilesCommand .= ' && cd ' . \escapeshellarg($outputDirectory); } // Print files, and end separation @@ -725,7 +726,7 @@ class Builds extends Action destination: APP_STORAGE_BUILDS . "/app-{$project->getId()}", variables: $vars, command: $command, - outputDirectory: $resource->getAttribute('outputDirectory', '') + outputDirectory: $outputDirectory ?? '' ); Console::log('createRuntime finished'); @@ -899,7 +900,7 @@ class Builds extends Action Console::log('Build details stored'); - $this->afterBuildSuccess($queueForRealtime, $dbForProject, $deployment); + $this->afterBuildSuccess($queueForRealtime, $dbForProject, $deployment, $runtime, $adapter); $logs = $deployment->getAttribute('buildLogs', ''); /** Screenshot site */ @@ -1390,13 +1391,28 @@ class Builds extends Action * @param Realtime $queueForRealtime * @param Database $dbForProject * @param Document $deployment + * @param array $runtime + * @param string|null $adapter * @return void + * @throws Exception */ - protected function afterBuildSuccess(Realtime $queueForRealtime, Database $dbForProject, Document &$deployment): void + protected function afterBuildSuccess(Realtime $queueForRealtime, Database $dbForProject, Document &$deployment, array $runtime, ?string $adapter): void { - assert($queueForRealtime instanceof Realtime); - assert($dbForProject instanceof Database); - assert($deployment instanceof Document); + if (!($queueForRealtime instanceof Realtime)) { + throw new Exception('queueForRealtime must be an instance of Realtime'); + } + if (!($dbForProject instanceof Database)) { + throw new Exception('dbForProject must be an instance of Database'); + } + if (!($deployment instanceof Document)) { + throw new Exception('deployment must be an instance of Document'); + } + if (!is_array($runtime)) { + throw new Exception('runtime must be an array'); + } + if (!is_string($adapter) && !is_null($adapter)) { + throw new Exception('adapter must be a string or null'); + } } protected function getRuntime(Document $resource, string $version): array diff --git a/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Delete.php b/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Delete.php new file mode 100644 index 0000000000..5d76cc161e --- /dev/null +++ b/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Delete.php @@ -0,0 +1,88 @@ +setHttpMethod(Action::HTTP_REQUEST_METHOD_DELETE) + ->setHttpPath('/v1/proxy/rules/:ruleId') + ->desc('Delete rule') + ->groups(['api', 'proxy']) + ->label('scope', 'rules.write') + ->label('event', 'rules.[ruleId].delete') + ->label('audits.event', 'rules.delete') + ->label('audits.resource', 'rule/{request.ruleId}') + ->label('sdk', new Method( + namespace: 'proxy', + group: null, + name: 'deleteRule', + description: <<param('ruleId', '', new UID(), 'Rule ID.') + ->inject('response') + ->inject('project') + ->inject('dbForPlatform') + ->inject('queueForDeletes') + ->inject('queueForEvents') + ->callback($this->action(...)); + } + + public function action( + string $ruleId, + Response $response, + Document $project, + Database $dbForPlatform, + DeleteEvent $queueForDeletes, + Event $queueForEvents + ) { + $rule = $dbForPlatform->getDocument('rules', $ruleId); + + if ($rule->isEmpty() || $rule->getAttribute('projectInternalId') !== $project->getSequence()) { + throw new Exception(Exception::RULE_NOT_FOUND); + } + + $dbForPlatform->deleteDocument('rules', $rule->getId()); + + $queueForDeletes + ->setType(DELETE_TYPE_DOCUMENT) + ->setDocument($rule); + + $queueForEvents->setParam('ruleId', $rule->getId()); + + $response->noContent(); + } +} diff --git a/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Get.php b/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Get.php new file mode 100644 index 0000000000..77aa3df581 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Get.php @@ -0,0 +1,73 @@ +setHttpMethod(Action::HTTP_REQUEST_METHOD_GET) + ->setHttpPath('/v1/proxy/rules/:ruleId') + ->desc('Get rule') + ->groups(['api', 'proxy']) + ->label('scope', 'rules.read') + ->label('sdk', new Method( + namespace: 'proxy', + group: null, + name: 'getRule', + description: <<param('ruleId', '', new UID(), 'Rule ID.') + ->inject('response') + ->inject('project') + ->inject('dbForPlatform') + ->callback($this->action(...)); + } + + public function action( + string $ruleId, + Response $response, + Document $project, + Database $dbForPlatform + ) { + $rule = $dbForPlatform->getDocument('rules', $ruleId); + + if ($rule->isEmpty() || $rule->getAttribute('projectInternalId') !== $project->getSequence()) { + throw new Exception(Exception::RULE_NOT_FOUND); + } + + $certificate = $dbForPlatform->getDocument('certificates', $rule->getAttribute('certificateId', '')); + $rule->setAttribute('logs', $certificate->getAttribute('logs', '')); + $rule->setAttribute('renewAt', $certificate->getAttribute('renewDate', '')); + + $response->dynamic($rule, Response::MODEL_PROXY_RULE); + } +} diff --git a/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Verification/Update.php b/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Verification/Update.php new file mode 100644 index 0000000000..3d52d203c3 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Proxy/Http/Rules/Verification/Update.php @@ -0,0 +1,186 @@ +setHttpMethod(Action::HTTP_REQUEST_METHOD_PATCH) + ->setHttpPath('/v1/proxy/rules/:ruleId/verification') + ->desc('Update rule verification status') + ->groups(['api', 'proxy']) + ->label('scope', 'rules.write') + ->label('event', 'rules.[ruleId].update') + ->label('audits.event', 'rule.update') + ->label('audits.resource', 'rule/{response.$id}') + ->label('sdk', new Method( + namespace: 'proxy', + group: null, + name: 'updateRuleVerification', + description: <<param('ruleId', '', new UID(), 'Rule ID.') + ->inject('response') + ->inject('queueForCertificates') + ->inject('queueForEvents') + ->inject('project') + ->inject('dbForPlatform') + ->inject('log') + ->callback($this->action(...)); + } + + public function action( + string $ruleId, + Response $response, + Certificate $queueForCertificates, + Event $queueForEvents, + Document $project, + Database $dbForPlatform, + Log $log + ) { + $rule = $dbForPlatform->getDocument('rules', $ruleId); + + if ($rule->isEmpty() || $rule->getAttribute('projectInternalId') !== $project->getSequence()) { + throw new Exception(Exception::RULE_NOT_FOUND); + } + + $targetCNAME = null; + switch ($rule->getAttribute('type', '')) { + case 'api': + // For example: fra.cloud.appwrite.io + $targetCNAME = new Domain(System::getEnv('_APP_DOMAIN_TARGET_CNAME', '')); + break; + case 'redirect': + // For example: appwrite.network + $targetCNAME = new Domain(System::getEnv('_APP_DOMAIN_SITES', '')); + break; + case 'deployment': + switch ($rule->getAttribute('deploymentResourceType', '')) { + case 'function': + // For example: fra.appwrite.run + $targetCNAME = new Domain(System::getEnv('_APP_DOMAIN_FUNCTIONS', '')); + break; + case 'site': + // For example: appwrite.network + $targetCNAME = new Domain(System::getEnv('_APP_DOMAIN_SITES', '')); + break; + default: + break; + } + // no break + default: + break; + } + + $validators = []; + + if (!is_null($targetCNAME)) { + if ($targetCNAME->isKnown() && !$targetCNAME->isTest()) { + $validators[] = new DNS($targetCNAME->get(), DNS::RECORD_CNAME); + } + } + + if ((new IP(IP::V4))->isValid(System::getEnv('_APP_DOMAIN_TARGET_A', ''))) { + $validators[] = new DNS(System::getEnv('_APP_DOMAIN_TARGET_A', ''), DNS::RECORD_A); + } + if ((new IP(IP::V6))->isValid(System::getEnv('_APP_DOMAIN_TARGET_AAAA', ''))) { + $validators[] = new DNS(System::getEnv('_APP_DOMAIN_TARGET_AAAA', ''), DNS::RECORD_AAAA); + } + + if (empty($validators)) { + throw new Exception(Exception::GENERAL_SERVER_ERROR, 'At least one of domain targets environment variable must be configured.'); + } + + if ($rule->getAttribute('verification') === true) { + return $response->dynamic($rule, Response::MODEL_PROXY_RULE); + } + + $validator = new AnyOf($validators, AnyOf::TYPE_STRING); + $domain = new Domain($rule->getAttribute('domain', '')); + + $validationStart = \microtime(true); + if (!$validator->isValid($domain->get())) { + $log->addExtra('dnsTiming', \strval(\microtime(true) - $validationStart)); + $log->addTag('dnsDomain', $domain->get()); + + $errors = []; + foreach ($validators as $validator) { + if (!empty($validator->getLogs())) { + $errors[] = $validator->getLogs(); + } + } + + $error = \implode("\n", $errors); + $log->addExtra('dnsResponse', \is_array($error) ? \json_encode($error) : \strval($error)); + + throw new Exception(Exception::RULE_VERIFICATION_FAILED); + } + + // Ensure CAA won't block certificate issuance + if (!empty(System::getEnv('_APP_DOMAIN_TARGET_CAA', ''))) { + $validationStart = \microtime(true); + $validator = new DNS(System::getEnv('_APP_DOMAIN_TARGET_CAA', ''), DNS::RECORD_CAA); + if (!$validator->isValid($domain->get())) { + $log->addExtra('dnsTimingCaa', \strval(\microtime(true) - $validationStart)); + $log->addTag('dnsDomain', $domain->get()); + $error = $validator->getDescription(); + $log->addExtra('dnsResponse', \is_array($error) ? \json_encode($error) : \strval($error)); + throw new Exception(Exception::RULE_VERIFICATION_FAILED, 'Domain verification failed because CAA records do not allow Appwrite\'s certificate issuer.'); + } + } + + $dbForPlatform->updateDocument('rules', $rule->getId(), $rule->setAttribute('status', 'verifying')); + + // Issue a TLS certificate when domain is verified + $queueForCertificates + ->setDomain(new Document([ + 'domain' => $rule->getAttribute('domain'), + 'domainType' => $rule->getAttribute('deploymentResourceType', $rule->getAttribute('type')), + ])) + ->trigger(); + + $queueForEvents->setParam('ruleId', $rule->getId()); + + $certificate = $dbForPlatform->getDocument('certificates', $rule->getAttribute('certificateId', '')); + $rule->setAttribute('logs', $certificate->getAttribute('logs', '')); + + $response->dynamic($rule, Response::MODEL_PROXY_RULE); + } +} diff --git a/src/Appwrite/Platform/Modules/Proxy/Http/Rules/XList.php b/src/Appwrite/Platform/Modules/Proxy/Http/Rules/XList.php new file mode 100644 index 0000000000..e084cf76b2 --- /dev/null +++ b/src/Appwrite/Platform/Modules/Proxy/Http/Rules/XList.php @@ -0,0 +1,118 @@ +setHttpMethod(Action::HTTP_REQUEST_METHOD_GET) + ->setHttpPath('/v1/proxy/rules') + ->desc('List rules') + ->groups(['api', 'proxy']) + ->label('scope', 'rules.read') + ->label('sdk', new Method( + namespace: 'proxy', + group: null, + name: 'listRules', + description: <<param('queries', [], new Rules(), 'Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/databases#querying-documents). Maximum of ' . APP_LIMIT_ARRAY_PARAMS_SIZE . ' queries are allowed, each ' . APP_LIMIT_ARRAY_ELEMENT_SIZE . ' characters long. You may filter on the following attributes: ' . implode(', ', Rules::ALLOWED_ATTRIBUTES), true) + ->param('search', '', new Text(256), 'Search term to filter your list results. Max length: 256 chars.', true) + ->inject('response') + ->inject('project') + ->inject('dbForPlatform') + ->callback($this->action(...)); + } + + public function action( + array $queries, + string $search, + Response $response, + Document $project, + Database $dbForPlatform + ) { + try { + $queries = Query::parseQueries($queries); + } catch (QueryException $e) { + throw new Exception(Exception::GENERAL_QUERY_INVALID, $e->getMessage()); + } + + if (!empty($search)) { + $queries[] = Query::search('search', $search); + } + + $queries[] = Query::equal('projectInternalId', [$project->getSequence()]); + + /** + * Get cursor document if there was a cursor query, we use array_filter and reset for reference $cursor to $queries + */ + $cursor = \array_filter($queries, function ($query) { + return \in_array($query->getMethod(), [Query::TYPE_CURSOR_AFTER, Query::TYPE_CURSOR_BEFORE]); + }); + $cursor = reset($cursor); + if ($cursor) { + /** @var Query $cursor */ + + $validator = new Cursor(); + if (!$validator->isValid($cursor)) { + throw new Exception(Exception::GENERAL_QUERY_INVALID, $validator->getDescription()); + } + + $ruleId = $cursor->getValue(); + $cursorDocument = $dbForPlatform->getDocument('rules', $ruleId); + + if ($cursorDocument->isEmpty()) { + throw new Exception(Exception::GENERAL_CURSOR_NOT_FOUND, "Rule '{$ruleId}' for the 'cursor' value not found."); + } + + $cursor->setValue($cursorDocument); + } + + $filterQueries = Query::groupByType($queries)['filters']; + + $rules = $dbForPlatform->find('rules', $queries); + foreach ($rules as $rule) { + $certificate = $dbForPlatform->getDocument('certificates', $rule->getAttribute('certificateId', '')); + $rule->setAttribute('logs', $certificate->getAttribute('logs', '')); + $rule->setAttribute('renewAt', $certificate->getAttribute('renewDate', '')); + } + + $response->dynamic(new Document([ + 'rules' => $rules, + 'total' => $dbForPlatform->count('rules', $filterQueries, APP_LIMIT_COUNT), + ]), Response::MODEL_PROXY_RULE_LIST); + } +} diff --git a/src/Appwrite/Platform/Modules/Proxy/Services/Http.php b/src/Appwrite/Platform/Modules/Proxy/Services/Http.php index c5f11ad5be..980c64cc54 100644 --- a/src/Appwrite/Platform/Modules/Proxy/Services/Http.php +++ b/src/Appwrite/Platform/Modules/Proxy/Services/Http.php @@ -3,9 +3,13 @@ namespace Appwrite\Platform\Modules\Proxy\Services; use Appwrite\Platform\Modules\Proxy\Http\Rules\API\Create as CreateAPIRule; +use Appwrite\Platform\Modules\Proxy\Http\Rules\Delete as DeleteRule; use Appwrite\Platform\Modules\Proxy\Http\Rules\Function\Create as CreateFunctionRule; +use Appwrite\Platform\Modules\Proxy\Http\Rules\Get as GetRule; use Appwrite\Platform\Modules\Proxy\Http\Rules\Redirect\Create as CreateRedirectRule; use Appwrite\Platform\Modules\Proxy\Http\Rules\Site\Create as CreateSiteRule; +use Appwrite\Platform\Modules\Proxy\Http\Rules\Verification\Update as UpdateRuleVerification; +use Appwrite\Platform\Modules\Proxy\Http\Rules\XList as ListRules; use Utopia\Platform\Service; class Http extends Service @@ -19,5 +23,9 @@ class Http extends Service $this->addAction(CreateSiteRule::getName(), new CreateSiteRule()); $this->addAction(CreateFunctionRule::getName(), new CreateFunctionRule()); $this->addAction(CreateRedirectRule::getName(), new CreateRedirectRule()); + $this->addAction(GetRule::getName(), new GetRule()); + $this->addAction(ListRules::getName(), new ListRules()); + $this->addAction(DeleteRule::getName(), new DeleteRule()); + $this->addAction(UpdateRuleVerification::getName(), new UpdateRuleVerification()); } } diff --git a/src/Appwrite/Platform/Modules/Sites/Http/Deployments/Template/Create.php b/src/Appwrite/Platform/Modules/Sites/Http/Deployments/Template/Create.php index a2040d830b..dc90045b0c 100644 --- a/src/Appwrite/Platform/Modules/Sites/Http/Deployments/Template/Create.php +++ b/src/Appwrite/Platform/Modules/Sites/Http/Deployments/Template/Create.php @@ -53,7 +53,7 @@ class Create extends Base description: <</dev/null; rm -rf ' . $result); try { $sdk->generate($result); @@ -309,7 +309,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND git checkout ' . $gitBranch . ' || git checkout -b ' . $gitBranch . ' && \ git fetch origin ' . $gitBranch . ' || git push -u origin ' . $gitBranch . ' && \ git pull origin ' . $gitBranch . ' && \ - rm -rf ' . $target . '/* && \ + find . -mindepth 1 ! -path "./.git*" -delete && \ cp -r ' . $result . '/. ' . $target . '/ && \ git add . && \ git commit -m "' . $message . '" && \ @@ -317,7 +317,6 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND '); Console::success("Pushed {$language['name']} SDK to {$gitUrl}"); - if ($createPr) { $prTitle = "feat: {$language['name']} SDK update for version {$language['version']}"; $prBody = "This PR contains updates to the {$language['name']} SDK for version {$language['version']}."; @@ -352,14 +351,32 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND } else { $errorMessage = implode("\n", $prOutput); if (strpos($errorMessage, 'already exists') !== false) { - Console::warning("Pull request already exists for {$language['name']} SDK"); + Console::warning("Pull request already exists for {$language['name']} SDK, updating title and body..."); + + $updateCommand = 'cd ' . $target . ' && \ + gh pr edit "' . $gitBranch . '" \ + --repo "' . $repoName . '" \ + --title "' . $prTitle . '" \ + --body "' . $prBody . '" \ + 2>&1'; + + $updateOutput = []; + $updateReturnCode = 0; + \exec($updateCommand, $updateOutput, $updateReturnCode); + + if ($updateReturnCode === 0) { + Console::success("Successfully updated pull request for {$language['name']} SDK"); + } else { + $updateErrorMessage = implode("\n", $updateOutput); + Console::error("Failed to update pull request for {$language['name']} SDK: " . $updateErrorMessage); + } } else { Console::error("Failed to create pull request for {$language['name']} SDK: " . $errorMessage); } } } - \exec('rm -rf ' . $target); + \exec('chmod -R u+w ' . $target . ' && rm -rf ' . $target); Console::success("Remove temp directory '{$target}' for {$language['name']} SDK"); } diff --git a/src/Appwrite/Platform/Tasks/ScheduleExecutions.php b/src/Appwrite/Platform/Tasks/ScheduleExecutions.php index 14a4259e17..83a3f51b03 100644 --- a/src/Appwrite/Platform/Tasks/ScheduleExecutions.php +++ b/src/Appwrite/Platform/Tasks/ScheduleExecutions.php @@ -6,6 +6,12 @@ use Appwrite\Event\Func; use Swoole\Coroutine as Co; use Utopia\Database\Database; +/** + * ScheduleExecutions + * + * Handles delayed executions by processing one-time scheduled tasks + * that are executed at a specific future time. + */ class ScheduleExecutions extends ScheduleBase { public const UPDATE_TIMER = 3; // seconds @@ -18,12 +24,12 @@ class ScheduleExecutions extends ScheduleBase public static function getSupportedResource(): string { - return 'execution'; + return SCHEDULE_RESOURCE_TYPE_EXECUTION; } public static function getCollectionId(): string { - return 'executions'; + return RESOURCE_TYPE_EXECUTIONS; } protected function enqueueResources(Database $dbForPlatform, callable $getProjectDB): void diff --git a/src/Appwrite/Platform/Tasks/ScheduleFunctions.php b/src/Appwrite/Platform/Tasks/ScheduleFunctions.php index 6f072425e4..7fda2f75df 100644 --- a/src/Appwrite/Platform/Tasks/ScheduleFunctions.php +++ b/src/Appwrite/Platform/Tasks/ScheduleFunctions.php @@ -7,8 +7,13 @@ use Cron\CronExpression; use Utopia\CLI\Console; use Utopia\Database\Database; use Utopia\Database\DateTime; -use Utopia\Pools\Group; +/** + * ScheduleFunctions + * + * Handles cron job related executions by processing cron expressions + * and scheduling function executions based on recurring schedules. + */ class ScheduleFunctions extends ScheduleBase { public const UPDATE_TIMER = 10; // seconds @@ -23,12 +28,12 @@ class ScheduleFunctions extends ScheduleBase public static function getSupportedResource(): string { - return 'function'; + return SCHEDULE_RESOURCE_TYPE_FUNCTION; } public static function getCollectionId(): string { - return 'functions'; + return RESOURCE_TYPE_FUNCTIONS; } protected function enqueueResources(Database $dbForPlatform, callable $getProjectDB): void diff --git a/src/Appwrite/Platform/Tasks/ScheduleMessages.php b/src/Appwrite/Platform/Tasks/ScheduleMessages.php index fe4afbe69c..57f6dd8002 100644 --- a/src/Appwrite/Platform/Tasks/ScheduleMessages.php +++ b/src/Appwrite/Platform/Tasks/ScheduleMessages.php @@ -17,12 +17,12 @@ class ScheduleMessages extends ScheduleBase public static function getSupportedResource(): string { - return 'message'; + return SCHEDULE_RESOURCE_TYPE_MESSAGE; } public static function getCollectionId(): string { - return 'messages'; + return RESOURCE_TYPE_MESSAGES; } protected function enqueueResources(Database $dbForPlatform, callable $getProjectDB): void diff --git a/src/Appwrite/Platform/Workers/Certificates.php b/src/Appwrite/Platform/Workers/Certificates.php index 2138e440b6..73447b5515 100644 --- a/src/Appwrite/Platform/Workers/Certificates.php +++ b/src/Appwrite/Platform/Workers/Certificates.php @@ -93,12 +93,13 @@ class Certificates extends Action $document = new Document($payload['domain'] ?? []); $domain = new Domain($document->getAttribute('domain', '')); $skipRenewCheck = $payload['skipRenewCheck'] ?? false; + $validationDomain = $payload['validationDomain'] ?? null; $log->addTag('domain', $domain->get()); $domainType = $document->getAttribute('domainType'); - $this->execute($domain, $domainType, $dbForPlatform, $queueForMails, $queueForEvents, $queueForWebhooks, $queueForFunctions, $queueForRealtime, $log, $certificates, $skipRenewCheck, $plan); + $this->execute($domain, $domainType, $dbForPlatform, $queueForMails, $queueForEvents, $queueForWebhooks, $queueForFunctions, $queueForRealtime, $log, $certificates, $skipRenewCheck, $plan, $validationDomain); } /** @@ -112,6 +113,7 @@ class Certificates extends Action * @param CertificatesAdapter $certificates * @param bool $skipRenewCheck * @param array $plan + * @param string|null $validationDomain * @return void * @throws Throwable * @throws \Utopia\Database\Exception @@ -128,7 +130,8 @@ class Certificates extends Action Log $log, CertificatesAdapter $certificates, bool $skipRenewCheck = false, - array $plan = [] + array $plan = [], + ?string $validationDomain = null ): void { /** * 1. Read arguments and validate domain @@ -171,9 +174,12 @@ class Certificates extends Action $success = false; try { + $date = \date('H:i:s'); + $certificate->setAttribute('logs', "\033[90m[{$date}] \033[97mCertificate generation started. \033[0m\n"); + // Validate domain and DNS records. Skip if job is forced if (!$skipRenewCheck) { - $mainDomain = $this->getMainDomain(); + $mainDomain = $validationDomain ?? $this->getMainDomain(); $isMainDomain = !isset($mainDomain) || $domain->get() === $mainDomain; $this->validateDomain($domain, $isMainDomain, $log); @@ -198,9 +204,11 @@ class Certificates extends Action $success = true; } catch (Throwable $e) { $logs = $e->getMessage(); + $currentLogs = $certificate->getAttribute('logs', ''); + $date = \date('H:i:s'); + $errorMessage = "\033[90m[{$date}] \033[31mCertificate generation failed: \033[0m\n"; - // Set exception as log in certificate document - $certificate->setAttribute('logs', \mb_strcut($logs, 0, 1000000));// Limit to 1MB + $certificate->setAttribute('logs', $currentLogs . $errorMessage . \mb_strcut($logs, 0, 500000));// Limit to 500kb // Increase attempts count $attempts = $certificate->getAttribute('attempts', 0) + 1; diff --git a/src/Appwrite/Platform/Workers/StatsResources.php b/src/Appwrite/Platform/Workers/StatsResources.php index 98c9d01a87..5ec306c5bb 100644 --- a/src/Appwrite/Platform/Workers/StatsResources.php +++ b/src/Appwrite/Platform/Workers/StatsResources.php @@ -432,11 +432,45 @@ class StatsResources extends Action protected function writeDocuments(Database $dbForLogs, Document $project): void { - $dbForLogs->createOrUpdateDocuments( - 'stats', - $this->documents - ); - $this->documents = []; - Console::success('Stats written to logs db for project: ' . $project->getId() . '(' . $project->getSequence() . ')'); + $message = 'Stats writeDocuments project: ' . $project->getId() . '(' . $project->getSequence() . ')'; + + /** + * sort by unique index key reduce locks/deadlocks + */ + usort($this->documents, function ($a, $b) { + // Metric DESC + $cmp = strcmp($b['metric'], $a['metric']); + if ($cmp !== 0) { + return $cmp; + } + + // Period ASC + $cmp = strcmp($a['period'], $b['period']); + if ($cmp !== 0) { + return $cmp; + } + + // Time ASC, NULLs first + if ($a['time'] === null) { + return ($b['time'] === null) ? 0 : -1; + } + if ($b['time'] === null) { + return 1; + } + + return strcmp($a['time'], $b['time']); + }); + + try { + $dbForLogs->upsertDocuments( + 'stats', + $this->documents, + ); + + Console::success($message . ' | Documents: ' . count($this->documents)); + } catch (\Throwable $e) { + Console::error('Error: ' . $message . ' | Exception: ' . $e->getMessage()); + throw $e; + } } } diff --git a/src/Appwrite/Platform/Workers/StatsUsage.php b/src/Appwrite/Platform/Workers/StatsUsage.php index 3610381d5a..4da63b6ae3 100644 --- a/src/Appwrite/Platform/Workers/StatsUsage.php +++ b/src/Appwrite/Platform/Workers/StatsUsage.php @@ -424,12 +424,40 @@ class StatsUsage extends Action try { $dbForProject = $getProjectDB($projectStats['project']); Console::log('Processing batch with ' . count($projectStats['stats']) . ' stats'); - $dbForProject->createOrUpdateDocumentsWithIncrease('stats', 'value', $projectStats['stats']); - Console::success('Batch successfully written to DB'); - unset($this->projects[$sequence]); + /** + * Sort by unique index key reduce locks/deadlocks + */ + usort($projectStats['stats'], function ($a, $b) { + // Metric DESC + $cmp = strcmp($b['metric'], $a['metric']); + if ($cmp !== 0) { + return $cmp; + } + + // Period ASC + $cmp = strcmp($a['period'], $b['period']); + if ($cmp !== 0) { + return $cmp; + } + + // Time ASC, NULLs first + if ($a['time'] === null) { + return ($b['time'] === null) ? 0 : -1; + } + if ($b['time'] === null) { + return 1; + } + + return strcmp($a['time'], $b['time']); + }); + + $dbForProject->upsertDocumentsWithIncrease('stats', 'value', $projectStats['stats']); + Console::success('Batch successfully written to DB'); } catch (Throwable $e) { Console::error('Error processing stats: ' . $e->getMessage()); + } finally { + unset($this->projects[$sequence]); } } @@ -468,12 +496,53 @@ class StatsUsage extends Action try { Console::log('Processing batch with ' . count($this->statDocuments) . ' stats'); - $dbForLogs->createOrUpdateDocumentsWithIncrease( + + /** + * Sort by UNIQUE KEY "_key_metric_period_time" ("_tenant","metric" DESC,"period","time") + * Here we sort by _tenant as well because of setTenantPerDocument + */ + + usort($this->statDocuments, function ($a, $b) { + // Tenant ASC + $cmp = $a['$tenant'] <=> $b['$tenant']; + if ($cmp !== 0) { + return $cmp; + } + + // Metric DESC + $cmp = strcmp($b['metric'], $a['metric']); + if ($cmp !== 0) { + return $cmp; + } + + // Period ASC + $cmp = strcmp($a['period'], $b['period']); + if ($cmp !== 0) { + return $cmp; + } + + // Time ASC, NULLs first + if ($a['time'] === null) { + return ($b['time'] === null) ? 0 : -1; + } + if ($b['time'] === null) { + return 1; + } + + return strcmp($a['time'], $b['time']); + }); + + $dbForLogs->upsertDocumentsWithIncrease( 'stats', 'value', $this->statDocuments ); Console::success('Usage logs pushed to Logs DB'); + + /** + * todo: Do we need to unset $this->statDocuments? + */ + } catch (Throwable $th) { Console::error($th->getMessage()); } diff --git a/src/Appwrite/SDK/Specification/Format.php b/src/Appwrite/SDK/Specification/Format.php index 825f9bf01d..c687df143a 100644 --- a/src/Appwrite/SDK/Specification/Format.php +++ b/src/Appwrite/SDK/Specification/Format.php @@ -112,7 +112,7 @@ abstract class Format return $this->params[$key] ?? $default; } - protected function getEnumName(string $service, string $method, string $param): ?string + protected function getRequestEnumName(string $service, string $method, string $param): ?string { /* `$service` is `$namespace` */ switch ($service) { @@ -450,7 +450,7 @@ abstract class Format return null; } - public function getEnumKeys(string $service, string $method, string $param): array + public function getRequestEnumKeys(string $service, string $method, string $param): array { $values = []; switch ($service) { @@ -543,6 +543,175 @@ abstract class Format return $values; } + public function getResponseEnumName(string $model, string $param): ?string + { + switch ($model) { + case 'attributeString': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeInteger': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeFloat': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeBoolean': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeEmail': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeEnum': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeIp': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeUrl': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeDatetime': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeRelationship': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributePoint': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributeLine': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'attributePolygon': + switch ($param) { + case 'status': + return 'AttributeStatus'; + } + break; + case 'columnString': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnInteger': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnFloat': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnBoolean': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnEmail': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnEnum': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnIp': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnUrl': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnDatetime': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnRelationship': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnPoint': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnLine': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'columnPolygon': + switch ($param) { + case 'status': + return 'ColumnStatus'; + } + break; + case 'healthStatus': + switch ($param) { + case 'status': + return 'HealthCheckStatus'; + } + break; + } + return null; + } + protected function getNestedModels(Model $model, array &$usedModels): void { foreach ($model->getRules() as $rule) { diff --git a/src/Appwrite/SDK/Specification/Format/OpenAPI3.php b/src/Appwrite/SDK/Specification/Format/OpenAPI3.php index 6432342e45..2380f03920 100644 --- a/src/Appwrite/SDK/Specification/Format/OpenAPI3.php +++ b/src/Appwrite/SDK/Specification/Format/OpenAPI3.php @@ -9,8 +9,11 @@ use Appwrite\SDK\Response; use Appwrite\SDK\Specification\Format; use Appwrite\Template\Template; use Appwrite\Utopia\Response\Model; +use Appwrite\Utopia\Response\Model\Any; +use Utopia\Database\Database; use Utopia\Database\Helpers\Permission; use Utopia\Database\Helpers\Role; +use Utopia\Database\Validator\Spatial; use Utopia\Validator; use Utopia\Validator\ArrayList; use Utopia\Validator\Nullable; @@ -448,13 +451,18 @@ class OpenAPI3 extends Format ]; break; case 'Utopia\Database\Validator\Spatial': + /** @var Spatial $validator */ $node['schema']['type'] = 'array'; $node['schema']['items'] = [ 'oneOf' => [ ['type' => 'array'] ] ]; - $node['schema']['x-example'] = '[[1,2], [3, 4]]'; + $node['schema']['x-example'] = match ($validator->getSpatialType()) { + Database::VAR_POINT => '[1, 2]', + Database::VAR_LINESTRING => '[[1, 2], [3, 4], [5, 6]]', + Database::VAR_POLYGON => '[[[1, 2], [3, 4], [5, 6], [1, 2]]]', + }; break; case 'Appwrite\Utopia\Database\Validator\Queries\Columns': case 'Appwrite\Utopia\Database\Validator\Queries\Attributes': @@ -552,8 +560,8 @@ class OpenAPI3 extends Format if ($allowed) { $node['schema']['enum'] = $validator->getList(); - $node['schema']['x-enum-name'] = $this->getEnumName($sdk->getNamespace() ?? '', $methodName, $name); - $node['schema']['x-enum-keys'] = $this->getEnumKeys($sdk->getNamespace() ?? '', $methodName, $name); + $node['schema']['x-enum-name'] = $this->getRequestEnumName($sdk->getNamespace() ?? '', $methodName, $name); + $node['schema']['x-enum-keys'] = $this->getRequestEnumKeys($sdk->getNamespace() ?? '', $methodName, $name); } if ($validator->getType() === 'integer') { $node['format'] = 'int32'; @@ -675,6 +683,10 @@ class OpenAPI3 extends Format $type = 'string'; break; + case 'enum': + $type = 'string'; + break; + case 'json': $type = 'object'; $output['components']['schemas'][$model->getType()]['properties'][$name]['additionalProperties'] = true; @@ -763,11 +775,27 @@ class OpenAPI3 extends Format if ($items) { $output['components']['schemas'][$model->getType()]['properties'][$name]['items'] = $items; } + if ($rule['type'] === 'enum' && !empty($rule['enum'])) { + if ($rule['array']) { + $output['components']['schemas'][$model->getType()]['properties'][$name]['items']['enum'] = $rule['enum']; + $enumName = $this->getResponseEnumName($model->getType(), $name); + if ($enumName) { + $output['components']['schemas'][$model->getType()]['properties'][$name]['items']['x-enum-name'] = $enumName; + } + } else { + $output['components']['schemas'][$model->getType()]['properties'][$name]['enum'] = $rule['enum']; + $enumName = $this->getResponseEnumName($model->getType(), $name); + if ($enumName) { + $output['components']['schemas'][$model->getType()]['properties'][$name]['x-enum-name'] = $enumName; + } + } + } if (!in_array($name, $required)) { $output['components']['schemas'][$model->getType()]['properties'][$name]['nullable'] = true; } } + /** @var Any $model */ if ($model->isAny() && !empty($model->getSampleData())) { $examples = array_merge($examples, $model->getSampleData()); } diff --git a/src/Appwrite/SDK/Specification/Format/Swagger2.php b/src/Appwrite/SDK/Specification/Format/Swagger2.php index 8a84a3a398..ed1217d86c 100644 --- a/src/Appwrite/SDK/Specification/Format/Swagger2.php +++ b/src/Appwrite/SDK/Specification/Format/Swagger2.php @@ -9,8 +9,11 @@ use Appwrite\SDK\Response; use Appwrite\SDK\Specification\Format; use Appwrite\Template\Template; use Appwrite\Utopia\Response\Model; +use Appwrite\Utopia\Response\Model\Any; +use Utopia\Database\Database; use Utopia\Database\Helpers\Permission; use Utopia\Database\Helpers\Role; +use Utopia\Database\Validator\Spatial; use Utopia\Route; use Utopia\Validator; use Utopia\Validator\ArrayList; @@ -463,13 +466,18 @@ class Swagger2 extends Format ]; break; case 'Utopia\Database\Validator\Spatial': + /** @var Spatial $validator */ $node['type'] = 'array'; $node['schema']['items'] = [ 'oneOf' => [ ['type' => 'array'] ] ]; - $node['x-example'] = '[[1,2], [3, 4]]'; + $node['x-example'] = match ($validator->getSpatialType()) { + Database::VAR_POINT => '[1, 2]', + Database::VAR_LINESTRING => '[[1, 2], [3, 4], [5, 6]]', + Database::VAR_POLYGON => '[[[1, 2], [3, 4], [5, 6], [1, 2]]]', + }; break; case 'Utopia\Validator\JSON': case 'Utopia\Validator\Mock': @@ -558,8 +566,8 @@ class Swagger2 extends Format if ($allowed && $validator->getType() === 'string') { $node['enum'] = $validator->getList(); - $node['x-enum-name'] = $this->getEnumName($namespace, $methodName, $name); - $node['x-enum-keys'] = $this->getEnumKeys($namespace, $methodName, $name); + $node['x-enum-name'] = $this->getRequestEnumName($namespace, $methodName, $name); + $node['x-enum-keys'] = $this->getRequestEnumKeys($namespace, $methodName, $name); } if ($validator->getType() === 'integer') { @@ -683,6 +691,10 @@ class Swagger2 extends Format $type = 'string'; break; + case 'enum': + $type = 'string'; + break; + case 'json': $type = 'object'; break; @@ -785,11 +797,27 @@ class Swagger2 extends Format if ($items) { $output['definitions'][$model->getType()]['properties'][$name]['items'] = $items; } + if ($rule['type'] === 'enum' && !empty($rule['enum'])) { + if ($rule['array']) { + $output['definitions'][$model->getType()]['properties'][$name]['items']['enum'] = $rule['enum']; + $enumName = $this->getResponseEnumName($model->getType(), $name); + if ($enumName) { + $output['definitions'][$model->getType()]['properties'][$name]['items']['x-enum-name'] = $enumName; + } + } else { + $output['definitions'][$model->getType()]['properties'][$name]['enum'] = $rule['enum']; + $enumName = $this->getResponseEnumName($model->getType(), $name); + if ($enumName) { + $output['definitions'][$model->getType()]['properties'][$name]['x-enum-name'] = $enumName; + } + } + } if (!in_array($name, $required)) { $output['definitions'][$model->getType()]['properties'][$name]['x-nullable'] = true; } } + /** @var Any $model */ if ($model->isAny() && !empty($model->getSampleData())) { $examples = array_merge($examples, $model->getSampleData()); } diff --git a/src/Appwrite/Transformation/Adapter/Preview.php b/src/Appwrite/Transformation/Adapter/Preview.php index bfbb2e82fd..e69ab5252e 100644 --- a/src/Appwrite/Transformation/Adapter/Preview.php +++ b/src/Appwrite/Transformation/Adapter/Preview.php @@ -62,7 +62,7 @@ class Preview extends Adapter position: fixed; right: 16px; bottom: 16px; - z-index: 1; + z-index: calc(infinity); border-radius: var(--border-radius-S, 8px); border: var(--border-width-S, 1px) solid var(--color-border-neutral, #EDEDF0); background: var(--color-bgColor-neutral-primary, #FFF); diff --git a/src/Appwrite/Utopia/Request/Filters/V16.php b/src/Appwrite/Utopia/Request/Filters/V16.php index 51b05359b3..55db1f4756 100644 --- a/src/Appwrite/Utopia/Request/Filters/V16.php +++ b/src/Appwrite/Utopia/Request/Filters/V16.php @@ -11,8 +11,6 @@ class V16 extends Filter { switch ($model) { case 'functions.create': - $content['commands'] = $this->getCommands($content['runtime'] ?? ''); - break; case 'functions.update': $content['commands'] = $this->getCommands($content['runtime'] ?? ''); break; diff --git a/src/Appwrite/Utopia/Request/Filters/V17.php b/src/Appwrite/Utopia/Request/Filters/V17.php index 83ec62a168..2cdf3973b2 100644 --- a/src/Appwrite/Utopia/Request/Filters/V17.php +++ b/src/Appwrite/Utopia/Request/Filters/V17.php @@ -2,6 +2,7 @@ namespace Appwrite\Utopia\Request\Filters; +use Appwrite\Extend\Exception; use Appwrite\Utopia\Request\Filter; use Utopia\Database\Query; @@ -67,9 +68,9 @@ class V17 extends Filter foreach ($content['queries'] as $query) { try { $query = $this->parseQuery($query); - $parsed[] = json_encode(array_filter($query->toArray())); + $parsed[] = \json_encode(\array_filter($query->toArray())); } catch (\Throwable $th) { - throw new \Exception("Invalid query: {$query}", previous: $th); + throw new Exception(Exception::GENERAL_QUERY_INVALID, $th->getMessage()); } } @@ -83,6 +84,7 @@ class V17 extends Filter { // Init empty vars we fill later $method = ''; + $attribute = null; $params = []; // Separate method from filter @@ -92,7 +94,7 @@ class V17 extends Filter throw new \Exception('Invalid query'); } - $method = mb_substr($filter, 0, $paramsStart); + $method = \mb_substr($filter, 0, $paramsStart); // Separate params from filter $paramsEnd = \strlen($filter) - 1; // -1 to ignore ) @@ -103,14 +105,13 @@ class V17 extends Filter throw new \Exception('Invalid query method'); } - $currentParam = ""; // We build param here before pushing when it's ended + $currentParam = ''; // We build param here before pushing when it's ended $currentArrayParam = []; // We build array param here before pushing when it's ended $stack = []; // State for stack of parentheses $stackCount = 0; // Length of stack array. Kept as variable to improve performance $stringStackState = null; // State for string support - // Loop thorough all characters for ($i = $parametersStart; $i < $paramsEnd; $i++) { $char = $filter[$i]; @@ -135,20 +136,25 @@ class V17 extends Filter ($filter[$i - 1] !== static::CHAR_BACKSLASH || $filter[$i - 2] === static::CHAR_BACKSLASH) // Must not be escaped; ) { if ($isStringStack) { - // Dont mix-up string symbols. Only allow the same as on start + // Don't mix up string symbols. Only allow the same as on start if ($char === $stringStackState) { // End of string $stringStackState = null; } - - // Either way, add symbol to builder - static::appendSymbol($isStringStack, $char, $i, $filter, $currentParam); } else { // Start of string $stringStackState = $char; - static::appendSymbol($isStringStack, $char, $i, $filter, $currentParam); } + // Either way, add symbol to builder + static::appendSymbol( + $isStringStack, + $char, + $i, + $filter, + $currentParam, + ); + continue; } @@ -174,12 +180,12 @@ class V17 extends Filter continue; } elseif ($char === static::CHAR_COMMA) { // Params separation support - // If in array stack, dont merge yet, just mark it in array param builder + // If in array stack, don't merge yet, just mark it in array param builder if ($isArrayStack) { $currentArrayParam[] = $currentParam; $currentParam = ""; } else { - // Append from parap builder. Either value, or array + // Append from param builder. Either value, or array if (empty($currentArrayParam)) { if (strlen($currentParam)) { $params[] = $currentParam; @@ -193,23 +199,28 @@ class V17 extends Filter } // Value, not relevant to syntax - static::appendSymbol($isStringStack, $char, $i, $filter, $currentParam); + static::appendSymbol( + $isStringStack, + $char, + $i, + $filter, + $currentParam, + ); } - if (strlen($currentParam)) { + if (\strlen($currentParam)) { $params[] = $currentParam; - $currentParam = ""; + $currentParam = ''; } $parsedParams = []; foreach ($params as $param) { - // If array, parse each child separatelly + // If array, parse each child separately if (\is_array($param)) { foreach ($param as $element) { $arr[] = self::parseValue($element); } - $parsedParams[] = $arr ?? []; } else { $parsedParams[] = self::parseValue($param); @@ -295,8 +306,13 @@ class V17 extends Filter * @param string $currentParam * @return void */ - private function appendSymbol(bool $isStringStack, string $char, int $index, string $filter, string &$currentParam): void - { + private function appendSymbol( + bool $isStringStack, + string $char, + int $index, + string $filter, + string &$currentParam + ): void { // Ignore spaces and commas outside of string $canBeIgnored = false; diff --git a/src/Appwrite/Utopia/Request/Filters/V20.php b/src/Appwrite/Utopia/Request/Filters/V20.php index c8622f8b7a..3783a61947 100644 --- a/src/Appwrite/Utopia/Request/Filters/V20.php +++ b/src/Appwrite/Utopia/Request/Filters/V20.php @@ -2,8 +2,10 @@ namespace Appwrite\Utopia\Request\Filters; +use Appwrite\Extend\Exception; use Appwrite\Utopia\Request\Filter; use Utopia\Database\Database; +use Utopia\Database\Exception\NotFound; use Utopia\Database\Exception\Query as QueryException; use Utopia\Database\Query; use Utopia\Database\Validator\Authorization; @@ -54,8 +56,8 @@ class V20 extends Filter try { $parsed = Query::parseQueries($content['queries']); - } catch (QueryException) { - return $content; + } catch (QueryException $e) { + throw new Exception(Exception::GENERAL_QUERY_INVALID, $e->getMessage()); } $selections = Query::groupByType($parsed)['selections'] ?? []; @@ -136,17 +138,28 @@ class V20 extends Filter return []; } - $database = Authorization::skip(fn () => $dbForProject->getDocument('databases', $databaseId)); - if ($database->isEmpty()) { - return []; + try { + $database = Authorization::skip(fn () => $dbForProject->getDocument( + 'databases', + $databaseId + )); + if ($database->isEmpty()) { + return []; + } + } catch (NotFound) { + throw new Exception(Exception::DATABASE_NOT_FOUND); } - $collection = Authorization::skip(fn () => $dbForProject->getDocument( - 'database_' . $database->getSequence(), - $collectionId - )); - if ($collection->isEmpty()) { - return []; + try { + $collection = Authorization::skip(fn () => $dbForProject->getDocument( + 'database_' . $database->getSequence(), + $collectionId + )); + if ($collection->isEmpty()) { + return []; + } + } catch (NotFound) { + throw new Exception(Exception::COLLECTION_NOT_FOUND); } $attributes = $collection->getAttribute('attributes', []); diff --git a/src/Appwrite/Utopia/Response/Model.php b/src/Appwrite/Utopia/Response/Model.php index 04468521b6..59c786ee1f 100644 --- a/src/Appwrite/Utopia/Response/Model.php +++ b/src/Appwrite/Utopia/Response/Model.php @@ -16,6 +16,7 @@ abstract class Model public const TYPE_RELATIONSHIP = 'relationship'; public const TYPE_PAYLOAD = 'payload'; public const TYPE_ARRAY = 'array'; + public const TYPE_ENUM = 'enum'; /** * @var bool diff --git a/src/Appwrite/Utopia/Response/Model/Attribute.php b/src/Appwrite/Utopia/Response/Model/Attribute.php index 8c43f8d21c..35de6bacc5 100644 --- a/src/Appwrite/Utopia/Response/Model/Attribute.php +++ b/src/Appwrite/Utopia/Response/Model/Attribute.php @@ -23,10 +23,11 @@ class Attribute extends Model 'example' => 'string', ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`', 'default' => '', 'example' => 'available', + 'enum' => ['available', 'processing', 'deleting', 'stuck', 'failed'], ]) ->addRule('error', [ 'type' => self::TYPE_STRING, diff --git a/src/Appwrite/Utopia/Response/Model/Column.php b/src/Appwrite/Utopia/Response/Model/Column.php index 5562de39f2..cae8d1fadb 100644 --- a/src/Appwrite/Utopia/Response/Model/Column.php +++ b/src/Appwrite/Utopia/Response/Model/Column.php @@ -23,10 +23,11 @@ class Column extends Model 'example' => 'string', ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`', 'default' => '', 'example' => 'available', + 'enum' => ['available', 'processing', 'deleting', 'stuck', 'failed'], ]) ->addRule('error', [ 'type' => self::TYPE_STRING, diff --git a/src/Appwrite/Utopia/Response/Model/Database.php b/src/Appwrite/Utopia/Response/Model/Database.php index 44a0d52af8..59f32b3162 100644 --- a/src/Appwrite/Utopia/Response/Model/Database.php +++ b/src/Appwrite/Utopia/Response/Model/Database.php @@ -41,10 +41,11 @@ class Database extends Model 'example' => false, ]) ->addRule('type', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'Database type.', 'default' => 'legacy', 'example' => 'legacy', + 'enum' => ['legacy', 'tablesdb'], ]) ; } diff --git a/src/Appwrite/Utopia/Response/Model/Deployment.php b/src/Appwrite/Utopia/Response/Model/Deployment.php index 55c1589af0..f0815630b3 100644 --- a/src/Appwrite/Utopia/Response/Model/Deployment.php +++ b/src/Appwrite/Utopia/Response/Model/Deployment.php @@ -95,10 +95,11 @@ class Deployment extends Model 'example' => '5e5ea5c16897e', ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'The deployment status. Possible values are "waiting", "processing", "building", "ready", and "failed".', 'default' => '', 'example' => 'ready', + 'enum' => ['waiting', 'processing', 'building', 'ready', 'failed'], ]) ->addRule('buildLogs', [ 'type' => self::TYPE_STRING, @@ -130,12 +131,6 @@ class Deployment extends Model 'default' => '', 'example' => 'https://github.com/vermakhushboo/g4-node-function', ]) - ->addRule('providerBranch', [ - 'type' => self::TYPE_STRING, - 'description' => 'The branch name of the vcs provider repository', - 'default' => '', - 'example' => 'main', - ]) ->addRule('providerCommitHash', [ 'type' => self::TYPE_STRING, 'description' => 'The commit hash of the vcs commit', diff --git a/src/Appwrite/Utopia/Response/Model/Execution.php b/src/Appwrite/Utopia/Response/Model/Execution.php index 39d2203bf9..f8ee32aa6e 100644 --- a/src/Appwrite/Utopia/Response/Model/Execution.php +++ b/src/Appwrite/Utopia/Response/Model/Execution.php @@ -52,16 +52,18 @@ class Execution extends Model 'example' => '5e5ea5c16897e', ]) ->addRule('trigger', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.', 'default' => '', 'example' => 'http', + 'enum' => ['http', 'schedule', 'event'], ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.', 'default' => '', 'example' => 'processing', + 'enum' => ['waiting', 'processing', 'completed', 'failed'], ]) ->addRule('requestMethod', [ 'type' => self::TYPE_STRING, @@ -77,7 +79,7 @@ class Execution extends Model ]) ->addRule('requestHeaders', [ 'type' => Response::MODEL_HEADERS, - 'description' => 'HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.', + 'description' => 'HTTP request headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous.', 'default' => [], 'example' => [['Content-Type' => 'application/json']], 'array' => true, diff --git a/src/Appwrite/Utopia/Response/Model/HealthAntivirus.php b/src/Appwrite/Utopia/Response/Model/HealthAntivirus.php index 7a74195371..29bd420ce5 100644 --- a/src/Appwrite/Utopia/Response/Model/HealthAntivirus.php +++ b/src/Appwrite/Utopia/Response/Model/HealthAntivirus.php @@ -17,10 +17,11 @@ class HealthAntivirus extends Model 'example' => '1.0.0', ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, - 'description' => 'Antivirus status. Possible values can are: `disabled`, `offline`, `online`', + 'type' => self::TYPE_ENUM, + 'description' => 'Antivirus status. Possible values are: `disabled`, `offline`, `online`', 'default' => '', 'example' => 'online', + 'enum' => ['disabled', 'offline', 'online'], ]) ; } diff --git a/src/Appwrite/Utopia/Response/Model/HealthStatus.php b/src/Appwrite/Utopia/Response/Model/HealthStatus.php index ba340107ac..24fb8766ce 100644 --- a/src/Appwrite/Utopia/Response/Model/HealthStatus.php +++ b/src/Appwrite/Utopia/Response/Model/HealthStatus.php @@ -23,10 +23,11 @@ class HealthStatus extends Model 'example' => 128, ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, - 'description' => 'Service status. Possible values can are: `pass`, `fail`', + 'type' => self::TYPE_ENUM, + 'description' => 'Service status. Possible values are: `pass`, `fail`', 'default' => '', 'example' => 'pass', + 'enum' => ['pass', 'fail'], ]) ; } diff --git a/src/Appwrite/Utopia/Response/Model/Index.php b/src/Appwrite/Utopia/Response/Model/Index.php index 62661738c2..5a4d606408 100644 --- a/src/Appwrite/Utopia/Response/Model/Index.php +++ b/src/Appwrite/Utopia/Response/Model/Index.php @@ -41,10 +41,11 @@ class Index extends Model 'example' => 'primary', ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`', 'default' => '', 'example' => 'available', + 'enum' => ['available', 'processing', 'deleting', 'stuck', 'failed'], ]) ->addRule('error', [ 'type' => self::TYPE_STRING, diff --git a/src/Appwrite/Utopia/Response/Model/Message.php b/src/Appwrite/Utopia/Response/Model/Message.php index e52b6836c5..4c1e08b9cb 100644 --- a/src/Appwrite/Utopia/Response/Model/Message.php +++ b/src/Appwrite/Utopia/Response/Model/Message.php @@ -34,6 +34,7 @@ class Message extends Model 'description' => 'Message provider type.', 'default' => '', 'example' => MESSAGE_TYPE_EMAIL, + 'enum' => [MESSAGE_TYPE_EMAIL, MESSAGE_TYPE_SMS, MESSAGE_TYPE_PUSH], ]) ->addRule('topics', [ 'type' => self::TYPE_STRING, @@ -50,7 +51,7 @@ class Message extends Model 'example' => ['5e5ea5c16897e'], ]) ->addRule('targets', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'Target IDs set as recipients.', 'default' => '', 'array' => true, @@ -94,10 +95,11 @@ class Message extends Model ], ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'Status of delivery.', 'default' => 'draft', 'example' => 'Message status can be one of the following: draft, processing, scheduled, sent, or failed.', + 'enum' => ['draft', 'processing', 'scheduled', 'sent', 'failed'], ]); } diff --git a/src/Appwrite/Utopia/Response/Model/Platform.php b/src/Appwrite/Utopia/Response/Model/Platform.php index 4b8ffb1486..151e43780d 100644 --- a/src/Appwrite/Utopia/Response/Model/Platform.php +++ b/src/Appwrite/Utopia/Response/Model/Platform.php @@ -40,10 +40,11 @@ class Platform extends Model 'example' => 'My Web App', ]) ->addRule('type', [ - 'type' => self::TYPE_STRING, - 'description' => 'Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, ios, android, and unity.', + 'type' => self::TYPE_ENUM, + 'description' => 'Platform type. Possible values are: web, flutter-web, flutter-ios, flutter-android, flutter-linux, flutter-macos, flutter-windows, apple-ios, apple-macos, apple-watchos, apple-tvos, android, unity, react-native-ios, react-native-android.', 'default' => '', 'example' => 'web', + 'enum' => ['web', 'flutter-web', 'flutter-ios', 'flutter-android', 'flutter-linux', 'flutter-macos', 'flutter-windows', 'apple-ios', 'apple-macos', 'apple-watchos', 'apple-tvos', 'android', 'unity', 'react-native-ios', 'react-native-android'], ]) ->addRule('key', [ 'type' => self::TYPE_STRING, @@ -60,7 +61,7 @@ class Platform extends Model 'type' => self::TYPE_STRING, 'description' => 'Web app hostname. Empty string for other platforms.', 'default' => '', - 'example' => true, + 'example' => 'app.example.com', ]) ->addRule('httpUser', [ 'type' => self::TYPE_STRING, diff --git a/src/Appwrite/Utopia/Response/Model/Rule.php b/src/Appwrite/Utopia/Response/Model/Rule.php index 12903b270e..d4b8ffd9e7 100644 --- a/src/Appwrite/Utopia/Response/Model/Rule.php +++ b/src/Appwrite/Utopia/Response/Model/Rule.php @@ -55,7 +55,7 @@ class Rule extends Model ->addRule('redirectStatusCode', [ 'type' => self::TYPE_INTEGER, 'description' => 'Status code to apply during redirect. Used if type is "redirect"', - 'default' => '', + 'default' => 301, 'example' => 301, ]) ->addRule('deploymentId', [ @@ -65,10 +65,11 @@ class Rule extends Model 'example' => 'n3u9feiwmf', ]) ->addRule('deploymentResourceType', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'Type of deployment. Possible values are "function", "site". Used if rule\'s type is "deployment".', 'default' => '', 'example' => 'function', + 'enum' => ['function', 'site'], ]) ->addRule('deploymentResourceId', [ 'type' => self::TYPE_STRING, @@ -80,13 +81,14 @@ class Rule extends Model 'type' => self::TYPE_STRING, 'description' => 'Name of Git branch that updates rule. Used if type is "deployment"', 'default' => '', - 'example' => 'function', + 'example' => 'main', ]) ->addRule('status', [ - 'type' => self::TYPE_STRING, + 'type' => self::TYPE_ENUM, 'description' => 'Domain verification status. Possible values are "created", "verifying", "verified" and "unverified"', - 'default' => false, + 'default' => 'created', 'example' => 'verified', + 'enum' => ['created', 'verifying', 'verified', 'unverified'], ]) ->addRule('logs', [ 'type' => self::TYPE_STRING, diff --git a/tests/e2e/Services/Account/AccountCustomClientTest.php b/tests/e2e/Services/Account/AccountCustomClientTest.php index bd3fec8439..b1b4f47b34 100644 --- a/tests/e2e/Services/Account/AccountCustomClientTest.php +++ b/tests/e2e/Services/Account/AccountCustomClientTest.php @@ -924,7 +924,7 @@ class AccountCustomClientTest extends Scope $this->assertEquals($email, $lastEmail['to'][0]['address']); $this->assertEquals($name, $lastEmail['to'][0]['name']); - $this->assertEquals('Account Verification', $lastEmail['subject']); + $this->assertEquals('Account Verification for ' . $this->getProject()['name'], $lastEmail['subject']); $this->assertStringContainsStringIgnoringCase('Verify your email to activate your ' . $this->getProject()['name'] . ' account.', $lastEmail['text']); $tokens = $this->extractQueryParamsFromEmailLink($lastEmail['html']); @@ -1228,7 +1228,7 @@ class AccountCustomClientTest extends Scope $this->assertEquals($email, $lastEmail['to'][0]['address']); $this->assertEquals($name, $lastEmail['to'][0]['name']); - $this->assertEquals('Password Reset', $lastEmail['subject']); + $this->assertEquals('Password Reset for ' . $this->getProject()['name'], $lastEmail['subject']); $this->assertStringContainsStringIgnoringCase('Reset your ' . $this->getProject()['name'] . ' password using the link.', $lastEmail['text']); @@ -1539,6 +1539,77 @@ class AccountCustomClientTest extends Scope return []; } + public function testCreateOidcOAuth2Token(): array + { + $provider = 'oidc'; + $appId = '1'; + + // Valid well-known configuration + $secret = '{ + "wellKnownEndpoint": "https://accounts.google.com/.well-known/openid-configuration", + "authorizationEndpoint": "https://accounts.google.com/o/oauth2/v2/auth", + "tokenEndpoint": "https://oauth2.googleapis.com/token", + "userinfoEndpoint": "https://openidconnect.googleapis.com/v1/userinfo" + }'; + + $response = $this->client->call(Client::METHOD_PATCH, '/projects/' . $this->getProject()['$id'] . '/oauth2', array_merge([ + 'origin' => 'http://localhost', + 'content-type' => 'application/json', + 'x-appwrite-project' => 'console', + 'cookie' => 'a_session_console=' . $this->getRoot()['session'], + ]), [ + 'provider' => $provider, + 'appId' => $appId, + 'secret' => $secret, + 'enabled' => true, + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + + $response = $this->client->call(Client::METHOD_GET, '/account/tokens/oauth2/' . $provider, array_merge([ + 'origin' => 'http://localhost', + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ]), [ + 'provider' => $provider, + 'success' => 'http://localhost/v1/mock/tests/general/oauth2/success', + 'failure' => 'http://localhost/v1/mock/tests/general/oauth2/failure', + ], true, false); + + $this->assertEquals(301, $response['headers']['status-code']); + + // Invalid well-known configuration + $secret = '{}'; + + $response = $this->client->call(Client::METHOD_PATCH, '/projects/' . $this->getProject()['$id'] . '/oauth2', array_merge([ + 'origin' => 'http://localhost', + 'content-type' => 'application/json', + 'x-appwrite-project' => 'console', + 'cookie' => 'a_session_console=' . $this->getRoot()['session'], + ]), [ + 'provider' => $provider, + 'appId' => $appId, + 'secret' => $secret, + 'enabled' => true, + ]); + + $this->assertEquals(200, $response['headers']['status-code']); + + $response = $this->client->call(Client::METHOD_GET, '/account/tokens/oauth2/' . $provider, array_merge([ + 'origin' => 'http://localhost', + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ]), [ + 'provider' => $provider, + 'success' => 'http://localhost/v1/mock/tests/general/oauth2/success', + 'failure' => 'http://localhost/v1/mock/tests/general/oauth2/failure', + ]); + + $this->assertEquals(500, $response['headers']['status-code']); + + return []; + } + public function testBlockedAccount(): array { $email = uniqid() . 'user@localhost.test'; diff --git a/tests/e2e/Services/Databases/Legacy/DatabasesBase.php b/tests/e2e/Services/Databases/Legacy/DatabasesBase.php index e1d5b9cb60..bfc56567ef 100644 --- a/tests/e2e/Services/Databases/Legacy/DatabasesBase.php +++ b/tests/e2e/Services/Databases/Legacy/DatabasesBase.php @@ -4711,12 +4711,16 @@ trait DatabasesBase 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ 'queries' => [ + Query::select(['library.*'])->toString(), Query::equal('library.libraryName', ['Library 1'])->toString(), ], ]); - $this->assertEquals(400, $documents['headers']['status-code']); - $this->assertEquals('Invalid query: Cannot query nested attribute on: library', $documents['body']['message']); + $this->assertEquals(200, $documents['headers']['status-code']); + $this->assertEquals(1, $documents['body']['total']); + $this->assertCount(1, $documents['body']['documents']); + $this->assertEquals('Library 1', $documents['body']['documents'][0]['library']['libraryName']); + $this->assertEquals($person1['body']['$id'], $documents['body']['documents'][0]['$id']); $response = $this->client->call(Client::METHOD_DELETE, '/databases/' . $databaseId . '/collections/' . $person['body']['$id'] . '/attributes/library', array_merge([ 'content-type' => 'application/json', @@ -5270,8 +5274,8 @@ trait DatabasesBase $this->assertEquals(2, count($response['body']['documents'])); $this->assertEquals(null, $response['body']['documents'][0]['fullName']); $this->assertArrayNotHasKey("libraries", $response['body']['documents'][0]); - $this->assertArrayNotHasKey('$databaseId', $response['body']['documents'][0]); - $this->assertArrayNotHasKey('$collectionId', $response['body']['documents'][0]); + $this->assertArrayHasKey('$databaseId', $response['body']['documents'][0]); + $this->assertArrayHasKey('$collectionId', $response['body']['documents'][0]); } /** @@ -5291,8 +5295,8 @@ trait DatabasesBase $this->assertEquals(200, $response['headers']['status-code']); $this->assertArrayNotHasKey('libraries', $response['body']['documents'][0]); - $this->assertArrayNotHasKey('$databaseId', $response['body']['documents'][0]); - $this->assertArrayNotHasKey('$collectionId', $response['body']['documents'][0]); + $this->assertArrayHasKey('$databaseId', $response['body']['documents'][0]); + $this->assertArrayHasKey('$collectionId', $response['body']['documents'][0]); $response = $this->client->call(Client::METHOD_GET, '/databases/' . $data['databaseId'] . '/collections/' . $data['personCollection'] . '/documents', array_merge([ 'content-type' => 'application/json', @@ -5305,8 +5309,8 @@ trait DatabasesBase $document = $response['body']['documents'][0]; $this->assertEquals(200, $response['headers']['status-code']); $this->assertArrayHasKey('libraries', $document); - $this->assertArrayNotHasKey('$databaseId', $document); - $this->assertArrayNotHasKey('$collectionId', $document); + $this->assertArrayHasKey('$databaseId', $document); + $this->assertArrayHasKey('$collectionId', $document); $response = $this->client->call(Client::METHOD_GET, '/databases/' . $data['databaseId'] . '/collections/' . $data['personCollection'] . '/documents/' . $document['$id'], array_merge([ 'content-type' => 'application/json', @@ -5981,12 +5985,12 @@ trait DatabasesBase 'documentId' => ID::unique(), 'data' => [ 'name' => 'Upserted Location', - 'location' => [34.0522, -118.2437] // Los Angeles coordinates + 'location' => [34.0522, -80] // Los Angeles coordinates ] ]); $this->assertEquals(200, $response['headers']['status-code']); - $this->assertEquals([34.0522, -118.2437], $response['body']['location']); + $this->assertEquals([34.0522, -80], $response['body']['location']); // Test 5: Create document without permissions (should fail) $response = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/documents', [ @@ -6116,12 +6120,12 @@ trait DatabasesBase 'documentId' => ID::unique(), 'data' => [ 'distance' => 200, - 'route' => [[34.0522, -118.2437], [34.0736, -118.2400]] // LA route + 'route' => [[34.0522, -80], [34.0736, -90]] // LA route ] ]); $this->assertEquals(200, $response['headers']['status-code']); - $this->assertEquals([[34.0522, -118.2437], [34.0736, -118.2400]], $response['body']['route']); + $this->assertEquals([[34.0522, -80], [34.0736, -90]], $response['body']['route']); // Test 5: Delete document $response = $this->client->call(Client::METHOD_DELETE, '/databases/' . $databaseId . '/collections/' . $collectionId . '/documents/' . $documentId, array_merge([ @@ -6253,12 +6257,12 @@ trait DatabasesBase 'documentId' => ID::unique(), 'data' => [ 'active' => false, - 'area' => [[[34.0522, -118.2437], [34.0736, -118.2437], [34.0736, -118.2400], [34.0522, -118.2400], [34.0522, -118.2437]]] // LA area + 'area' => [[[34.0522, -80], [34.0736, -80], [34.0736, -90], [34.0522, -90], [34.0522, -80]]] // LA area ] ]); $this->assertEquals(200, $response['headers']['status-code']); - $this->assertEquals([[[34.0522, -118.2437], [34.0736, -118.2437], [34.0736, -118.2400], [34.0522, -118.2400], [34.0522, -118.2437]]], $response['body']['area']); + $this->assertEquals([[[34.0522, -80], [34.0736, -80], [34.0736, -90], [34.0522, -90], [34.0522, -80]]], $response['body']['area']); // Test 5: Create document without required polygon attribute (should fail) $response = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $collectionId . '/documents', array_merge([ @@ -6693,7 +6697,7 @@ trait DatabasesBase '$id' => 'doc1', 'name' => 'Test Document 1', 'pointAttr' => [6.0, 6.0], - 'lineAttr' => [[1.0, 1.0], [2.0, 2.0]], + 'lineAttr' => [[1.0, 1.0], [1.1,1.1] , [2.0, 2.0]], 'polyAttr' => [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]] ], [ @@ -6775,6 +6779,7 @@ trait DatabasesBase $this->assertCount(1, $response['body']['documents']); $this->assertEquals('doc1', $response['body']['documents'][0]['$id']); + // Test 4.2: notContains on polygon (point outside all polygons) $response = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collectionId . '/documents', array_merge([ 'content-type' => 'application/json', @@ -6790,7 +6795,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::intersects('polyAttr', [[5.0, 5.0]])->toString()] + 'queries' => [Query::intersects('polyAttr', [5.0, 5.0])->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(1, $response['body']['total']); @@ -6801,7 +6806,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::notIntersects('polyAttr', [[60.0, 60.0]])->toString()] + 'queries' => [Query::notIntersects('polyAttr', [60.0, 60.0])->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(3, $response['body']['total']); @@ -6812,7 +6817,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::overlaps('polyAttr', [$overlapPoly])->toString()] + 'queries' => [Query::overlaps('polyAttr', $overlapPoly)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(1, $response['body']['total']); @@ -6824,7 +6829,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::notOverlaps('polyAttr', [$noOverlapPoly])->toString()] + 'queries' => [Query::notOverlaps('polyAttr', $noOverlapPoly)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(3, $response['body']['total']); @@ -6876,7 +6881,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::crosses('lineAttr', [$crossLine])->toString()] + 'queries' => [Query::crosses('lineAttr', $crossLine)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(1, $response['body']['total']); @@ -6888,7 +6893,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::notCrosses('lineAttr', [$nonCrossLine])->toString()] + 'queries' => [Query::notCrosses('lineAttr', $nonCrossLine)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(3, $response['body']['total']); @@ -6899,7 +6904,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::touches('polyAttr', [$touchPoly])->toString()] + 'queries' => [Query::touches('polyAttr', $touchPoly)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(2, $response['body']['total']); @@ -6911,7 +6916,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::notTouches('polyAttr', [$farPoly])->toString()] + 'queries' => [Query::notTouches('polyAttr', $farPoly)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(3, $response['body']['total']); @@ -7797,4 +7802,269 @@ trait DatabasesBase 'x-appwrite-key' => $this->getProject()['apiKey'] ])); } + + public function testSpatialColCreateOnExistingData(): void + { + $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' => 'Spatial Distance Meters Database' + ]); + + $databaseId = $database['body']['$id']; + + $colId = ID::unique(); + $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' => $colId, + 'name' => 'spatial-test', + 'documentSecurity' => true, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $collection['headers']['status-code']); + + $description = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/string', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'description', + 'size' => 512, + 'required' => false, + 'default' => '', + ]); + + $this->assertEquals(202, $description['headers']['status-code']); + sleep(2); + + $document = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'documentId' => ID::unique(), + 'data' => [ + 'description' => 'description' + ], + 'permissions' => [ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ] + ]); + $this->assertEquals(201, $document['headers']['status-code']); + + $point = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/point', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'loc', + 'required' => true, + ]); + + $this->assertEquals(400, $point['headers']['status-code']); + + $point = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/point', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'loc', + 'required' => false, + 'default' => null + ]); + + $this->assertEquals(202, $point['headers']['status-code']); + + $line = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/line', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'route', + 'required' => true, + ]); + + $this->assertEquals(400, $line['headers']['status-code']); + + $line = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/line', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'route', + 'required' => false, + 'default' => null + ]); + + $this->assertEquals(202, $line['headers']['status-code']); + + $poly = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/polygon', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'area', + 'required' => true, + ]); + + $this->assertEquals(400, $poly['headers']['status-code']); + + $poly = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/polygon', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'area', + 'required' => false, + 'default' => null + ]); + + $this->assertEquals(202, $poly['headers']['status-code']); + } + + public function testSpatialColCreateOnExistingDataWithDefaults(): void + { + $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' => 'Spatial With Defaults Database' + ]); + + $databaseId = $database['body']['$id']; + + $colId = ID::unique(); + $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' => $colId, + 'name' => 'spatial-test-defaults', + 'documentSecurity' => true, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $collection['headers']['status-code']); + + $description = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/string', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'description', + 'size' => 512, + 'required' => false, + 'default' => '', + ]); + + $this->assertEquals(202, $description['headers']['status-code']); + sleep(2); + + $document = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'documentId' => ID::unique(), + 'data' => [ + 'description' => 'description' + ], + 'permissions' => [ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ] + ]); + $this->assertEquals(201, $document['headers']['status-code']); + + // Test point with default value + $point = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/point', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'loc', + 'required' => false, + 'default' => [0.0, 0.0] + ]); + + $this->assertEquals(202, $point['headers']['status-code']); + + // Test line with default value + $line = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/line', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'route', + 'required' => false, + 'default' => [[0.0, 0.0], [1.0, 1.0]] + ]); + + $this->assertEquals(202, $line['headers']['status-code']); + + // Test polygon with default value + $poly = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/attributes/polygon', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'area', + 'required' => false, + 'default' => [[[0.0, 0.0], [1.0, 0.0], [1.0, 1.0], [0.0, 1.0], [0.0, 0.0]]] + ]); + + $this->assertEquals(202, $poly['headers']['status-code']); + + // Wait for attributes to be available + sleep(2); + + // Create a new document without spatial data to test default values + $newDocument = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $colId . '/documents', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'documentId' => ID::unique(), + 'data' => [ + 'description' => 'test default values' + ], + 'permissions' => [ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ] + ]); + $this->assertEquals(201, $newDocument['headers']['status-code']); + + $newDocumentId = $newDocument['body']['$id']; + + // Fetch the document to verify default values are applied + $fetchedDocument = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $colId . '/documents/' . $newDocumentId, array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders())); + + $this->assertEquals(200, $fetchedDocument['headers']['status-code']); + + // Verify default values are applied + $this->assertEquals([0.0, 0.0], $fetchedDocument['body']['loc']); + $this->assertEquals([[0.0, 0.0], [1.0, 1.0]], $fetchedDocument['body']['route']); + $this->assertEquals([[[0.0, 0.0], [1.0, 0.0], [1.0, 1.0], [0.0, 1.0], [0.0, 0.0]]], $fetchedDocument['body']['area']); + } } diff --git a/tests/e2e/Services/Databases/Legacy/DatabasesCustomServerTest.php b/tests/e2e/Services/Databases/Legacy/DatabasesCustomServerTest.php index 2c603233a3..c1ce75c38d 100644 --- a/tests/e2e/Services/Databases/Legacy/DatabasesCustomServerTest.php +++ b/tests/e2e/Services/Databases/Legacy/DatabasesCustomServerTest.php @@ -6682,7 +6682,7 @@ class DatabasesCustomServerTest extends Scope 'path' => [ [0, 0], [50, 50], - [100, 100] + [80, 80] ] // New LINE STRING ], ]); @@ -6696,7 +6696,7 @@ class DatabasesCustomServerTest extends Scope $this->assertEquals([ [0, 0], [50, 50], - [100, 100] + [80, 80] ], $document['path']); } diff --git a/tests/e2e/Services/Databases/TablesDB/DatabasesBase.php b/tests/e2e/Services/Databases/TablesDB/DatabasesBase.php index 1b9c0dae91..d3aa50a99a 100644 --- a/tests/e2e/Services/Databases/TablesDB/DatabasesBase.php +++ b/tests/e2e/Services/Databases/TablesDB/DatabasesBase.php @@ -3062,7 +3062,7 @@ trait DatabasesBase public function testInvalidRowStructure(): void { - $database = $this->client->call(Client::METHOD_POST, '/databases', array_merge([ + $database = $this->client->call(Client::METHOD_POST, '/tablesdb', array_merge([ 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], 'x-appwrite-key' => $this->getProject()['apiKey'] @@ -3735,7 +3735,7 @@ trait DatabasesBase public function testEnforceTableAndRowPermissions(): void { - $database = $this->client->call(Client::METHOD_POST, '/databases', array_merge([ + $database = $this->client->call(Client::METHOD_POST, '/tablesdb', array_merge([ 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], 'x-appwrite-key' => $this->getProject()['apiKey'] @@ -3928,7 +3928,7 @@ trait DatabasesBase public function testEnforceTablePermissions(): void { - $database = $this->client->call(Client::METHOD_POST, '/databases', array_merge([ + $database = $this->client->call(Client::METHOD_POST, '/tablesdb', array_merge([ 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], 'x-appwrite-key' => $this->getProject()['apiKey'] @@ -4284,7 +4284,7 @@ trait DatabasesBase public function testUpdatePermissionsWithEmptyPayload(): array { // Create Database - $database = $this->client->call(Client::METHOD_POST, '/databases', array_merge([ + $database = $this->client->call(Client::METHOD_POST, '/tablesdb', array_merge([ 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], 'x-appwrite-key' => $this->getProject()['apiKey'] @@ -4638,12 +4638,16 @@ trait DatabasesBase 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ 'queries' => [ + Query::select(['library.*'])->toString(), Query::equal('library.libraryName', ['Library 1'])->toString(), ], ]); - $this->assertEquals(400, $rows['headers']['status-code']); - $this->assertEquals('Invalid query: Cannot query nested attribute on: library', $rows['body']['message']); + $this->assertEquals(200, $rows['headers']['status-code']); + $this->assertEquals(1, $rows['body']['total']); + $this->assertCount(1, $rows['body']['rows']); + $this->assertEquals('Library 1', $rows['body']['rows'][0]['library']['libraryName']); + $this->assertEquals($person1['body']['$id'], $rows['body']['rows'][0]['$id']); $response = $this->client->call(Client::METHOD_DELETE, '/tablesdb/' . $databaseId . '/tables/' . $person['body']['$id'] . '/columns/library', array_merge([ 'content-type' => 'application/json', @@ -5197,8 +5201,8 @@ trait DatabasesBase $this->assertEquals(2, count($response['body']['rows'])); $this->assertEquals(null, $response['body']['rows'][0]['fullName']); $this->assertArrayNotHasKey("libraries", $response['body']['rows'][0]); - $this->assertArrayNotHasKey('$databaseId', $response['body']['rows'][0]); - $this->assertArrayNotHasKey('$tableId', $response['body']['rows'][0]); + $this->assertArrayHasKey('$databaseId', $response['body']['rows'][0]); + $this->assertArrayHasKey('$tableId', $response['body']['rows'][0]); } /** @@ -5218,8 +5222,8 @@ trait DatabasesBase $this->assertEquals(200, $response['headers']['status-code']); $this->assertArrayNotHasKey('libraries', $response['body']['rows'][0]); - $this->assertArrayNotHasKey('$databaseId', $response['body']['rows'][0]); - $this->assertArrayNotHasKey('$tableId', $response['body']['rows'][0]); + $this->assertArrayHasKey('$databaseId', $response['body']['rows'][0]); + $this->assertArrayHasKey('$tableId', $response['body']['rows'][0]); $response = $this->client->call(Client::METHOD_GET, '/tablesdb/' . $data['databaseId'] . '/tables/' . $data['personCollection'] . '/rows', array_merge([ 'content-type' => 'application/json', @@ -5232,8 +5236,8 @@ trait DatabasesBase $row = $response['body']['rows'][0]; $this->assertEquals(200, $response['headers']['status-code']); $this->assertArrayHasKey('libraries', $row); - $this->assertArrayNotHasKey('$databaseId', $row); - $this->assertArrayNotHasKey('$tableId', $row); + $this->assertArrayHasKey('$databaseId', $row); + $this->assertArrayHasKey('$tableId', $row); $response = $this->client->call(Client::METHOD_GET, '/tablesdb/' . $data['databaseId'] . '/tables/' . $data['personCollection'] . '/rows/' . $row['$id'], array_merge([ 'content-type' => 'application/json', @@ -7615,12 +7619,12 @@ trait DatabasesBase 'rowId' => ID::unique(), 'data' => [ 'name' => 'Upserted Location', - 'location' => [34.0522, -118.2437] + 'location' => [34.0522, -80] ] ]); $this->assertEquals(200, $response['headers']['status-code']); - $this->assertEquals([34.0522, -118.2437], $response['body']['location']); + $this->assertEquals([34.0522, -80], $response['body']['location']); // Create row without permissions (should fail) $response = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows', [ @@ -7749,12 +7753,12 @@ trait DatabasesBase 'rowId' => ID::unique(), 'data' => [ 'distance' => 200, - 'route' => [[34.0522, -118.2437], [34.0736, -118.2400]] + 'route' => [[34.0522, -80], [34.0736, -80]] ] ]); $this->assertEquals(200, $response['headers']['status-code']); - $this->assertEquals([[34.0522, -118.2437], [34.0736, -118.2400]], $response['body']['route']); + $this->assertEquals([[34.0522, -80], [34.0736, -80]], $response['body']['route']); // Delete row $response = $this->client->call(Client::METHOD_DELETE, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows/' . $rowId, array_merge([ @@ -7883,12 +7887,12 @@ trait DatabasesBase 'rowId' => ID::unique(), 'data' => [ 'active' => false, - 'area' => [[[34.0522, -118.2437], [34.0736, -118.2437], [34.0736, -118.2400], [34.0522, -118.2400], [34.0522, -118.2437]]] + 'area' => [[[34.0522, -80], [34.0736, -80], [34.0736, -80], [34.0522, -80], [34.0522, -80]]] ] ]); $this->assertEquals(200, $response['headers']['status-code']); - $this->assertEquals([[[34.0522, -118.2437], [34.0736, -118.2437], [34.0736, -118.2400], [34.0522, -118.2400], [34.0522, -118.2437]]], $response['body']['area']); + $this->assertEquals([[[34.0522, -80], [34.0736, -80], [34.0736, -80], [34.0522, -80], [34.0522, -80]]], $response['body']['area']); // Create row missing required polygon (should fail) $response = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows', array_merge([ @@ -8158,7 +8162,7 @@ trait DatabasesBase '$id' => 'row1', 'name' => 'Test Row 1', 'pointAttr' => [6.0, 6.0], - 'lineAttr' => [[1.0, 1.0], [2.0, 2.0]], + 'lineAttr' => [[1.0, 1.0], [1.1,1.1] , [2.0, 2.0]], 'polyAttr' => [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]] ], [ @@ -8251,7 +8255,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::intersects('polyAttr', [[5.0, 5.0]])->toString()] + 'queries' => [Query::intersects('polyAttr', [5.0, 5.0])->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(1, $response['body']['total']); @@ -8262,7 +8266,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::notIntersects('polyAttr', [[60.0, 60.0]])->toString()] + 'queries' => [Query::notIntersects('polyAttr', [60.0, 60.0])->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(3, $response['body']['total']); @@ -8273,7 +8277,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::overlaps('polyAttr', [$overlapPoly])->toString()] + 'queries' => [Query::overlaps('polyAttr', $overlapPoly)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(1, $response['body']['total']); @@ -8285,7 +8289,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::notOverlaps('polyAttr', [$noOverlapPoly])->toString()] + 'queries' => [Query::notOverlaps('polyAttr', $noOverlapPoly)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(3, $response['body']['total']); @@ -8337,7 +8341,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::crosses('lineAttr', [$crossLine])->toString()] + 'queries' => [Query::crosses('lineAttr', $crossLine)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(1, $response['body']['total']); @@ -8349,7 +8353,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::notCrosses('lineAttr', [$nonCrossLine])->toString()] + 'queries' => [Query::notCrosses('lineAttr', $nonCrossLine)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(3, $response['body']['total']); @@ -8360,7 +8364,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::touches('polyAttr', [$touchPoly])->toString()] + 'queries' => [Query::touches('polyAttr', $touchPoly)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(2, $response['body']['total']); @@ -8372,7 +8376,7 @@ trait DatabasesBase 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], ], $this->getHeaders()), [ - 'queries' => [Query::notTouches('polyAttr', [$farPoly])->toString()] + 'queries' => [Query::notTouches('polyAttr', $farPoly)->toString()] ]); $this->assertEquals(200, $response['headers']['status-code']); $this->assertEquals(3, $response['body']['total']); @@ -8828,4 +8832,269 @@ trait DatabasesBase $this->client->call(Client::METHOD_DELETE, "/tablesdb/{$databaseId}", $headers); } + public function testSpatialColCreateOnExistingData(): void + { + $database = $this->client->call(Client::METHOD_POST, '/tablesdb', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'databaseId' => ID::unique(), + 'name' => 'Spatial Distance Meters Database' + ]); + + $databaseId = $database['body']['$id']; + + $tableId = ID::unique(); + $table = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'tableId' => $tableId, + 'name' => 'spatial-test', + 'rowSecurity' => true, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $table['headers']['status-code']); + + $description = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/string', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'description', + 'size' => 512, + 'required' => false, + 'default' => '', + ]); + + $this->assertEquals(202, $description['headers']['status-code']); + sleep(2); + + $row = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'rowId' => ID::unique(), + 'data' => [ + 'description' => 'description' + ], + 'permissions' => [ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ] + ]); + $this->assertEquals(201, $row['headers']['status-code']); + + $point = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/point', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'loc', + 'required' => true, + ]); + + $this->assertEquals(400, $point['headers']['status-code']); + + $point = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/point', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'loc', + 'required' => false, + 'default' => null + ]); + + $this->assertEquals(202, $point['headers']['status-code']); + + $line = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/line', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'route', + 'required' => true, + ]); + + $this->assertEquals(400, $line['headers']['status-code']); + + $line = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/line', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'route', + 'required' => false, + 'default' => null + ]); + + $this->assertEquals(202, $line['headers']['status-code']); + + $poly = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/polygon', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'area', + 'required' => true, + ]); + + $this->assertEquals(400, $poly['headers']['status-code']); + + $poly = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/polygon', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'area', + 'required' => false, + 'default' => null + ]); + + $this->assertEquals(202, $poly['headers']['status-code']); + } + + public function testSpatialColCreateOnExistingDataWithDefaults(): void + { + $database = $this->client->call(Client::METHOD_POST, '/tablesdb', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ], [ + 'databaseId' => ID::unique(), + 'name' => 'Spatial With Defaults Database' + ]); + + $databaseId = $database['body']['$id']; + + $tableId = ID::unique(); + $table = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'tableId' => $tableId, + 'name' => 'spatial-test-defaults', + 'rowSecurity' => true, + 'permissions' => [ + Permission::create(Role::any()), + Permission::read(Role::any()), + ], + ]); + + $this->assertEquals(201, $table['headers']['status-code']); + + $description = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/string', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'description', + 'size' => 512, + 'required' => false, + 'default' => '', + ]); + + $this->assertEquals(202, $description['headers']['status-code']); + sleep(2); + + $row = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'rowId' => ID::unique(), + 'data' => [ + 'description' => 'description' + ], + 'permissions' => [ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ] + ]); + $this->assertEquals(201, $row['headers']['status-code']); + + // Test point with default value + $point = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/point', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'loc', + 'required' => false, + 'default' => [0.0, 0.0] + ]); + + $this->assertEquals(202, $point['headers']['status-code']); + + // Test line with default value + $line = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/line', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'route', + 'required' => false, + 'default' => [[0.0, 0.0], [1.0, 1.0]] + ]); + + $this->assertEquals(202, $line['headers']['status-code']); + + // Test polygon with default value + $poly = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/columns/polygon', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'area', + 'required' => false, + 'default' => [[[0.0, 0.0], [1.0, 0.0], [1.0, 1.0], [0.0, 1.0], [0.0, 0.0]]] + ]); + + $this->assertEquals(202, $poly['headers']['status-code']); + + // Wait for columns to be available + sleep(2); + + // Create a new row without spatial data to test default values + $newRow = $this->client->call(Client::METHOD_POST, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'rowId' => ID::unique(), + 'data' => [ + 'description' => 'test default values' + ], + 'permissions' => [ + Permission::read(Role::user($this->getUser()['$id'])), + Permission::update(Role::user($this->getUser()['$id'])), + Permission::delete(Role::user($this->getUser()['$id'])), + ] + ]); + $this->assertEquals(201, $newRow['headers']['status-code']); + + $newRowId = $newRow['body']['$id']; + + // Fetch the row to verify default values are applied + $fetchedRow = $this->client->call(Client::METHOD_GET, '/tablesdb/' . $databaseId . '/tables/' . $tableId . '/rows/' . $newRowId, array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders())); + + $this->assertEquals(200, $fetchedRow['headers']['status-code']); + + // Verify default values are applied + $this->assertEquals([0.0, 0.0], $fetchedRow['body']['loc']); + $this->assertEquals([[0.0, 0.0], [1.0, 1.0]], $fetchedRow['body']['route']); + $this->assertEquals([[[0.0, 0.0], [1.0, 0.0], [1.0, 1.0], [0.0, 1.0], [0.0, 0.0]]], $fetchedRow['body']['area']); + } + } diff --git a/tests/e2e/Services/Databases/TablesDB/DatabasesCustomServerTest.php b/tests/e2e/Services/Databases/TablesDB/DatabasesCustomServerTest.php index 0f68d9ea7b..5e35fa065d 100644 --- a/tests/e2e/Services/Databases/TablesDB/DatabasesCustomServerTest.php +++ b/tests/e2e/Services/Databases/TablesDB/DatabasesCustomServerTest.php @@ -6379,7 +6379,7 @@ class DatabasesCustomServerTest extends Scope ]); // Coordinates are not validated strictly; creation should succeed - $this->assertEquals(201, $response['headers']['status-code']); + $this->assertEquals(400, $response['headers']['status-code']); // Test 4b: Invalid polygon (insufficient points - should fail) $response = $this->client->call(Client::METHOD_POST, "/tablesdb/{$databaseId}/tables/{$tableId}/rows", array_merge([ @@ -6650,7 +6650,7 @@ class DatabasesCustomServerTest extends Scope 'path' => [ [0, 0], [50, 50], - [100, 100] + [80, 80] ] // New LINE STRING ], ]); @@ -6664,7 +6664,7 @@ class DatabasesCustomServerTest extends Scope $this->assertEquals([ [0, 0], [50, 50], - [100, 100] + [80, 80] ], $row['path']); } diff --git a/tests/e2e/Services/Realtime/RealtimeCustomClientTest.php b/tests/e2e/Services/Realtime/RealtimeCustomClientTest.php index 3e57c5e9bc..e44c1170a3 100644 --- a/tests/e2e/Services/Realtime/RealtimeCustomClientTest.php +++ b/tests/e2e/Services/Realtime/RealtimeCustomClientTest.php @@ -787,6 +787,8 @@ class RealtimeCustomClientTest extends Scope $this->assertContains('documents', $response['data']['channels']); $this->assertContains('databases.' . $databaseId . '.collections.' . $actorsId . '.documents.' . $documentId, $response['data']['channels']); $this->assertContains('databases.' . $databaseId . '.collections.' . $actorsId . '.documents', $response['data']['channels']); + $this->assertContains('databases.' . $databaseId . '.tables.' . $actorsId . '.rows.' . $documentId, $response['data']['channels']); + $this->assertContains('databases.' . $databaseId . '.tables.' . $actorsId . '.rows', $response['data']['channels']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.{$documentId}.create", $response['data']['events']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.{$documentId}", $response['data']['events']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.*.create", $response['data']['events']); @@ -831,6 +833,8 @@ class RealtimeCustomClientTest extends Scope $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.{$documentId}", $response['data']['channels']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents", $response['data']['channels']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.{$documentId}.update", $response['data']['events']); + $this->assertContains("databases.{$databaseId}.tables.{$actorsId}.rows", $response['data']['channels']); + $this->assertContains("databases.{$databaseId}.tables.{$actorsId}.rows.{$documentId}.update", $response['data']['events']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.{$documentId}", $response['data']['events']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.*.update", $response['data']['events']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.*", $response['data']['events']); @@ -884,6 +888,8 @@ class RealtimeCustomClientTest extends Scope $this->assertContains('documents', $response['data']['channels']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.{$documentId}", $response['data']['channels']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents", $response['data']['channels']); + $this->assertContains("databases.{$databaseId}.tables.{$actorsId}.rows.{$documentId}", $response['data']['channels']); + $this->assertContains("databases.{$databaseId}.tables.{$actorsId}.rows", $response['data']['channels']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.{$documentId}.delete", $response['data']['events']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.{$documentId}", $response['data']['events']); $this->assertContains("databases.{$databaseId}.collections.{$actorsId}.documents.*.delete", $response['data']['events']); @@ -2507,4 +2513,155 @@ class RealtimeCustomClientTest extends Scope $client->close(); } + + public function testRelationshipPayloadHidesRelatedDoc() + { + $user = $this->getUser(); + $session = $user['session'] ?? ''; + $projectId = $this->getProject()['$id']; + + $client = $this->getWebsocket(['documents'], [ + 'origin' => 'http://localhost', + 'cookie' => 'a_session_' . $projectId . '=' . $session + ]); + + $response = json_decode($client->receive(), true); + $this->assertArrayHasKey('type', $response); + $this->assertEquals('connected', $response['type']); + + // Create database + $database = $this->client->call(Client::METHOD_POST, '/databases', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'databaseId' => ID::unique(), + 'name' => 'db-rel' + ]); + $databaseId = $database['body']['$id']; + + $level1 = $this->client->call(Client::METHOD_POST, "/databases/{$databaseId}/collections", array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'collectionId' => ID::unique(), + 'name' => 'level1', + 'permissions' => [ + Permission::read(Role::any()), + Permission::create(Role::any()), + Permission::update(Role::any()), + Permission::delete(Role::any()), + ], + 'documentSecurity' => true, + ]); + $level1Id = $level1['body']['$id']; + + $level2 = $this->client->call(Client::METHOD_POST, "/databases/{$databaseId}/collections", array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'collectionId' => ID::unique(), + 'name' => 'level2', + 'permissions' => [ + Permission::read(Role::any()), + Permission::create(Role::any()), + Permission::update(Role::any()), + Permission::delete(Role::any()), + ], + 'documentSecurity' => true, + ]); + $level2Id = $level2['body']['$id']; + + $this->client->call(Client::METHOD_POST, "/databases/{$databaseId}/collections/{$level1Id}/attributes/string", array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'name', + 'size' => 256, + 'required' => false, + ]); + + $this->client->call(Client::METHOD_POST, "/databases/{$databaseId}/collections/{$level2Id}/attributes/string", array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'name', + 'size' => 256, + 'required' => false, + ]); + + sleep(2); + + // two-way one-to-one relationship from level1 to level2 + $this->client->call(Client::METHOD_POST, "/databases/{$databaseId}/collections/{$level1Id}/attributes/relationship", array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'relatedCollectionId' => $level2Id, + 'type' => 'oneToOne', + 'twoWay' => true, + 'key' => 'level2Ref', + 'onDelete' => 'cascade', + ]); + + sleep(2); + + $doc2 = $this->client->call(Client::METHOD_POST, "/databases/{$databaseId}/collections/{$level2Id}/documents", array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + ], $this->getHeaders()), [ + 'documentId' => ID::unique(), + 'data' => [ 'name' => 'L2' ], + 'permissions' => [ + Permission::read(Role::any()), + Permission::update(Role::any()), + Permission::delete(Role::any()), + ], + ]); + $doc2Id = $doc2['body']['$id']; + + $doc1 = $this->client->call(Client::METHOD_POST, "/databases/{$databaseId}/collections/{$level1Id}/documents", array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + ], $this->getHeaders()), [ + 'documentId' => ID::unique(), + 'data' => [ 'name' => 'L1' ], + 'permissions' => [ + Permission::read(Role::any()), + Permission::update(Role::any()), + Permission::delete(Role::any()), + ], + ]); + $doc1Id = $doc1['body']['$id']; + + json_decode($client->receive(), true); + + $this->client->call(Client::METHOD_PATCH, "/databases/{$databaseId}/collections/{$level1Id}/documents/{$doc1Id}", array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $projectId, + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'data' => [ + 'level2Ref' => $doc2Id, + ], + ]); + + // payload should not contain the relationship attribute 'level2Ref' + $event = json_decode($client->receive(), true); + $this->assertArrayHasKey('type', $event); + $this->assertEquals('event', $event['type']); + $this->assertArrayHasKey('data', $event); + $this->assertNotEmpty($event['data']); + $this->assertArrayHasKey('payload', $event['data']); + $this->assertArrayHasKey('$id', $event['data']['payload']); + $this->assertEquals($doc1Id, $event['data']['payload']['$id']); + $this->assertArrayNotHasKey('level2Ref', $event['data']['payload']); + + $client->close(); + } } diff --git a/tests/resources/functions/log-error-truncation/index.js b/tests/resources/functions/log-error-truncation/index.js index 7e94fa5028..35747095f5 100644 --- a/tests/resources/functions/log-error-truncation/index.js +++ b/tests/resources/functions/log-error-truncation/index.js @@ -2,8 +2,21 @@ module.exports = async(context) => { // Create a string that is 1000001 characters long (exceeds the 1000000 limit) const longString = 'z' + 'a'.repeat(1000000); - context.log(longString); - context.error(longString); + // Split the string into chunks of 8000 characters (max limit for each log and error) + const chunkSize = 8000; + const chunks = []; + + for (let i = 0; i < longString.length; i += chunkSize) { + chunks.push(longString.slice(i, i + chunkSize)); + } + + chunks.forEach((chunk, index) => { + context.log(chunk); + }); + + chunks.forEach((chunk, index) => { + context.error(chunk); + }); return context.res.json({ motto: 'Build like a team of hundreds_',