From 19db43bff851bb6051d807aa03c8ff286862abc9 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 21 Aug 2026 06:28:48 +0000 Subject: [PATCH] chore: update API specs and SDK examples --- specs/latest/open-api3-latest-client.json | 9057 ++-- specs/latest/open-api3-latest-console.json | 42726 +++++++++++++------ specs/latest/open-api3-latest-server.json | 35777 +++++++++++----- 3 files changed, 61875 insertions(+), 25685 deletions(-) diff --git a/specs/latest/open-api3-latest-client.json b/specs/latest/open-api3-latest-client.json index f5fdc060e..c010f8b1b 100644 --- a/specs/latest/open-api3-latest-client.json +++ b/specs/latest/open-api3-latest-client.json @@ -137,28 +137,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "New user password. Must be between 8 and 256 chars.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "" } @@ -648,14 +648,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -857,8 +857,8 @@ "type": "object", "properties": { "duration": { - "type": "integer", "description": "Time in seconds before JWT expires. Default duration is 900 seconds, and maximum is 3600 seconds.", + "type": "integer", "default": 900, "example": 0, "format": "int32" @@ -1003,8 +1003,8 @@ "type": "object", "properties": { "mfa": { - "type": "boolean", "description": "Enable or disable MFA.", + "type": "boolean", "example": false } }, @@ -1130,12 +1130,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -1258,12 +1261,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -1276,8 +1282,8 @@ "type": "object", "properties": { "otp": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -1392,12 +1398,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -1517,23 +1526,46 @@ "type": "object", "properties": { "factor": { - "type": "string", "description": "Factor used for verification. Must be one of following: `email`, `phone`, `totp`, `recoveryCode`, `custom`.", + "type": "string", "example": "email", - "enum": [ - "email", - "phone", - "totp", - "recoverycode", - "custom" - ], - "x-enum-name": "AuthenticationFactor", - "x-enum-keys": [ - "email", - "phone", - "totp", - "recoverycode", - "custom" + "title": "AuthenticationFactor", + "oneOf": [ + { + "type": "string", + "enum": [ + "email" + ], + "title": "email" + }, + { + "type": "string", + "enum": [ + "phone" + ], + "title": "phone" + }, + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + }, + { + "type": "string", + "enum": [ + "recoverycode" + ], + "title": "recoverycode" + }, + { + "type": "string", + "enum": [ + "custom" + ], + "title": "custom" + } ] } }, @@ -1660,13 +1692,13 @@ "type": "object", "properties": { "challengeId": { - "type": "string", "description": "ID of the challenge.", + "type": "string", "example": "" }, "otp": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -2128,8 +2160,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "example": "" } }, @@ -2198,14 +2230,14 @@ "type": "object", "properties": { "password": { - "type": "string", "description": "New user password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" }, "oldPassword": { - "type": "string", "description": "Current user password. Max length: 256 chars.", + "type": "string", "default": "", "example": "password", "format": "password" @@ -2276,14 +2308,14 @@ "type": "object", "properties": { "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "example": "+12065550100", "format": "phone" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -2403,8 +2435,8 @@ "type": "object", "properties": { "prefs": { - "type": "object", "description": "Prefs key-value JSON object.", + "type": "object", "default": {}, "example": { "language": "en", @@ -2481,14 +2513,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the recovery 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.", + "type": "string", "example": "https:\/\/example.com", "format": "url" } @@ -2557,18 +2589,18 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "secret": { - "type": "string", "description": "Valid reset token.", + "type": "string", "example": "" }, "password": { - "type": "string", "description": "New user password. Must be between 8 and 256 chars.", + "type": "string", "example": "password", "format": "password" } @@ -2784,14 +2816,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -2866,16 +2898,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -2942,103 +2974,328 @@ "parameters": [ { "name": "provider", - "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", + "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, huggingface, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", "required": true, "schema": { "type": "string", "example": "amazon", - "enum": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" - ], - "x-enum-name": "OAuthProvider", - "x-enum-keys": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" + "title": "OAuthProvider", + "oneOf": [ + { + "type": "string", + "enum": [ + "amazon" + ], + "title": "amazon" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "auth0" + ], + "title": "auth0" + }, + { + "type": "string", + "enum": [ + "authentik" + ], + "title": "authentik" + }, + { + "type": "string", + "enum": [ + "autodesk" + ], + "title": "autodesk" + }, + { + "type": "string", + "enum": [ + "bitbucket" + ], + "title": "bitbucket" + }, + { + "type": "string", + "enum": [ + "bitly" + ], + "title": "bitly" + }, + { + "type": "string", + "enum": [ + "box" + ], + "title": "box" + }, + { + "type": "string", + "enum": [ + "dailymotion" + ], + "title": "dailymotion" + }, + { + "type": "string", + "enum": [ + "discord" + ], + "title": "discord" + }, + { + "type": "string", + "enum": [ + "disqus" + ], + "title": "disqus" + }, + { + "type": "string", + "enum": [ + "dropbox" + ], + "title": "dropbox" + }, + { + "type": "string", + "enum": [ + "etsy" + ], + "title": "etsy" + }, + { + "type": "string", + "enum": [ + "facebook" + ], + "title": "facebook" + }, + { + "type": "string", + "enum": [ + "figma" + ], + "title": "figma" + }, + { + "type": "string", + "enum": [ + "fusionauth" + ], + "title": "fusionauth" + }, + { + "type": "string", + "enum": [ + "github" + ], + "title": "github" + }, + { + "type": "string", + "enum": [ + "gitlab" + ], + "title": "gitlab" + }, + { + "type": "string", + "enum": [ + "google" + ], + "title": "google" + }, + { + "type": "string", + "enum": [ + "huggingface" + ], + "title": "huggingface" + }, + { + "type": "string", + "enum": [ + "keycloak" + ], + "title": "keycloak" + }, + { + "type": "string", + "enum": [ + "kick" + ], + "title": "kick" + }, + { + "type": "string", + "enum": [ + "linkedin" + ], + "title": "linkedin" + }, + { + "type": "string", + "enum": [ + "microsoft" + ], + "title": "microsoft" + }, + { + "type": "string", + "enum": [ + "notion" + ], + "title": "notion" + }, + { + "type": "string", + "enum": [ + "oidc" + ], + "title": "oidc" + }, + { + "type": "string", + "enum": [ + "okta" + ], + "title": "okta" + }, + { + "type": "string", + "enum": [ + "paypal" + ], + "title": "paypal" + }, + { + "type": "string", + "enum": [ + "paypalSandbox" + ], + "title": "paypalSandbox" + }, + { + "type": "string", + "enum": [ + "podio" + ], + "title": "podio" + }, + { + "type": "string", + "enum": [ + "salesforce" + ], + "title": "salesforce" + }, + { + "type": "string", + "enum": [ + "slack" + ], + "title": "slack" + }, + { + "type": "string", + "enum": [ + "spotify" + ], + "title": "spotify" + }, + { + "type": "string", + "enum": [ + "stripe" + ], + "title": "stripe" + }, + { + "type": "string", + "enum": [ + "tradeshift" + ], + "title": "tradeshift" + }, + { + "type": "string", + "enum": [ + "tradeshiftBox" + ], + "title": "tradeshiftBox" + }, + { + "type": "string", + "enum": [ + "twitch" + ], + "title": "twitch" + }, + { + "type": "string", + "enum": [ + "wordpress" + ], + "title": "wordpress" + }, + { + "type": "string", + "enum": [ + "x" + ], + "title": "x" + }, + { + "type": "string", + "enum": [ + "yahoo" + ], + "title": "yahoo" + }, + { + "type": "string", + "enum": [ + "yammer" + ], + "title": "yammer" + }, + { + "type": "string", + "enum": [ + "yandex" + ], + "title": "yandex" + }, + { + "type": "string", + "enum": [ + "zoho" + ], + "title": "zoho" + }, + { + "type": "string", + "enum": [ + "zoom" + ], + "title": "zoom" + } ] }, "in": "path" @@ -3143,16 +3400,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -3222,16 +3479,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Secret of a token generated by login methods. For example, the `createMagicURLToken` or `createPhoneToken` methods.", + "type": "string", "example": "" } }, @@ -3531,21 +3788,21 @@ "type": "object", "properties": { "targetId": { - "type": "string", "description": "Target 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "identifier": { - "type": "string", "description": "The target identifier (token, email, phone etc.)", + "type": "string", "example": "" }, "providerId": { - "type": "string", "description": "Provider ID. Message will be sent to this target from the specified provider ID. If no provider ID is set the first setup provider will be used.", + "type": "string", "default": "", "example": "" } @@ -3626,8 +3883,8 @@ "type": "object", "properties": { "identifier": { - "type": "string", "description": "The target identifier (token, email, phone etc.)", + "type": "string", "example": "" } }, @@ -3751,22 +4008,22 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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. If the email address has never been used, a new account is created using the provided userId. Otherwise, if the email address is already attached to an account, the user ID is ignored.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "phrase": { - "type": "boolean", "description": "Toggle for security phrase. If enabled, email will be send with a randomly generated phrase and the phrase will also be included in the response. Confirming phrases match increases the security of your authentication flow.", + "type": "boolean", "default": false, "example": false } @@ -3840,29 +4097,29 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "Unique 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. If the email address has never been used, a new account is created using the provided userId. Otherwise, if the email address is already attached to an account, the user ID is ignored.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the magic URL login. 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.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "phrase": { - "type": "boolean", "description": "Toggle for security phrase. If enabled, email will be send with a randomly generated phrase and the phrase will also be included in the response. Confirming phrases match increases the security of your authentication flow.", + "type": "boolean", "default": false, "example": false } @@ -3930,118 +4187,343 @@ "parameters": [ { "name": "provider", - "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", + "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, huggingface, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", "required": true, "schema": { "type": "string", "example": "amazon", - "enum": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" - ], - "x-enum-name": "OAuthProvider", - "x-enum-keys": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" - ] - }, - "in": "path" - }, - { - "name": "success", - "description": "URL to redirect back to your app after a successful login attempt. Only URLs from hostnames in your project's 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.", - "required": false, - "schema": { - "type": "string", - "format": "url", - "example": "https:\/\/example.com", - "default": "" - }, - "in": "query" + "title": "OAuthProvider", + "oneOf": [ + { + "type": "string", + "enum": [ + "amazon" + ], + "title": "amazon" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "auth0" + ], + "title": "auth0" + }, + { + "type": "string", + "enum": [ + "authentik" + ], + "title": "authentik" + }, + { + "type": "string", + "enum": [ + "autodesk" + ], + "title": "autodesk" + }, + { + "type": "string", + "enum": [ + "bitbucket" + ], + "title": "bitbucket" + }, + { + "type": "string", + "enum": [ + "bitly" + ], + "title": "bitly" + }, + { + "type": "string", + "enum": [ + "box" + ], + "title": "box" + }, + { + "type": "string", + "enum": [ + "dailymotion" + ], + "title": "dailymotion" + }, + { + "type": "string", + "enum": [ + "discord" + ], + "title": "discord" + }, + { + "type": "string", + "enum": [ + "disqus" + ], + "title": "disqus" + }, + { + "type": "string", + "enum": [ + "dropbox" + ], + "title": "dropbox" + }, + { + "type": "string", + "enum": [ + "etsy" + ], + "title": "etsy" + }, + { + "type": "string", + "enum": [ + "facebook" + ], + "title": "facebook" + }, + { + "type": "string", + "enum": [ + "figma" + ], + "title": "figma" + }, + { + "type": "string", + "enum": [ + "fusionauth" + ], + "title": "fusionauth" + }, + { + "type": "string", + "enum": [ + "github" + ], + "title": "github" + }, + { + "type": "string", + "enum": [ + "gitlab" + ], + "title": "gitlab" + }, + { + "type": "string", + "enum": [ + "google" + ], + "title": "google" + }, + { + "type": "string", + "enum": [ + "huggingface" + ], + "title": "huggingface" + }, + { + "type": "string", + "enum": [ + "keycloak" + ], + "title": "keycloak" + }, + { + "type": "string", + "enum": [ + "kick" + ], + "title": "kick" + }, + { + "type": "string", + "enum": [ + "linkedin" + ], + "title": "linkedin" + }, + { + "type": "string", + "enum": [ + "microsoft" + ], + "title": "microsoft" + }, + { + "type": "string", + "enum": [ + "notion" + ], + "title": "notion" + }, + { + "type": "string", + "enum": [ + "oidc" + ], + "title": "oidc" + }, + { + "type": "string", + "enum": [ + "okta" + ], + "title": "okta" + }, + { + "type": "string", + "enum": [ + "paypal" + ], + "title": "paypal" + }, + { + "type": "string", + "enum": [ + "paypalSandbox" + ], + "title": "paypalSandbox" + }, + { + "type": "string", + "enum": [ + "podio" + ], + "title": "podio" + }, + { + "type": "string", + "enum": [ + "salesforce" + ], + "title": "salesforce" + }, + { + "type": "string", + "enum": [ + "slack" + ], + "title": "slack" + }, + { + "type": "string", + "enum": [ + "spotify" + ], + "title": "spotify" + }, + { + "type": "string", + "enum": [ + "stripe" + ], + "title": "stripe" + }, + { + "type": "string", + "enum": [ + "tradeshift" + ], + "title": "tradeshift" + }, + { + "type": "string", + "enum": [ + "tradeshiftBox" + ], + "title": "tradeshiftBox" + }, + { + "type": "string", + "enum": [ + "twitch" + ], + "title": "twitch" + }, + { + "type": "string", + "enum": [ + "wordpress" + ], + "title": "wordpress" + }, + { + "type": "string", + "enum": [ + "x" + ], + "title": "x" + }, + { + "type": "string", + "enum": [ + "yahoo" + ], + "title": "yahoo" + }, + { + "type": "string", + "enum": [ + "yammer" + ], + "title": "yammer" + }, + { + "type": "string", + "enum": [ + "yandex" + ], + "title": "yandex" + }, + { + "type": "string", + "enum": [ + "zoho" + ], + "title": "zoho" + }, + { + "type": "string", + "enum": [ + "zoom" + ], + "title": "zoom" + } + ] + }, + "in": "path" + }, + { + "name": "success", + "description": "URL to redirect back to your app after a successful login attempt. Only URLs from hostnames in your project's 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.", + "required": false, + "schema": { + "type": "string", + "format": "url", + "example": "https:\/\/example.com", + "default": "" + }, + "in": "query" }, { "name": "failure", @@ -4130,16 +4612,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "Unique 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. If the phone number has never been used, a new account is created using the provided userId. Otherwise, if the phone number is already attached to an account, the user ID is ignored.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "example": "+12065550100", "format": "phone" } @@ -4262,8 +4744,8 @@ "type": "object", "properties": { "url": { - "type": "string", "description": "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.", + "type": "string", "example": "https:\/\/example.com", "format": "url" } @@ -4387,13 +4869,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -4515,13 +4997,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -4664,132 +5146,132 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Application name.", + "type": "string", "example": "" }, "description": { - "type": "string", "description": "Application description shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "" }, "clientUri": { - "type": "string", "description": "Application homepage URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "logoUri": { - "type": "string", "description": "Application logo URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "privacyPolicyUrl": { - "type": "string", "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "termsUrl": { - "type": "string", "description": "Application terms of service URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "contacts": { - "type": "array", "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "tagline": { - "type": "string", "description": "Application tagline shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "" }, "tags": { - "type": "array", "description": "Application tags shown to users during OAuth2 consent. Maximum of 100 tags are allowed, each up to 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "images": { - "type": "array", "description": "Application image URLs shown to users during OAuth2 consent. Maximum of 100 images are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "supportUrl": { - "type": "string", "description": "Application support URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "dataDeletionUrl": { - "type": "string", "description": "Application data deletion URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "redirectUris": { - "type": "array", "description": "Redirect URIs. Each must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI (e.g. com.example.app:\/oauth), and must not contain a fragment.", + "type": "array", "items": { "type": "string" } }, "postLogoutRedirectUris": { - "type": "array", "description": "Post-logout redirect URIs for OpenID Connect RP-Initiated Logout. Each must be an https URL, an http loopback URL, or a private-use scheme URI, and must not contain a fragment. After ending the user session, the logout endpoint only redirects to URIs in this list.", + "type": "array", "default": [], "items": { "type": "string" } }, "enabled": { - "type": "boolean", "description": "Is application enabled?", + "type": "boolean", "default": true, "example": false }, "type": { - "type": "string", "description": "OAuth2 client type. Use `public` for SPAs, mobile, and native apps that cannot keep a `client_secret` \u2014 PKCE is then required at the token endpoint. Use `confidential` for server-side clients that present a `client_secret`. Defaults to `confidential`.", + "type": "string", "default": "confidential", "example": "public" }, "deviceFlow": { - "type": "boolean", "description": "Allow this client to use the OAuth2 Device Authorization Grant (RFC 8628) for input-constrained devices such as TVs and CLIs. Defaults to false.", + "type": "boolean", "default": false, "example": false }, "teamId": { - "type": "string", "description": "Team unique ID.", + "type": "string", "default": "", "example": "" } @@ -5032,133 +5514,133 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Application name.", + "type": "string", "example": "" }, "description": { - "type": "string", "description": "Application description shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "" }, "clientUri": { - "type": "string", "description": "Application homepage URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "logoUri": { - "type": "string", "description": "Application logo URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "privacyPolicyUrl": { - "type": "string", "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "termsUrl": { - "type": "string", "description": "Application terms of service URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "contacts": { - "type": "array", "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "tagline": { - "type": "string", "description": "Application tagline shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "" }, "tags": { - "type": "array", "description": "Application tags shown to users during OAuth2 consent. Maximum of 100 tags are allowed, each up to 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "images": { - "type": "array", "description": "Application image URLs shown to users during OAuth2 consent. Maximum of 100 images are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "supportUrl": { - "type": "string", "description": "Application support URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "dataDeletionUrl": { - "type": "string", "description": "Application data deletion URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "enabled": { - "type": "boolean", "description": "Is application enabled?", + "type": "boolean", "default": true, "example": false }, "redirectUris": { - "type": "array", "description": "Redirect URIs. Each must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI (e.g. com.example.app:\/oauth), and must not contain a fragment.", + "type": "array", "default": [], "items": { "type": "string" } }, "postLogoutRedirectUris": { - "type": "array", "description": "Post-logout redirect URIs for OpenID Connect RP-Initiated Logout. Each must be an https URL, an http loopback URL, or a private-use scheme URI, and must not contain a fragment. After ending the user session, the logout endpoint only redirects to URIs in this list.", + "type": "array", "default": [], "items": { "type": "string" } }, "type": { - "type": "string", "description": "OAuth2 client type. Use `public` for SPAs, mobile, and native apps that cannot keep a `client_secret` \u2014 PKCE is then required at the token endpoint. Use `confidential` for server-side clients that present a `client_secret`. Defaults to `confidential`.", + "type": "string", "default": "confidential", "example": "public" }, "deviceFlow": { - "type": "boolean", "description": "Allow this client to use the OAuth2 Device Authorization Grant (RFC 8628) for input-constrained devices such as TVs and CLIs. Defaults to false.", + "type": "boolean", "default": false, "example": false }, "installationScopes": { - "type": "array", "description": "Scopes the application requests when installed on a team. Only scopes allowed by the project's OAuth2 server installation scopes configuration are accepted; use the list installation scopes endpoint to discover available values. Maximum of 100 scopes are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "installationRedirectUrl": { - "type": "string", "description": "URL users are redirected to after creating or updating an installation of this application. Must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI, and must not contain a fragment. Leave empty for no redirect.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" @@ -6169,8 +6651,8 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "Team ID of the team to transfer application to.", + "type": "string", "example": "" } }, @@ -6301,51 +6783,119 @@ "schema": { "type": "string", "example": "aa", - "enum": [ - "aa", - "an", - "ch", - "ci", - "cm", - "cr", - "ff", - "sf", - "mf", - "ps", - "oi", - "om", - "op", - "on" - ], - "x-enum-name": "Browser", - "x-enum-keys": [ - "Avant Browser", - "Android WebView Beta", - "Google Chrome", - "Google Chrome (iOS)", - "Google Chrome (Mobile)", - "Chromium", - "Mozilla Firefox", - "Safari", - "Mobile Safari", - "Microsoft Edge", - "Microsoft Edge (iOS)", - "Opera Mini", - "Opera", - "Opera (Next)" - ] - }, - "in": "path" - }, - { - "name": "width", - "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 100 + "title": "Browser", + "oneOf": [ + { + "type": "string", + "enum": [ + "aa" + ], + "title": "Avant Browser" + }, + { + "type": "string", + "enum": [ + "an" + ], + "title": "Android WebView Beta" + }, + { + "type": "string", + "enum": [ + "ch" + ], + "title": "Google Chrome" + }, + { + "type": "string", + "enum": [ + "ci" + ], + "title": "Google Chrome (iOS)" + }, + { + "type": "string", + "enum": [ + "cm" + ], + "title": "Google Chrome (Mobile)" + }, + { + "type": "string", + "enum": [ + "cr" + ], + "title": "Chromium" + }, + { + "type": "string", + "enum": [ + "ff" + ], + "title": "Mozilla Firefox" + }, + { + "type": "string", + "enum": [ + "sf" + ], + "title": "Safari" + }, + { + "type": "string", + "enum": [ + "mf" + ], + "title": "Mobile Safari" + }, + { + "type": "string", + "enum": [ + "ps" + ], + "title": "Microsoft Edge" + }, + { + "type": "string", + "enum": [ + "oi" + ], + "title": "Microsoft Edge (iOS)" + }, + { + "type": "string", + "enum": [ + "om" + ], + "title": "Opera Mini" + }, + { + "type": "string", + "enum": [ + "op" + ], + "title": "Opera" + }, + { + "type": "string", + "enum": [ + "on" + ], + "title": "Opera (Next)" + } + ] + }, + "in": "path" + }, + { + "name": "width", + "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 }, "in": "query" }, @@ -6436,44 +6986,127 @@ "schema": { "type": "string", "example": "amex", - "enum": [ - "amex", - "argencard", - "cabal", - "cencosud", - "diners", - "discover", - "elo", - "hipercard", - "jcb", - "mastercard", - "naranja", - "targeta-shopping", - "unionpay", - "visa", - "mir", - "maestro", - "rupay" - ], - "x-enum-name": "CreditCard", - "x-enum-keys": [ - "American Express", - "Argencard", - "Cabal", - "Cencosud", - "Diners Club", - "Discover", - "Elo", - "Hipercard", - "JCB", - "Mastercard", - "Naranja", - "Tarjeta Shopping", - "Union Pay", - "Visa", - "MIR", - "Maestro", - "Rupay" + "title": "CreditCard", + "oneOf": [ + { + "type": "string", + "enum": [ + "amex" + ], + "title": "American Express" + }, + { + "type": "string", + "enum": [ + "argencard" + ], + "title": "Argencard" + }, + { + "type": "string", + "enum": [ + "cabal" + ], + "title": "Cabal" + }, + { + "type": "string", + "enum": [ + "cencosud" + ], + "title": "Cencosud" + }, + { + "type": "string", + "enum": [ + "diners" + ], + "title": "Diners Club" + }, + { + "type": "string", + "enum": [ + "discover" + ], + "title": "Discover" + }, + { + "type": "string", + "enum": [ + "elo" + ], + "title": "Elo" + }, + { + "type": "string", + "enum": [ + "hipercard" + ], + "title": "Hipercard" + }, + { + "type": "string", + "enum": [ + "jcb" + ], + "title": "JCB" + }, + { + "type": "string", + "enum": [ + "mastercard" + ], + "title": "Mastercard" + }, + { + "type": "string", + "enum": [ + "naranja" + ], + "title": "Naranja" + }, + { + "type": "string", + "enum": [ + "targeta-shopping" + ], + "title": "Tarjeta Shopping" + }, + { + "type": "string", + "enum": [ + "unionpay" + ], + "title": "Union Pay" + }, + { + "type": "string", + "enum": [ + "visa" + ], + "title": "Visa" + }, + { + "type": "string", + "enum": [ + "mir" + ], + "title": "MIR" + }, + { + "type": "string", + "enum": [ + "maestro" + ], + "title": "Maestro" + }, + { + "type": "string", + "enum": [ + "rupay" + ], + "title": "Rupay" + } ] }, "in": "path" @@ -6644,1756 +7277,4944 @@ "schema": { "type": "string", "example": "af", - "enum": [ - "af", - "ao", - "al", - "ad", - "ae", - "ar", - "am", - "ag", - "au", - "at", - "az", - "bi", - "be", - "bj", - "bf", - "bd", - "bg", - "bh", - "bs", - "ba", - "by", - "bz", - "bo", - "br", - "bb", - "bn", - "bt", - "bw", - "cf", - "ca", - "ch", - "cl", - "cn", - "ci", - "cm", - "cd", - "cg", - "co", - "km", - "cv", - "cr", - "cu", - "cy", - "cz", - "de", - "dj", - "dm", - "dk", - "do", - "dz", - "ec", - "eg", - "er", - "es", - "ee", - "et", - "fi", - "fj", - "fr", - "fm", - "ga", - "gb", - "ge", - "gh", - "gn", - "gm", - "gw", - "gq", - "gr", - "gd", - "gt", - "gy", - "hn", - "hr", - "ht", - "hu", - "id", - "in", - "ie", - "ir", - "iq", - "is", - "il", - "it", - "jm", - "jo", - "jp", - "kz", - "ke", - "kg", - "kh", - "ki", - "kn", - "kr", - "kw", - "la", - "lb", - "lr", - "ly", - "lc", - "li", - "lk", - "ls", - "lt", - "lu", - "lv", - "ma", - "mc", - "md", - "mg", - "mv", - "mx", - "mh", - "mk", - "ml", - "mt", - "mm", - "me", - "mn", - "mz", - "mr", - "mu", - "mw", - "my", - "na", - "ne", - "ng", - "ni", - "nl", - "no", - "np", - "nr", - "nz", - "om", - "pk", - "pa", - "pe", - "ph", - "pw", - "pg", - "pl", - "pf", - "kp", - "pt", - "py", - "qa", - "ro", - "ru", - "rw", - "sa", - "sd", - "sn", - "sg", - "sb", - "sl", - "sv", - "sm", - "so", - "rs", - "ss", - "st", - "sr", - "sk", - "si", - "se", - "sz", - "sc", - "sy", - "td", - "tg", - "th", - "tj", - "tm", - "tl", - "to", - "tt", - "tn", - "tr", - "tv", - "tz", - "ug", - "ua", - "uy", - "us", - "uz", - "va", - "vc", - "ve", - "vn", - "vu", - "ws", - "ye", - "za", - "zm", - "zw" - ], - "x-enum-name": "Flag", - "x-enum-keys": [ - "Afghanistan", - "Angola", - "Albania", - "Andorra", - "United Arab Emirates", - "Argentina", - "Armenia", - "Antigua and Barbuda", - "Australia", - "Austria", - "Azerbaijan", - "Burundi", - "Belgium", - "Benin", - "Burkina Faso", - "Bangladesh", - "Bulgaria", - "Bahrain", - "Bahamas", - "Bosnia and Herzegovina", - "Belarus", - "Belize", - "Bolivia", - "Brazil", - "Barbados", - "Brunei Darussalam", - "Bhutan", - "Botswana", - "Central African Republic", - "Canada", - "Switzerland", - "Chile", - "China", - "C\u00f4te d'Ivoire", - "Cameroon", - "Democratic Republic of the Congo", - "Republic of the Congo", - "Colombia", - "Comoros", - "Cape Verde", - "Costa Rica", - "Cuba", - "Cyprus", - "Czech Republic", - "Germany", - "Djibouti", - "Dominica", - "Denmark", - "Dominican Republic", - "Algeria", - "Ecuador", - "Egypt", - "Eritrea", - "Spain", - "Estonia", - "Ethiopia", - "Finland", - "Fiji", - "France", - "Micronesia (Federated States of)", - "Gabon", - "United Kingdom", - "Georgia", - "Ghana", - "Guinea", - "Gambia", - "Guinea-Bissau", - "Equatorial Guinea", - "Greece", - "Grenada", - "Guatemala", - "Guyana", - "Honduras", - "Croatia", - "Haiti", - "Hungary", - "Indonesia", - "India", - "Ireland", - "Iran (Islamic Republic of)", - "Iraq", - "Iceland", - "Israel", - "Italy", - "Jamaica", - "Jordan", - "Japan", - "Kazakhstan", - "Kenya", - "Kyrgyzstan", - "Cambodia", - "Kiribati", - "Saint Kitts and Nevis", - "South Korea", - "Kuwait", - "Lao People's Democratic Republic", - "Lebanon", - "Liberia", - "Libya", - "Saint Lucia", - "Liechtenstein", - "Sri Lanka", - "Lesotho", - "Lithuania", - "Luxembourg", - "Latvia", - "Morocco", - "Monaco", - "Moldova", - "Madagascar", - "Maldives", - "Mexico", - "Marshall Islands", - "North Macedonia", - "Mali", - "Malta", - "Myanmar", - "Montenegro", - "Mongolia", - "Mozambique", - "Mauritania", - "Mauritius", - "Malawi", - "Malaysia", - "Namibia", - "Niger", - "Nigeria", - "Nicaragua", - "Netherlands", - "Norway", - "Nepal", - "Nauru", - "New Zealand", - "Oman", - "Pakistan", - "Panama", - "Peru", - "Philippines", - "Palau", - "Papua New Guinea", - "Poland", - "French Polynesia", - "North Korea", - "Portugal", - "Paraguay", - "Qatar", - "Romania", - "Russia", - "Rwanda", - "Saudi Arabia", - "Sudan", - "Senegal", - "Singapore", - "Solomon Islands", - "Sierra Leone", - "El Salvador", - "San Marino", - "Somalia", - "Serbia", - "South Sudan", - "Sao Tome and Principe", - "Suriname", - "Slovakia", - "Slovenia", - "Sweden", - "Eswatini", - "Seychelles", - "Syria", - "Chad", - "Togo", - "Thailand", - "Tajikistan", - "Turkmenistan", - "Timor-Leste", - "Tonga", - "Trinidad and Tobago", - "Tunisia", - "Turkey", - "Tuvalu", - "Tanzania", - "Uganda", - "Ukraine", - "Uruguay", - "United States", - "Uzbekistan", - "Vatican City", - "Saint Vincent and the Grenadines", - "Venezuela", - "Vietnam", - "Vanuatu", - "Samoa", - "Yemen", - "South Africa", - "Zambia", - "Zimbabwe" - ] - }, - "in": "path" - }, - { - "name": "width", - "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 100 - }, - "in": "query" - }, - { - "name": "height", - "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 100 - }, - "in": "query" - }, - { - "name": "quality", - "description": "Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": -1, - "default": -1 - }, - "in": "query" - } - ] - } - }, - "\/avatars\/image": { - "get": { - "summary": "Get image from URL", - "operationId": "avatarsGetImage", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to fetch a remote image URL and crop it to any image size you want. This endpoint is very useful if you need to crop and display remote images in your app or in case you want to make sure a 3rd party image is properly served using a TLS protocol.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 400x400px.\n\nThis endpoint does not follow HTTP redirects.", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/*": { - "schema": { + "title": "Flag", + "oneOf": [ + { "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-image.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md", - "auth": { - "Project": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "url", - "description": "Image URL which you want to crop.", - "required": true, - "schema": { - "type": "string", - "format": "url", - "example": "https:\/\/example.com" - }, - "in": "query" - }, - { - "name": "width", - "description": "Resize preview image width, Pass an integer between 0 to 2000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 400 - }, - "in": "query" - }, - { - "name": "height", - "description": "Resize preview image height, Pass an integer between 0 to 2000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 400 - }, - "in": "query" - } - ] - } - }, - "\/avatars\/initials": { - "get": { - "summary": "Get user initials", - "operationId": "avatarsGetInitials", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to show your user initials avatar icon on your website or app. By default, this route will try to print your logged-in user name or email initials. You can also overwrite the user name if you pass the 'name' parameter. If no name is given and no user is logged, an empty avatar will be returned.\n\nYou can use the color and background params to change the avatar colors. By default, a random theme will be selected. The random theme will persist for the user's initials when reloading the same theme will always return for the same initials.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { + "enum": [ + "af" + ], + "title": "Afghanistan" + }, + { + "type": "string", + "enum": [ + "ao" + ], + "title": "Angola" + }, + { + "type": "string", + "enum": [ + "al" + ], + "title": "Albania" + }, + { + "type": "string", + "enum": [ + "ad" + ], + "title": "Andorra" + }, + { + "type": "string", + "enum": [ + "ae" + ], + "title": "United Arab Emirates" + }, + { + "type": "string", + "enum": [ + "ar" + ], + "title": "Argentina" + }, + { + "type": "string", + "enum": [ + "am" + ], + "title": "Armenia" + }, + { + "type": "string", + "enum": [ + "ag" + ], + "title": "Antigua and Barbuda" + }, + { + "type": "string", + "enum": [ + "au" + ], + "title": "Australia" + }, + { + "type": "string", + "enum": [ + "at" + ], + "title": "Austria" + }, + { + "type": "string", + "enum": [ + "az" + ], + "title": "Azerbaijan" + }, + { + "type": "string", + "enum": [ + "bi" + ], + "title": "Burundi" + }, + { + "type": "string", + "enum": [ + "be" + ], + "title": "Belgium" + }, + { + "type": "string", + "enum": [ + "bj" + ], + "title": "Benin" + }, + { + "type": "string", + "enum": [ + "bf" + ], + "title": "Burkina Faso" + }, + { + "type": "string", + "enum": [ + "bd" + ], + "title": "Bangladesh" + }, + { + "type": "string", + "enum": [ + "bg" + ], + "title": "Bulgaria" + }, + { + "type": "string", + "enum": [ + "bh" + ], + "title": "Bahrain" + }, + { + "type": "string", + "enum": [ + "bs" + ], + "title": "Bahamas" + }, + { + "type": "string", + "enum": [ + "ba" + ], + "title": "Bosnia and Herzegovina" + }, + { + "type": "string", + "enum": [ + "by" + ], + "title": "Belarus" + }, + { + "type": "string", + "enum": [ + "bz" + ], + "title": "Belize" + }, + { + "type": "string", + "enum": [ + "bo" + ], + "title": "Bolivia" + }, + { + "type": "string", + "enum": [ + "br" + ], + "title": "Brazil" + }, + { + "type": "string", + "enum": [ + "bb" + ], + "title": "Barbados" + }, + { + "type": "string", + "enum": [ + "bn" + ], + "title": "Brunei Darussalam" + }, + { + "type": "string", + "enum": [ + "bt" + ], + "title": "Bhutan" + }, + { + "type": "string", + "enum": [ + "bw" + ], + "title": "Botswana" + }, + { + "type": "string", + "enum": [ + "cf" + ], + "title": "Central African Republic" + }, + { + "type": "string", + "enum": [ + "ca" + ], + "title": "Canada" + }, + { + "type": "string", + "enum": [ + "ch" + ], + "title": "Switzerland" + }, + { + "type": "string", + "enum": [ + "cl" + ], + "title": "Chile" + }, + { + "type": "string", + "enum": [ + "cn" + ], + "title": "China" + }, + { + "type": "string", + "enum": [ + "ci" + ], + "title": "C\u00f4te d'Ivoire" + }, + { + "type": "string", + "enum": [ + "cm" + ], + "title": "Cameroon" + }, + { + "type": "string", + "enum": [ + "cd" + ], + "title": "Democratic Republic of the Congo" + }, + { + "type": "string", + "enum": [ + "cg" + ], + "title": "Republic of the Congo" + }, + { + "type": "string", + "enum": [ + "co" + ], + "title": "Colombia" + }, + { + "type": "string", + "enum": [ + "km" + ], + "title": "Comoros" + }, + { + "type": "string", + "enum": [ + "cv" + ], + "title": "Cape Verde" + }, + { + "type": "string", + "enum": [ + "cr" + ], + "title": "Costa Rica" + }, + { + "type": "string", + "enum": [ + "cu" + ], + "title": "Cuba" + }, + { + "type": "string", + "enum": [ + "cy" + ], + "title": "Cyprus" + }, + { + "type": "string", + "enum": [ + "cz" + ], + "title": "Czech Republic" + }, + { + "type": "string", + "enum": [ + "de" + ], + "title": "Germany" + }, + { + "type": "string", + "enum": [ + "dj" + ], + "title": "Djibouti" + }, + { + "type": "string", + "enum": [ + "dm" + ], + "title": "Dominica" + }, + { + "type": "string", + "enum": [ + "dk" + ], + "title": "Denmark" + }, + { + "type": "string", + "enum": [ + "do" + ], + "title": "Dominican Republic" + }, + { + "type": "string", + "enum": [ + "dz" + ], + "title": "Algeria" + }, + { + "type": "string", + "enum": [ + "ec" + ], + "title": "Ecuador" + }, + { + "type": "string", + "enum": [ + "eg" + ], + "title": "Egypt" + }, + { + "type": "string", + "enum": [ + "er" + ], + "title": "Eritrea" + }, + { + "type": "string", + "enum": [ + "es" + ], + "title": "Spain" + }, + { + "type": "string", + "enum": [ + "ee" + ], + "title": "Estonia" + }, + { + "type": "string", + "enum": [ + "et" + ], + "title": "Ethiopia" + }, + { + "type": "string", + "enum": [ + "fi" + ], + "title": "Finland" + }, + { + "type": "string", + "enum": [ + "fj" + ], + "title": "Fiji" + }, + { + "type": "string", + "enum": [ + "fr" + ], + "title": "France" + }, + { + "type": "string", + "enum": [ + "fm" + ], + "title": "Micronesia (Federated States of)" + }, + { + "type": "string", + "enum": [ + "ga" + ], + "title": "Gabon" + }, + { + "type": "string", + "enum": [ + "gb" + ], + "title": "United Kingdom" + }, + { + "type": "string", + "enum": [ + "ge" + ], + "title": "Georgia" + }, + { + "type": "string", + "enum": [ + "gh" + ], + "title": "Ghana" + }, + { + "type": "string", + "enum": [ + "gn" + ], + "title": "Guinea" + }, + { + "type": "string", + "enum": [ + "gm" + ], + "title": "Gambia" + }, + { + "type": "string", + "enum": [ + "gw" + ], + "title": "Guinea-Bissau" + }, + { + "type": "string", + "enum": [ + "gq" + ], + "title": "Equatorial Guinea" + }, + { + "type": "string", + "enum": [ + "gr" + ], + "title": "Greece" + }, + { + "type": "string", + "enum": [ + "gd" + ], + "title": "Grenada" + }, + { + "type": "string", + "enum": [ + "gt" + ], + "title": "Guatemala" + }, + { + "type": "string", + "enum": [ + "gy" + ], + "title": "Guyana" + }, + { + "type": "string", + "enum": [ + "hn" + ], + "title": "Honduras" + }, + { + "type": "string", + "enum": [ + "hr" + ], + "title": "Croatia" + }, + { + "type": "string", + "enum": [ + "ht" + ], + "title": "Haiti" + }, + { + "type": "string", + "enum": [ + "hu" + ], + "title": "Hungary" + }, + { + "type": "string", + "enum": [ + "id" + ], + "title": "Indonesia" + }, + { + "type": "string", + "enum": [ + "in" + ], + "title": "India" + }, + { + "type": "string", + "enum": [ + "ie" + ], + "title": "Ireland" + }, + { + "type": "string", + "enum": [ + "ir" + ], + "title": "Iran (Islamic Republic of)" + }, + { + "type": "string", + "enum": [ + "iq" + ], + "title": "Iraq" + }, + { + "type": "string", + "enum": [ + "is" + ], + "title": "Iceland" + }, + { + "type": "string", + "enum": [ + "il" + ], + "title": "Israel" + }, + { + "type": "string", + "enum": [ + "it" + ], + "title": "Italy" + }, + { + "type": "string", + "enum": [ + "jm" + ], + "title": "Jamaica" + }, + { + "type": "string", + "enum": [ + "jo" + ], + "title": "Jordan" + }, + { + "type": "string", + "enum": [ + "jp" + ], + "title": "Japan" + }, + { + "type": "string", + "enum": [ + "kz" + ], + "title": "Kazakhstan" + }, + { + "type": "string", + "enum": [ + "ke" + ], + "title": "Kenya" + }, + { + "type": "string", + "enum": [ + "kg" + ], + "title": "Kyrgyzstan" + }, + { + "type": "string", + "enum": [ + "kh" + ], + "title": "Cambodia" + }, + { + "type": "string", + "enum": [ + "ki" + ], + "title": "Kiribati" + }, + { + "type": "string", + "enum": [ + "kn" + ], + "title": "Saint Kitts and Nevis" + }, + { + "type": "string", + "enum": [ + "kr" + ], + "title": "South Korea" + }, + { + "type": "string", + "enum": [ + "kw" + ], + "title": "Kuwait" + }, + { + "type": "string", + "enum": [ + "la" + ], + "title": "Lao People's Democratic Republic" + }, + { + "type": "string", + "enum": [ + "lb" + ], + "title": "Lebanon" + }, + { + "type": "string", + "enum": [ + "lr" + ], + "title": "Liberia" + }, + { + "type": "string", + "enum": [ + "ly" + ], + "title": "Libya" + }, + { + "type": "string", + "enum": [ + "lc" + ], + "title": "Saint Lucia" + }, + { + "type": "string", + "enum": [ + "li" + ], + "title": "Liechtenstein" + }, + { + "type": "string", + "enum": [ + "lk" + ], + "title": "Sri Lanka" + }, + { + "type": "string", + "enum": [ + "ls" + ], + "title": "Lesotho" + }, + { + "type": "string", + "enum": [ + "lt" + ], + "title": "Lithuania" + }, + { + "type": "string", + "enum": [ + "lu" + ], + "title": "Luxembourg" + }, + { + "type": "string", + "enum": [ + "lv" + ], + "title": "Latvia" + }, + { + "type": "string", + "enum": [ + "ma" + ], + "title": "Morocco" + }, + { + "type": "string", + "enum": [ + "mc" + ], + "title": "Monaco" + }, + { + "type": "string", + "enum": [ + "md" + ], + "title": "Moldova" + }, + { + "type": "string", + "enum": [ + "mg" + ], + "title": "Madagascar" + }, + { + "type": "string", + "enum": [ + "mv" + ], + "title": "Maldives" + }, + { + "type": "string", + "enum": [ + "mx" + ], + "title": "Mexico" + }, + { + "type": "string", + "enum": [ + "mh" + ], + "title": "Marshall Islands" + }, + { + "type": "string", + "enum": [ + "mk" + ], + "title": "North Macedonia" + }, + { + "type": "string", + "enum": [ + "ml" + ], + "title": "Mali" + }, + { + "type": "string", + "enum": [ + "mt" + ], + "title": "Malta" + }, + { + "type": "string", + "enum": [ + "mm" + ], + "title": "Myanmar" + }, + { + "type": "string", + "enum": [ + "me" + ], + "title": "Montenegro" + }, + { + "type": "string", + "enum": [ + "mn" + ], + "title": "Mongolia" + }, + { + "type": "string", + "enum": [ + "mz" + ], + "title": "Mozambique" + }, + { + "type": "string", + "enum": [ + "mr" + ], + "title": "Mauritania" + }, + { + "type": "string", + "enum": [ + "mu" + ], + "title": "Mauritius" + }, + { + "type": "string", + "enum": [ + "mw" + ], + "title": "Malawi" + }, + { + "type": "string", + "enum": [ + "my" + ], + "title": "Malaysia" + }, + { + "type": "string", + "enum": [ + "na" + ], + "title": "Namibia" + }, + { + "type": "string", + "enum": [ + "ne" + ], + "title": "Niger" + }, + { + "type": "string", + "enum": [ + "ng" + ], + "title": "Nigeria" + }, + { + "type": "string", + "enum": [ + "ni" + ], + "title": "Nicaragua" + }, + { + "type": "string", + "enum": [ + "nl" + ], + "title": "Netherlands" + }, + { + "type": "string", + "enum": [ + "no" + ], + "title": "Norway" + }, + { + "type": "string", + "enum": [ + "np" + ], + "title": "Nepal" + }, + { + "type": "string", + "enum": [ + "nr" + ], + "title": "Nauru" + }, + { + "type": "string", + "enum": [ + "nz" + ], + "title": "New Zealand" + }, + { + "type": "string", + "enum": [ + "om" + ], + "title": "Oman" + }, + { + "type": "string", + "enum": [ + "pk" + ], + "title": "Pakistan" + }, + { + "type": "string", + "enum": [ + "pa" + ], + "title": "Panama" + }, + { + "type": "string", + "enum": [ + "pe" + ], + "title": "Peru" + }, + { + "type": "string", + "enum": [ + "ph" + ], + "title": "Philippines" + }, + { + "type": "string", + "enum": [ + "pw" + ], + "title": "Palau" + }, + { + "type": "string", + "enum": [ + "pg" + ], + "title": "Papua New Guinea" + }, + { + "type": "string", + "enum": [ + "pl" + ], + "title": "Poland" + }, + { + "type": "string", + "enum": [ + "pf" + ], + "title": "French Polynesia" + }, + { + "type": "string", + "enum": [ + "kp" + ], + "title": "North Korea" + }, + { + "type": "string", + "enum": [ + "pt" + ], + "title": "Portugal" + }, + { + "type": "string", + "enum": [ + "py" + ], + "title": "Paraguay" + }, + { + "type": "string", + "enum": [ + "qa" + ], + "title": "Qatar" + }, + { + "type": "string", + "enum": [ + "ro" + ], + "title": "Romania" + }, + { + "type": "string", + "enum": [ + "ru" + ], + "title": "Russia" + }, + { + "type": "string", + "enum": [ + "rw" + ], + "title": "Rwanda" + }, + { + "type": "string", + "enum": [ + "sa" + ], + "title": "Saudi Arabia" + }, + { + "type": "string", + "enum": [ + "sd" + ], + "title": "Sudan" + }, + { + "type": "string", + "enum": [ + "sn" + ], + "title": "Senegal" + }, + { + "type": "string", + "enum": [ + "sg" + ], + "title": "Singapore" + }, + { + "type": "string", + "enum": [ + "sb" + ], + "title": "Solomon Islands" + }, + { + "type": "string", + "enum": [ + "sl" + ], + "title": "Sierra Leone" + }, + { + "type": "string", + "enum": [ + "sv" + ], + "title": "El Salvador" + }, + { + "type": "string", + "enum": [ + "sm" + ], + "title": "San Marino" + }, + { + "type": "string", + "enum": [ + "so" + ], + "title": "Somalia" + }, + { + "type": "string", + "enum": [ + "rs" + ], + "title": "Serbia" + }, + { + "type": "string", + "enum": [ + "ss" + ], + "title": "South Sudan" + }, + { + "type": "string", + "enum": [ + "st" + ], + "title": "Sao Tome and Principe" + }, + { + "type": "string", + "enum": [ + "sr" + ], + "title": "Suriname" + }, + { + "type": "string", + "enum": [ + "sk" + ], + "title": "Slovakia" + }, + { + "type": "string", + "enum": [ + "si" + ], + "title": "Slovenia" + }, + { + "type": "string", + "enum": [ + "se" + ], + "title": "Sweden" + }, + { + "type": "string", + "enum": [ + "sz" + ], + "title": "Eswatini" + }, + { + "type": "string", + "enum": [ + "sc" + ], + "title": "Seychelles" + }, + { + "type": "string", + "enum": [ + "sy" + ], + "title": "Syria" + }, + { + "type": "string", + "enum": [ + "td" + ], + "title": "Chad" + }, + { + "type": "string", + "enum": [ + "tg" + ], + "title": "Togo" + }, + { + "type": "string", + "enum": [ + "th" + ], + "title": "Thailand" + }, + { + "type": "string", + "enum": [ + "tj" + ], + "title": "Tajikistan" + }, + { + "type": "string", + "enum": [ + "tm" + ], + "title": "Turkmenistan" + }, + { + "type": "string", + "enum": [ + "tl" + ], + "title": "Timor-Leste" + }, + { + "type": "string", + "enum": [ + "to" + ], + "title": "Tonga" + }, + { + "type": "string", + "enum": [ + "tt" + ], + "title": "Trinidad and Tobago" + }, + { + "type": "string", + "enum": [ + "tn" + ], + "title": "Tunisia" + }, + { + "type": "string", + "enum": [ + "tr" + ], + "title": "Turkey" + }, + { + "type": "string", + "enum": [ + "tv" + ], + "title": "Tuvalu" + }, + { + "type": "string", + "enum": [ + "tz" + ], + "title": "Tanzania" + }, + { + "type": "string", + "enum": [ + "ug" + ], + "title": "Uganda" + }, + { + "type": "string", + "enum": [ + "ua" + ], + "title": "Ukraine" + }, + { + "type": "string", + "enum": [ + "uy" + ], + "title": "Uruguay" + }, + { + "type": "string", + "enum": [ + "us" + ], + "title": "United States" + }, + { + "type": "string", + "enum": [ + "uz" + ], + "title": "Uzbekistan" + }, + { + "type": "string", + "enum": [ + "va" + ], + "title": "Vatican City" + }, + { + "type": "string", + "enum": [ + "vc" + ], + "title": "Saint Vincent and the Grenadines" + }, + { + "type": "string", + "enum": [ + "ve" + ], + "title": "Venezuela" + }, + { + "type": "string", + "enum": [ + "vn" + ], + "title": "Vietnam" + }, + { + "type": "string", + "enum": [ + "vu" + ], + "title": "Vanuatu" + }, + { + "type": "string", + "enum": [ + "ws" + ], + "title": "Samoa" + }, + { + "type": "string", + "enum": [ + "ye" + ], + "title": "Yemen" + }, + { + "type": "string", + "enum": [ + "za" + ], + "title": "South Africa" + }, + { + "type": "string", + "enum": [ + "zm" + ], + "title": "Zambia" + }, + { + "type": "string", + "enum": [ + "zw" + ], + "title": "Zimbabwe" + } + ] + }, + "in": "path" + }, + { + "name": "width", + "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "height", + "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "quality", + "description": "Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": -1, + "default": -1 + }, + "in": "query" + } + ] + } + }, + "\/avatars\/image": { + "get": { + "summary": "Get image from URL", + "operationId": "avatarsGetImage", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to fetch a remote image URL and crop it to any image size you want. This endpoint is very useful if you need to crop and display remote images in your app or in case you want to make sure a 3rd party image is properly served using a TLS protocol.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 400x400px.\n\nThis endpoint does not follow HTTP redirects.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/*": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-image.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md", + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "url", + "description": "Image URL which you want to crop.", + "required": true, + "schema": { + "type": "string", + "format": "url", + "example": "https:\/\/example.com" + }, + "in": "query" + }, + { + "name": "width", + "description": "Resize preview image width, Pass an integer between 0 to 2000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 400 + }, + "in": "query" + }, + { + "name": "height", + "description": "Resize preview image height, Pass an integer between 0 to 2000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 400 + }, + "in": "query" + } + ] + } + }, + "\/avatars\/initials": { + "get": { + "summary": "Get user initials", + "operationId": "avatarsGetInitials", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to show your user initials avatar icon on your website or app. By default, this route will try to print your logged-in user name or email initials. You can also overwrite the user name if you pass the 'name' parameter. If no name is given and no user is logged, an empty avatar will be returned.\n\nYou can use the color and background params to change the avatar colors. By default, a random theme will be selected. The random theme will persist for the user's initials when reloading the same theme will always return for the same initials.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-initials.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md", + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "name", + "description": "Full Name. When empty, current user name or email will be used. Max length: 128 chars.", + "required": false, + "schema": { + "type": "string", + "example": "", + "default": "" + }, + "in": "query" + }, + { + "name": "width", + "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 500 + }, + "in": "query" + }, + { + "name": "height", + "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 500 + }, + "in": "query" + }, + { + "name": "background", + "description": "Changes background color. By default a random color will be picked and stay will persistent to the given name.", + "required": false, + "schema": { + "type": "string", + "default": "" + }, + "in": "query" + } + ] + } + }, + "\/avatars\/photo": { + "get": { + "summary": "Get user photo", + "operationId": "avatarsGetPhoto", + "tags": [ + "avatars" + ], + "description": "Returns the best available profile photo for the currently authenticated user. The endpoint tries each source in priority order and returns the first successful result: Gravatar, Libavatar, Appwrite Initials, built-in static fallback file.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/*": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-photo.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "width", + "description": "Output image width in pixels. Pass an integer between 0 and 2000. Defaults to 256.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 256 + }, + "in": "query" + }, + { + "name": "height", + "description": "Output image height in pixels. Pass an integer between 0 and 2000. Defaults to 256.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 256 + }, + "in": "query" + }, + { + "name": "quality", + "description": "Output image quality between 0 and 100. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "output", + "description": "Output image format. Defaults to 'png'.", + "required": false, + "schema": { + "type": "string", + "example": "png", + "default": "png" + }, + "in": "query" + }, + { + "name": "rating", + "description": "Maximum image rating to fetch from Gravatar\/Libravatar. Defaults to 'g'.", + "required": false, + "schema": { + "type": "string", + "example": "g", + "default": "g" + }, + "in": "query" + } + ] + } + }, + "\/avatars\/qr": { + "get": { + "summary": "Get QR code", + "operationId": "avatarsGetQR", + "tags": [ + "avatars" + ], + "description": "Converts a given plain text to a QR code image. You can use the query parameters to change the size and style of the resulting image.\n", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-qr.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md", + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "text", + "description": "Plain text to be converted to QR code image.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "query" + }, + { + "name": "size", + "description": "QR code size. Pass an integer between 1 to 1000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1, + "default": 400 + }, + "in": "query" + }, + { + "name": "margin", + "description": "Margin from edge. Pass an integer between 0 to 10. Defaults to 1.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 1 + }, + "in": "query" + }, + { + "name": "download", + "description": "Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": false + }, + "in": "query" + } + ] + } + }, + "\/avatars\/screenshots": { + "get": { + "summary": "Get webpage screenshot", + "operationId": "avatarsGetScreenshot", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to capture a screenshot of any website URL. This endpoint uses a headless browser to render the webpage and capture it as an image.\n\nYou can configure the browser viewport size, theme, user agent, geolocation, permissions, and more. Capture either just the viewport or the full page scroll.\n\nWhen width and height are specified, the image is resized accordingly. If both dimensions are 0, the API provides an image at original size. If dimensions are not specified, the default viewport size is 1280x720px.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-screenshot.md", + "rate-limit": 60, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-screenshot.md", + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "url", + "description": "Website URL which you want to capture.", + "required": true, + "schema": { + "type": "string", + "format": "url", + "example": "https:\/\/example.com" + }, + "in": "query" + }, + { + "name": "headers", + "description": "HTTP headers to send with the browser request. Defaults to empty.", + "required": false, + "schema": { + "type": "object", + "default": [], + "example": { + "Authorization": "Bearer token123", + "X-Custom-Header": "value" + } + }, + "in": "query" + }, + { + "name": "viewportWidth", + "description": "Browser viewport width. Pass an integer between 1 to 1920. Defaults to 1280.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1920, + "default": 1280 + }, + "in": "query" + }, + { + "name": "viewportHeight", + "description": "Browser viewport height. Pass an integer between 1 to 1080. Defaults to 720.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1080, + "default": 720 + }, + "in": "query" + }, + { + "name": "scale", + "description": "Browser scale factor. Pass a number between 0.1 to 3. Defaults to 1.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": 2, + "default": 1 + }, + "in": "query" + }, + { + "name": "theme", + "description": "Browser theme. Pass \"light\" or \"dark\". Defaults to \"light\".", + "required": false, + "schema": { + "type": "string", + "example": "dark", + "title": "BrowserTheme", + "oneOf": [ + { + "type": "string", + "enum": [ + "light" + ], + "title": "light" + }, + { + "type": "string", + "enum": [ + "dark" + ], + "title": "dark" + } + ], + "default": "light" + }, + "in": "query" + }, + { + "name": "userAgent", + "description": "Custom user agent string. Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "Mozilla\/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit\/605.1.15", + "default": "" + }, + "in": "query" + }, + { + "name": "fullpage", + "description": "Capture full page scroll. Pass 0 for viewport only, or 1 for full page. Defaults to 0.", + "required": false, + "schema": { + "type": "boolean", + "example": true, + "default": false + }, + "in": "query" + }, + { + "name": "locale", + "description": "Browser locale (e.g., \"en-US\", \"fr-FR\"). Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "en-US", + "default": "" + }, + "in": "query" + }, + { + "name": "timezone", + "description": "IANA timezone identifier (e.g., \"America\/New_York\", \"Europe\/London\"). Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "America\/New_York", + "title": "Timezone", + "oneOf": [ + { + "type": "string", + "enum": [ + "africa\/abidjan" + ], + "title": "africa\/abidjan" + }, + { + "type": "string", + "enum": [ + "africa\/accra" + ], + "title": "africa\/accra" + }, + { + "type": "string", + "enum": [ + "africa\/addis_ababa" + ], + "title": "africa\/addis_ababa" + }, + { + "type": "string", + "enum": [ + "africa\/algiers" + ], + "title": "africa\/algiers" + }, + { + "type": "string", + "enum": [ + "africa\/asmara" + ], + "title": "africa\/asmara" + }, + { + "type": "string", + "enum": [ + "africa\/bamako" + ], + "title": "africa\/bamako" + }, + { + "type": "string", + "enum": [ + "africa\/bangui" + ], + "title": "africa\/bangui" + }, + { + "type": "string", + "enum": [ + "africa\/banjul" + ], + "title": "africa\/banjul" + }, + { + "type": "string", + "enum": [ + "africa\/bissau" + ], + "title": "africa\/bissau" + }, + { + "type": "string", + "enum": [ + "africa\/blantyre" + ], + "title": "africa\/blantyre" + }, + { + "type": "string", + "enum": [ + "africa\/brazzaville" + ], + "title": "africa\/brazzaville" + }, + { + "type": "string", + "enum": [ + "africa\/bujumbura" + ], + "title": "africa\/bujumbura" + }, + { + "type": "string", + "enum": [ + "africa\/cairo" + ], + "title": "africa\/cairo" + }, + { + "type": "string", + "enum": [ + "africa\/casablanca" + ], + "title": "africa\/casablanca" + }, + { + "type": "string", + "enum": [ + "africa\/ceuta" + ], + "title": "africa\/ceuta" + }, + { + "type": "string", + "enum": [ + "africa\/conakry" + ], + "title": "africa\/conakry" + }, + { + "type": "string", + "enum": [ + "africa\/dakar" + ], + "title": "africa\/dakar" + }, + { + "type": "string", + "enum": [ + "africa\/dar_es_salaam" + ], + "title": "africa\/dar_es_salaam" + }, + { + "type": "string", + "enum": [ + "africa\/djibouti" + ], + "title": "africa\/djibouti" + }, + { + "type": "string", + "enum": [ + "africa\/douala" + ], + "title": "africa\/douala" + }, + { + "type": "string", + "enum": [ + "africa\/el_aaiun" + ], + "title": "africa\/el_aaiun" + }, + { + "type": "string", + "enum": [ + "africa\/freetown" + ], + "title": "africa\/freetown" + }, + { + "type": "string", + "enum": [ + "africa\/gaborone" + ], + "title": "africa\/gaborone" + }, + { + "type": "string", + "enum": [ + "africa\/harare" + ], + "title": "africa\/harare" + }, + { + "type": "string", + "enum": [ + "africa\/johannesburg" + ], + "title": "africa\/johannesburg" + }, + { + "type": "string", + "enum": [ + "africa\/juba" + ], + "title": "africa\/juba" + }, + { + "type": "string", + "enum": [ + "africa\/kampala" + ], + "title": "africa\/kampala" + }, + { + "type": "string", + "enum": [ + "africa\/khartoum" + ], + "title": "africa\/khartoum" + }, + { + "type": "string", + "enum": [ + "africa\/kigali" + ], + "title": "africa\/kigali" + }, + { + "type": "string", + "enum": [ + "africa\/kinshasa" + ], + "title": "africa\/kinshasa" + }, + { + "type": "string", + "enum": [ + "africa\/lagos" + ], + "title": "africa\/lagos" + }, + { + "type": "string", + "enum": [ + "africa\/libreville" + ], + "title": "africa\/libreville" + }, + { + "type": "string", + "enum": [ + "africa\/lome" + ], + "title": "africa\/lome" + }, + { + "type": "string", + "enum": [ + "africa\/luanda" + ], + "title": "africa\/luanda" + }, + { + "type": "string", + "enum": [ + "africa\/lubumbashi" + ], + "title": "africa\/lubumbashi" + }, + { + "type": "string", + "enum": [ + "africa\/lusaka" + ], + "title": "africa\/lusaka" + }, + { + "type": "string", + "enum": [ + "africa\/malabo" + ], + "title": "africa\/malabo" + }, + { + "type": "string", + "enum": [ + "africa\/maputo" + ], + "title": "africa\/maputo" + }, + { + "type": "string", + "enum": [ + "africa\/maseru" + ], + "title": "africa\/maseru" + }, + { + "type": "string", + "enum": [ + "africa\/mbabane" + ], + "title": "africa\/mbabane" + }, + { + "type": "string", + "enum": [ + "africa\/mogadishu" + ], + "title": "africa\/mogadishu" + }, + { + "type": "string", + "enum": [ + "africa\/monrovia" + ], + "title": "africa\/monrovia" + }, + { + "type": "string", + "enum": [ + "africa\/nairobi" + ], + "title": "africa\/nairobi" + }, + { + "type": "string", + "enum": [ + "africa\/ndjamena" + ], + "title": "africa\/ndjamena" + }, + { + "type": "string", + "enum": [ + "africa\/niamey" + ], + "title": "africa\/niamey" + }, + { + "type": "string", + "enum": [ + "africa\/nouakchott" + ], + "title": "africa\/nouakchott" + }, + { + "type": "string", + "enum": [ + "africa\/ouagadougou" + ], + "title": "africa\/ouagadougou" + }, + { + "type": "string", + "enum": [ + "africa\/porto-novo" + ], + "title": "africa\/porto-novo" + }, + { + "type": "string", + "enum": [ + "africa\/sao_tome" + ], + "title": "africa\/sao_tome" + }, + { + "type": "string", + "enum": [ + "africa\/tripoli" + ], + "title": "africa\/tripoli" + }, + { + "type": "string", + "enum": [ + "africa\/tunis" + ], + "title": "africa\/tunis" + }, + { + "type": "string", + "enum": [ + "africa\/windhoek" + ], + "title": "africa\/windhoek" + }, + { + "type": "string", + "enum": [ + "america\/adak" + ], + "title": "america\/adak" + }, + { + "type": "string", + "enum": [ + "america\/anchorage" + ], + "title": "america\/anchorage" + }, + { + "type": "string", + "enum": [ + "america\/anguilla" + ], + "title": "america\/anguilla" + }, + { + "type": "string", + "enum": [ + "america\/antigua" + ], + "title": "america\/antigua" + }, + { + "type": "string", + "enum": [ + "america\/araguaina" + ], + "title": "america\/araguaina" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/buenos_aires" + ], + "title": "america\/argentina\/buenos_aires" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/catamarca" + ], + "title": "america\/argentina\/catamarca" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/cordoba" + ], + "title": "america\/argentina\/cordoba" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/jujuy" + ], + "title": "america\/argentina\/jujuy" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/la_rioja" + ], + "title": "america\/argentina\/la_rioja" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/mendoza" + ], + "title": "america\/argentina\/mendoza" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/rio_gallegos" + ], + "title": "america\/argentina\/rio_gallegos" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/salta" + ], + "title": "america\/argentina\/salta" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/san_juan" + ], + "title": "america\/argentina\/san_juan" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/san_luis" + ], + "title": "america\/argentina\/san_luis" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/tucuman" + ], + "title": "america\/argentina\/tucuman" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/ushuaia" + ], + "title": "america\/argentina\/ushuaia" + }, + { + "type": "string", + "enum": [ + "america\/aruba" + ], + "title": "america\/aruba" + }, + { + "type": "string", + "enum": [ + "america\/asuncion" + ], + "title": "america\/asuncion" + }, + { + "type": "string", + "enum": [ + "america\/atikokan" + ], + "title": "america\/atikokan" + }, + { + "type": "string", + "enum": [ + "america\/bahia" + ], + "title": "america\/bahia" + }, + { + "type": "string", + "enum": [ + "america\/bahia_banderas" + ], + "title": "america\/bahia_banderas" + }, + { + "type": "string", + "enum": [ + "america\/barbados" + ], + "title": "america\/barbados" + }, + { + "type": "string", + "enum": [ + "america\/belem" + ], + "title": "america\/belem" + }, + { + "type": "string", + "enum": [ + "america\/belize" + ], + "title": "america\/belize" + }, + { + "type": "string", + "enum": [ + "america\/blanc-sablon" + ], + "title": "america\/blanc-sablon" + }, + { + "type": "string", + "enum": [ + "america\/boa_vista" + ], + "title": "america\/boa_vista" + }, + { + "type": "string", + "enum": [ + "america\/bogota" + ], + "title": "america\/bogota" + }, + { + "type": "string", + "enum": [ + "america\/boise" + ], + "title": "america\/boise" + }, + { + "type": "string", + "enum": [ + "america\/cambridge_bay" + ], + "title": "america\/cambridge_bay" + }, + { + "type": "string", + "enum": [ + "america\/campo_grande" + ], + "title": "america\/campo_grande" + }, + { + "type": "string", + "enum": [ + "america\/cancun" + ], + "title": "america\/cancun" + }, + { + "type": "string", + "enum": [ + "america\/caracas" + ], + "title": "america\/caracas" + }, + { + "type": "string", + "enum": [ + "america\/cayenne" + ], + "title": "america\/cayenne" + }, + { + "type": "string", + "enum": [ + "america\/cayman" + ], + "title": "america\/cayman" + }, + { + "type": "string", + "enum": [ + "america\/chicago" + ], + "title": "america\/chicago" + }, + { + "type": "string", + "enum": [ + "america\/chihuahua" + ], + "title": "america\/chihuahua" + }, + { + "type": "string", + "enum": [ + "america\/ciudad_juarez" + ], + "title": "america\/ciudad_juarez" + }, + { + "type": "string", + "enum": [ + "america\/costa_rica" + ], + "title": "america\/costa_rica" + }, + { + "type": "string", + "enum": [ + "america\/coyhaique" + ], + "title": "america\/coyhaique" + }, + { + "type": "string", + "enum": [ + "america\/creston" + ], + "title": "america\/creston" + }, + { + "type": "string", + "enum": [ + "america\/cuiaba" + ], + "title": "america\/cuiaba" + }, + { + "type": "string", + "enum": [ + "america\/curacao" + ], + "title": "america\/curacao" + }, + { + "type": "string", + "enum": [ + "america\/danmarkshavn" + ], + "title": "america\/danmarkshavn" + }, + { + "type": "string", + "enum": [ + "america\/dawson" + ], + "title": "america\/dawson" + }, + { + "type": "string", + "enum": [ + "america\/dawson_creek" + ], + "title": "america\/dawson_creek" + }, + { + "type": "string", + "enum": [ + "america\/denver" + ], + "title": "america\/denver" + }, + { + "type": "string", + "enum": [ + "america\/detroit" + ], + "title": "america\/detroit" + }, + { + "type": "string", + "enum": [ + "america\/dominica" + ], + "title": "america\/dominica" + }, + { + "type": "string", + "enum": [ + "america\/edmonton" + ], + "title": "america\/edmonton" + }, + { + "type": "string", + "enum": [ + "america\/eirunepe" + ], + "title": "america\/eirunepe" + }, + { + "type": "string", + "enum": [ + "america\/el_salvador" + ], + "title": "america\/el_salvador" + }, + { + "type": "string", + "enum": [ + "america\/fort_nelson" + ], + "title": "america\/fort_nelson" + }, + { + "type": "string", + "enum": [ + "america\/fortaleza" + ], + "title": "america\/fortaleza" + }, + { + "type": "string", + "enum": [ + "america\/glace_bay" + ], + "title": "america\/glace_bay" + }, + { + "type": "string", + "enum": [ + "america\/goose_bay" + ], + "title": "america\/goose_bay" + }, + { + "type": "string", + "enum": [ + "america\/grand_turk" + ], + "title": "america\/grand_turk" + }, + { + "type": "string", + "enum": [ + "america\/grenada" + ], + "title": "america\/grenada" + }, + { + "type": "string", + "enum": [ + "america\/guadeloupe" + ], + "title": "america\/guadeloupe" + }, + { + "type": "string", + "enum": [ + "america\/guatemala" + ], + "title": "america\/guatemala" + }, + { + "type": "string", + "enum": [ + "america\/guayaquil" + ], + "title": "america\/guayaquil" + }, + { + "type": "string", + "enum": [ + "america\/guyana" + ], + "title": "america\/guyana" + }, + { + "type": "string", + "enum": [ + "america\/halifax" + ], + "title": "america\/halifax" + }, + { + "type": "string", + "enum": [ + "america\/havana" + ], + "title": "america\/havana" + }, + { + "type": "string", + "enum": [ + "america\/hermosillo" + ], + "title": "america\/hermosillo" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/indianapolis" + ], + "title": "america\/indiana\/indianapolis" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/knox" + ], + "title": "america\/indiana\/knox" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/marengo" + ], + "title": "america\/indiana\/marengo" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/petersburg" + ], + "title": "america\/indiana\/petersburg" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/tell_city" + ], + "title": "america\/indiana\/tell_city" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/vevay" + ], + "title": "america\/indiana\/vevay" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/vincennes" + ], + "title": "america\/indiana\/vincennes" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/winamac" + ], + "title": "america\/indiana\/winamac" + }, + { + "type": "string", + "enum": [ + "america\/inuvik" + ], + "title": "america\/inuvik" + }, + { + "type": "string", + "enum": [ + "america\/iqaluit" + ], + "title": "america\/iqaluit" + }, + { + "type": "string", + "enum": [ + "america\/jamaica" + ], + "title": "america\/jamaica" + }, + { + "type": "string", + "enum": [ + "america\/juneau" + ], + "title": "america\/juneau" + }, + { + "type": "string", + "enum": [ + "america\/kentucky\/louisville" + ], + "title": "america\/kentucky\/louisville" + }, + { + "type": "string", + "enum": [ + "america\/kentucky\/monticello" + ], + "title": "america\/kentucky\/monticello" + }, + { + "type": "string", + "enum": [ + "america\/kralendijk" + ], + "title": "america\/kralendijk" + }, + { + "type": "string", + "enum": [ + "america\/la_paz" + ], + "title": "america\/la_paz" + }, + { + "type": "string", + "enum": [ + "america\/lima" + ], + "title": "america\/lima" + }, + { + "type": "string", + "enum": [ + "america\/los_angeles" + ], + "title": "america\/los_angeles" + }, + { + "type": "string", + "enum": [ + "america\/lower_princes" + ], + "title": "america\/lower_princes" + }, + { + "type": "string", + "enum": [ + "america\/maceio" + ], + "title": "america\/maceio" + }, + { + "type": "string", + "enum": [ + "america\/managua" + ], + "title": "america\/managua" + }, + { + "type": "string", + "enum": [ + "america\/manaus" + ], + "title": "america\/manaus" + }, + { + "type": "string", + "enum": [ + "america\/marigot" + ], + "title": "america\/marigot" + }, + { + "type": "string", + "enum": [ + "america\/martinique" + ], + "title": "america\/martinique" + }, + { + "type": "string", + "enum": [ + "america\/matamoros" + ], + "title": "america\/matamoros" + }, + { + "type": "string", + "enum": [ + "america\/mazatlan" + ], + "title": "america\/mazatlan" + }, + { + "type": "string", + "enum": [ + "america\/menominee" + ], + "title": "america\/menominee" + }, + { + "type": "string", + "enum": [ + "america\/merida" + ], + "title": "america\/merida" + }, + { + "type": "string", + "enum": [ + "america\/metlakatla" + ], + "title": "america\/metlakatla" + }, + { + "type": "string", + "enum": [ + "america\/mexico_city" + ], + "title": "america\/mexico_city" + }, + { + "type": "string", + "enum": [ + "america\/miquelon" + ], + "title": "america\/miquelon" + }, + { + "type": "string", + "enum": [ + "america\/moncton" + ], + "title": "america\/moncton" + }, + { + "type": "string", + "enum": [ + "america\/monterrey" + ], + "title": "america\/monterrey" + }, + { + "type": "string", + "enum": [ + "america\/montevideo" + ], + "title": "america\/montevideo" + }, + { + "type": "string", + "enum": [ + "america\/montserrat" + ], + "title": "america\/montserrat" + }, + { + "type": "string", + "enum": [ + "america\/nassau" + ], + "title": "america\/nassau" + }, + { + "type": "string", + "enum": [ + "america\/new_york" + ], + "title": "america\/new_york" + }, + { + "type": "string", + "enum": [ + "america\/nome" + ], + "title": "america\/nome" + }, + { + "type": "string", + "enum": [ + "america\/noronha" + ], + "title": "america\/noronha" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/beulah" + ], + "title": "america\/north_dakota\/beulah" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/center" + ], + "title": "america\/north_dakota\/center" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/new_salem" + ], + "title": "america\/north_dakota\/new_salem" + }, + { + "type": "string", + "enum": [ + "america\/nuuk" + ], + "title": "america\/nuuk" + }, + { + "type": "string", + "enum": [ + "america\/ojinaga" + ], + "title": "america\/ojinaga" + }, + { + "type": "string", + "enum": [ + "america\/panama" + ], + "title": "america\/panama" + }, + { + "type": "string", + "enum": [ + "america\/paramaribo" + ], + "title": "america\/paramaribo" + }, + { + "type": "string", + "enum": [ + "america\/phoenix" + ], + "title": "america\/phoenix" + }, + { + "type": "string", + "enum": [ + "america\/port-au-prince" + ], + "title": "america\/port-au-prince" + }, + { + "type": "string", + "enum": [ + "america\/port_of_spain" + ], + "title": "america\/port_of_spain" + }, + { + "type": "string", + "enum": [ + "america\/porto_velho" + ], + "title": "america\/porto_velho" + }, + { + "type": "string", + "enum": [ + "america\/puerto_rico" + ], + "title": "america\/puerto_rico" + }, + { + "type": "string", + "enum": [ + "america\/punta_arenas" + ], + "title": "america\/punta_arenas" + }, + { + "type": "string", + "enum": [ + "america\/rankin_inlet" + ], + "title": "america\/rankin_inlet" + }, + { + "type": "string", + "enum": [ + "america\/recife" + ], + "title": "america\/recife" + }, + { + "type": "string", + "enum": [ + "america\/regina" + ], + "title": "america\/regina" + }, + { + "type": "string", + "enum": [ + "america\/resolute" + ], + "title": "america\/resolute" + }, + { + "type": "string", + "enum": [ + "america\/rio_branco" + ], + "title": "america\/rio_branco" + }, + { + "type": "string", + "enum": [ + "america\/santarem" + ], + "title": "america\/santarem" + }, + { + "type": "string", + "enum": [ + "america\/santiago" + ], + "title": "america\/santiago" + }, + { + "type": "string", + "enum": [ + "america\/santo_domingo" + ], + "title": "america\/santo_domingo" + }, + { + "type": "string", + "enum": [ + "america\/sao_paulo" + ], + "title": "america\/sao_paulo" + }, + { + "type": "string", + "enum": [ + "america\/scoresbysund" + ], + "title": "america\/scoresbysund" + }, + { + "type": "string", + "enum": [ + "america\/sitka" + ], + "title": "america\/sitka" + }, + { + "type": "string", + "enum": [ + "america\/st_barthelemy" + ], + "title": "america\/st_barthelemy" + }, + { + "type": "string", + "enum": [ + "america\/st_johns" + ], + "title": "america\/st_johns" + }, + { + "type": "string", + "enum": [ + "america\/st_kitts" + ], + "title": "america\/st_kitts" + }, + { + "type": "string", + "enum": [ + "america\/st_lucia" + ], + "title": "america\/st_lucia" + }, + { + "type": "string", + "enum": [ + "america\/st_thomas" + ], + "title": "america\/st_thomas" + }, + { + "type": "string", + "enum": [ + "america\/st_vincent" + ], + "title": "america\/st_vincent" + }, + { + "type": "string", + "enum": [ + "america\/swift_current" + ], + "title": "america\/swift_current" + }, + { + "type": "string", + "enum": [ + "america\/tegucigalpa" + ], + "title": "america\/tegucigalpa" + }, + { + "type": "string", + "enum": [ + "america\/thule" + ], + "title": "america\/thule" + }, + { + "type": "string", + "enum": [ + "america\/tijuana" + ], + "title": "america\/tijuana" + }, + { + "type": "string", + "enum": [ + "america\/toronto" + ], + "title": "america\/toronto" + }, + { + "type": "string", + "enum": [ + "america\/tortola" + ], + "title": "america\/tortola" + }, + { + "type": "string", + "enum": [ + "america\/vancouver" + ], + "title": "america\/vancouver" + }, + { + "type": "string", + "enum": [ + "america\/whitehorse" + ], + "title": "america\/whitehorse" + }, + { + "type": "string", + "enum": [ + "america\/winnipeg" + ], + "title": "america\/winnipeg" + }, + { + "type": "string", + "enum": [ + "america\/yakutat" + ], + "title": "america\/yakutat" + }, + { + "type": "string", + "enum": [ + "antarctica\/casey" + ], + "title": "antarctica\/casey" + }, + { + "type": "string", + "enum": [ + "antarctica\/davis" + ], + "title": "antarctica\/davis" + }, + { + "type": "string", + "enum": [ + "antarctica\/dumontdurville" + ], + "title": "antarctica\/dumontdurville" + }, + { + "type": "string", + "enum": [ + "antarctica\/macquarie" + ], + "title": "antarctica\/macquarie" + }, + { + "type": "string", + "enum": [ + "antarctica\/mawson" + ], + "title": "antarctica\/mawson" + }, + { + "type": "string", + "enum": [ + "antarctica\/mcmurdo" + ], + "title": "antarctica\/mcmurdo" + }, + { + "type": "string", + "enum": [ + "antarctica\/palmer" + ], + "title": "antarctica\/palmer" + }, + { + "type": "string", + "enum": [ + "antarctica\/rothera" + ], + "title": "antarctica\/rothera" + }, + { + "type": "string", + "enum": [ + "antarctica\/syowa" + ], + "title": "antarctica\/syowa" + }, + { + "type": "string", + "enum": [ + "antarctica\/troll" + ], + "title": "antarctica\/troll" + }, + { + "type": "string", + "enum": [ + "antarctica\/vostok" + ], + "title": "antarctica\/vostok" + }, + { + "type": "string", + "enum": [ + "arctic\/longyearbyen" + ], + "title": "arctic\/longyearbyen" + }, + { + "type": "string", + "enum": [ + "asia\/aden" + ], + "title": "asia\/aden" + }, + { + "type": "string", + "enum": [ + "asia\/almaty" + ], + "title": "asia\/almaty" + }, + { + "type": "string", + "enum": [ + "asia\/amman" + ], + "title": "asia\/amman" + }, + { + "type": "string", + "enum": [ + "asia\/anadyr" + ], + "title": "asia\/anadyr" + }, + { + "type": "string", + "enum": [ + "asia\/aqtau" + ], + "title": "asia\/aqtau" + }, + { + "type": "string", + "enum": [ + "asia\/aqtobe" + ], + "title": "asia\/aqtobe" + }, + { + "type": "string", + "enum": [ + "asia\/ashgabat" + ], + "title": "asia\/ashgabat" + }, + { + "type": "string", + "enum": [ + "asia\/atyrau" + ], + "title": "asia\/atyrau" + }, + { + "type": "string", + "enum": [ + "asia\/baghdad" + ], + "title": "asia\/baghdad" + }, + { + "type": "string", + "enum": [ + "asia\/bahrain" + ], + "title": "asia\/bahrain" + }, + { + "type": "string", + "enum": [ + "asia\/baku" + ], + "title": "asia\/baku" + }, + { + "type": "string", + "enum": [ + "asia\/bangkok" + ], + "title": "asia\/bangkok" + }, + { + "type": "string", + "enum": [ + "asia\/barnaul" + ], + "title": "asia\/barnaul" + }, + { + "type": "string", + "enum": [ + "asia\/beirut" + ], + "title": "asia\/beirut" + }, + { + "type": "string", + "enum": [ + "asia\/bishkek" + ], + "title": "asia\/bishkek" + }, + { + "type": "string", + "enum": [ + "asia\/brunei" + ], + "title": "asia\/brunei" + }, + { + "type": "string", + "enum": [ + "asia\/chita" + ], + "title": "asia\/chita" + }, + { + "type": "string", + "enum": [ + "asia\/colombo" + ], + "title": "asia\/colombo" + }, + { + "type": "string", + "enum": [ + "asia\/damascus" + ], + "title": "asia\/damascus" + }, + { + "type": "string", + "enum": [ + "asia\/dhaka" + ], + "title": "asia\/dhaka" + }, + { + "type": "string", + "enum": [ + "asia\/dili" + ], + "title": "asia\/dili" + }, + { + "type": "string", + "enum": [ + "asia\/dubai" + ], + "title": "asia\/dubai" + }, + { + "type": "string", + "enum": [ + "asia\/dushanbe" + ], + "title": "asia\/dushanbe" + }, + { + "type": "string", + "enum": [ + "asia\/famagusta" + ], + "title": "asia\/famagusta" + }, + { + "type": "string", + "enum": [ + "asia\/gaza" + ], + "title": "asia\/gaza" + }, + { + "type": "string", + "enum": [ + "asia\/hebron" + ], + "title": "asia\/hebron" + }, + { + "type": "string", + "enum": [ + "asia\/ho_chi_minh" + ], + "title": "asia\/ho_chi_minh" + }, + { + "type": "string", + "enum": [ + "asia\/hong_kong" + ], + "title": "asia\/hong_kong" + }, + { + "type": "string", + "enum": [ + "asia\/hovd" + ], + "title": "asia\/hovd" + }, + { + "type": "string", + "enum": [ + "asia\/irkutsk" + ], + "title": "asia\/irkutsk" + }, + { + "type": "string", + "enum": [ + "asia\/jakarta" + ], + "title": "asia\/jakarta" + }, + { + "type": "string", + "enum": [ + "asia\/jayapura" + ], + "title": "asia\/jayapura" + }, + { + "type": "string", + "enum": [ + "asia\/jerusalem" + ], + "title": "asia\/jerusalem" + }, + { + "type": "string", + "enum": [ + "asia\/kabul" + ], + "title": "asia\/kabul" + }, + { + "type": "string", + "enum": [ + "asia\/kamchatka" + ], + "title": "asia\/kamchatka" + }, + { + "type": "string", + "enum": [ + "asia\/karachi" + ], + "title": "asia\/karachi" + }, + { + "type": "string", + "enum": [ + "asia\/kathmandu" + ], + "title": "asia\/kathmandu" + }, + { + "type": "string", + "enum": [ + "asia\/khandyga" + ], + "title": "asia\/khandyga" + }, + { + "type": "string", + "enum": [ + "asia\/kolkata" + ], + "title": "asia\/kolkata" + }, + { + "type": "string", + "enum": [ + "asia\/krasnoyarsk" + ], + "title": "asia\/krasnoyarsk" + }, + { + "type": "string", + "enum": [ + "asia\/kuala_lumpur" + ], + "title": "asia\/kuala_lumpur" + }, + { + "type": "string", + "enum": [ + "asia\/kuching" + ], + "title": "asia\/kuching" + }, + { + "type": "string", + "enum": [ + "asia\/kuwait" + ], + "title": "asia\/kuwait" + }, + { + "type": "string", + "enum": [ + "asia\/macau" + ], + "title": "asia\/macau" + }, + { + "type": "string", + "enum": [ + "asia\/magadan" + ], + "title": "asia\/magadan" + }, + { + "type": "string", + "enum": [ + "asia\/makassar" + ], + "title": "asia\/makassar" + }, + { + "type": "string", + "enum": [ + "asia\/manila" + ], + "title": "asia\/manila" + }, + { + "type": "string", + "enum": [ + "asia\/muscat" + ], + "title": "asia\/muscat" + }, + { + "type": "string", + "enum": [ + "asia\/nicosia" + ], + "title": "asia\/nicosia" + }, + { + "type": "string", + "enum": [ + "asia\/novokuznetsk" + ], + "title": "asia\/novokuznetsk" + }, + { + "type": "string", + "enum": [ + "asia\/novosibirsk" + ], + "title": "asia\/novosibirsk" + }, + { + "type": "string", + "enum": [ + "asia\/omsk" + ], + "title": "asia\/omsk" + }, + { + "type": "string", + "enum": [ + "asia\/oral" + ], + "title": "asia\/oral" + }, + { + "type": "string", + "enum": [ + "asia\/phnom_penh" + ], + "title": "asia\/phnom_penh" + }, + { + "type": "string", + "enum": [ + "asia\/pontianak" + ], + "title": "asia\/pontianak" + }, + { + "type": "string", + "enum": [ + "asia\/pyongyang" + ], + "title": "asia\/pyongyang" + }, + { + "type": "string", + "enum": [ + "asia\/qatar" + ], + "title": "asia\/qatar" + }, + { + "type": "string", + "enum": [ + "asia\/qostanay" + ], + "title": "asia\/qostanay" + }, + { + "type": "string", + "enum": [ + "asia\/qyzylorda" + ], + "title": "asia\/qyzylorda" + }, + { + "type": "string", + "enum": [ + "asia\/riyadh" + ], + "title": "asia\/riyadh" + }, + { + "type": "string", + "enum": [ + "asia\/sakhalin" + ], + "title": "asia\/sakhalin" + }, + { + "type": "string", + "enum": [ + "asia\/samarkand" + ], + "title": "asia\/samarkand" + }, + { + "type": "string", + "enum": [ + "asia\/seoul" + ], + "title": "asia\/seoul" + }, + { + "type": "string", + "enum": [ + "asia\/shanghai" + ], + "title": "asia\/shanghai" + }, + { + "type": "string", + "enum": [ + "asia\/singapore" + ], + "title": "asia\/singapore" + }, + { + "type": "string", + "enum": [ + "asia\/srednekolymsk" + ], + "title": "asia\/srednekolymsk" + }, + { + "type": "string", + "enum": [ + "asia\/taipei" + ], + "title": "asia\/taipei" + }, + { + "type": "string", + "enum": [ + "asia\/tashkent" + ], + "title": "asia\/tashkent" + }, + { + "type": "string", + "enum": [ + "asia\/tbilisi" + ], + "title": "asia\/tbilisi" + }, + { + "type": "string", + "enum": [ + "asia\/tehran" + ], + "title": "asia\/tehran" + }, + { + "type": "string", + "enum": [ + "asia\/thimphu" + ], + "title": "asia\/thimphu" + }, + { + "type": "string", + "enum": [ + "asia\/tokyo" + ], + "title": "asia\/tokyo" + }, + { + "type": "string", + "enum": [ + "asia\/tomsk" + ], + "title": "asia\/tomsk" + }, + { + "type": "string", + "enum": [ + "asia\/ulaanbaatar" + ], + "title": "asia\/ulaanbaatar" + }, + { + "type": "string", + "enum": [ + "asia\/urumqi" + ], + "title": "asia\/urumqi" + }, + { + "type": "string", + "enum": [ + "asia\/ust-nera" + ], + "title": "asia\/ust-nera" + }, + { + "type": "string", + "enum": [ + "asia\/vientiane" + ], + "title": "asia\/vientiane" + }, + { + "type": "string", + "enum": [ + "asia\/vladivostok" + ], + "title": "asia\/vladivostok" + }, + { + "type": "string", + "enum": [ + "asia\/yakutsk" + ], + "title": "asia\/yakutsk" + }, + { + "type": "string", + "enum": [ + "asia\/yangon" + ], + "title": "asia\/yangon" + }, + { + "type": "string", + "enum": [ + "asia\/yekaterinburg" + ], + "title": "asia\/yekaterinburg" + }, + { + "type": "string", + "enum": [ + "asia\/yerevan" + ], + "title": "asia\/yerevan" + }, + { + "type": "string", + "enum": [ + "atlantic\/azores" + ], + "title": "atlantic\/azores" + }, + { + "type": "string", + "enum": [ + "atlantic\/bermuda" + ], + "title": "atlantic\/bermuda" + }, + { + "type": "string", + "enum": [ + "atlantic\/canary" + ], + "title": "atlantic\/canary" + }, + { + "type": "string", + "enum": [ + "atlantic\/cape_verde" + ], + "title": "atlantic\/cape_verde" + }, + { + "type": "string", + "enum": [ + "atlantic\/faroe" + ], + "title": "atlantic\/faroe" + }, + { + "type": "string", + "enum": [ + "atlantic\/madeira" + ], + "title": "atlantic\/madeira" + }, + { + "type": "string", + "enum": [ + "atlantic\/reykjavik" + ], + "title": "atlantic\/reykjavik" + }, + { + "type": "string", + "enum": [ + "atlantic\/south_georgia" + ], + "title": "atlantic\/south_georgia" + }, + { + "type": "string", + "enum": [ + "atlantic\/st_helena" + ], + "title": "atlantic\/st_helena" + }, + { + "type": "string", + "enum": [ + "atlantic\/stanley" + ], + "title": "atlantic\/stanley" + }, + { + "type": "string", + "enum": [ + "australia\/adelaide" + ], + "title": "australia\/adelaide" + }, + { + "type": "string", + "enum": [ + "australia\/brisbane" + ], + "title": "australia\/brisbane" + }, + { + "type": "string", + "enum": [ + "australia\/broken_hill" + ], + "title": "australia\/broken_hill" + }, + { + "type": "string", + "enum": [ + "australia\/darwin" + ], + "title": "australia\/darwin" + }, + { + "type": "string", + "enum": [ + "australia\/eucla" + ], + "title": "australia\/eucla" + }, + { + "type": "string", + "enum": [ + "australia\/hobart" + ], + "title": "australia\/hobart" + }, + { + "type": "string", + "enum": [ + "australia\/lindeman" + ], + "title": "australia\/lindeman" + }, + { + "type": "string", + "enum": [ + "australia\/lord_howe" + ], + "title": "australia\/lord_howe" + }, + { + "type": "string", + "enum": [ + "australia\/melbourne" + ], + "title": "australia\/melbourne" + }, + { + "type": "string", + "enum": [ + "australia\/perth" + ], + "title": "australia\/perth" + }, + { + "type": "string", + "enum": [ + "australia\/sydney" + ], + "title": "australia\/sydney" + }, + { + "type": "string", + "enum": [ + "europe\/amsterdam" + ], + "title": "europe\/amsterdam" + }, + { + "type": "string", + "enum": [ + "europe\/andorra" + ], + "title": "europe\/andorra" + }, + { + "type": "string", + "enum": [ + "europe\/astrakhan" + ], + "title": "europe\/astrakhan" + }, + { + "type": "string", + "enum": [ + "europe\/athens" + ], + "title": "europe\/athens" + }, + { + "type": "string", + "enum": [ + "europe\/belgrade" + ], + "title": "europe\/belgrade" + }, + { + "type": "string", + "enum": [ + "europe\/berlin" + ], + "title": "europe\/berlin" + }, + { + "type": "string", + "enum": [ + "europe\/bratislava" + ], + "title": "europe\/bratislava" + }, + { + "type": "string", + "enum": [ + "europe\/brussels" + ], + "title": "europe\/brussels" + }, + { + "type": "string", + "enum": [ + "europe\/bucharest" + ], + "title": "europe\/bucharest" + }, + { + "type": "string", + "enum": [ + "europe\/budapest" + ], + "title": "europe\/budapest" + }, + { + "type": "string", + "enum": [ + "europe\/busingen" + ], + "title": "europe\/busingen" + }, + { + "type": "string", + "enum": [ + "europe\/chisinau" + ], + "title": "europe\/chisinau" + }, + { + "type": "string", + "enum": [ + "europe\/copenhagen" + ], + "title": "europe\/copenhagen" + }, + { + "type": "string", + "enum": [ + "europe\/dublin" + ], + "title": "europe\/dublin" + }, + { + "type": "string", + "enum": [ + "europe\/gibraltar" + ], + "title": "europe\/gibraltar" + }, + { + "type": "string", + "enum": [ + "europe\/guernsey" + ], + "title": "europe\/guernsey" + }, + { + "type": "string", + "enum": [ + "europe\/helsinki" + ], + "title": "europe\/helsinki" + }, + { + "type": "string", + "enum": [ + "europe\/isle_of_man" + ], + "title": "europe\/isle_of_man" + }, + { + "type": "string", + "enum": [ + "europe\/istanbul" + ], + "title": "europe\/istanbul" + }, + { + "type": "string", + "enum": [ + "europe\/jersey" + ], + "title": "europe\/jersey" + }, + { + "type": "string", + "enum": [ + "europe\/kaliningrad" + ], + "title": "europe\/kaliningrad" + }, + { + "type": "string", + "enum": [ + "europe\/kirov" + ], + "title": "europe\/kirov" + }, + { + "type": "string", + "enum": [ + "europe\/kyiv" + ], + "title": "europe\/kyiv" + }, + { + "type": "string", + "enum": [ + "europe\/lisbon" + ], + "title": "europe\/lisbon" + }, + { + "type": "string", + "enum": [ + "europe\/ljubljana" + ], + "title": "europe\/ljubljana" + }, + { + "type": "string", + "enum": [ + "europe\/london" + ], + "title": "europe\/london" + }, + { + "type": "string", + "enum": [ + "europe\/luxembourg" + ], + "title": "europe\/luxembourg" + }, + { + "type": "string", + "enum": [ + "europe\/madrid" + ], + "title": "europe\/madrid" + }, + { + "type": "string", + "enum": [ + "europe\/malta" + ], + "title": "europe\/malta" + }, + { + "type": "string", + "enum": [ + "europe\/mariehamn" + ], + "title": "europe\/mariehamn" + }, + { + "type": "string", + "enum": [ + "europe\/minsk" + ], + "title": "europe\/minsk" + }, + { + "type": "string", + "enum": [ + "europe\/monaco" + ], + "title": "europe\/monaco" + }, + { + "type": "string", + "enum": [ + "europe\/moscow" + ], + "title": "europe\/moscow" + }, + { + "type": "string", + "enum": [ + "europe\/oslo" + ], + "title": "europe\/oslo" + }, + { + "type": "string", + "enum": [ + "europe\/paris" + ], + "title": "europe\/paris" + }, + { + "type": "string", + "enum": [ + "europe\/podgorica" + ], + "title": "europe\/podgorica" + }, + { + "type": "string", + "enum": [ + "europe\/prague" + ], + "title": "europe\/prague" + }, + { + "type": "string", + "enum": [ + "europe\/riga" + ], + "title": "europe\/riga" + }, + { + "type": "string", + "enum": [ + "europe\/rome" + ], + "title": "europe\/rome" + }, + { + "type": "string", + "enum": [ + "europe\/samara" + ], + "title": "europe\/samara" + }, + { + "type": "string", + "enum": [ + "europe\/san_marino" + ], + "title": "europe\/san_marino" + }, + { + "type": "string", + "enum": [ + "europe\/sarajevo" + ], + "title": "europe\/sarajevo" + }, + { + "type": "string", + "enum": [ + "europe\/saratov" + ], + "title": "europe\/saratov" + }, + { + "type": "string", + "enum": [ + "europe\/simferopol" + ], + "title": "europe\/simferopol" + }, + { + "type": "string", + "enum": [ + "europe\/skopje" + ], + "title": "europe\/skopje" + }, + { + "type": "string", + "enum": [ + "europe\/sofia" + ], + "title": "europe\/sofia" + }, + { + "type": "string", + "enum": [ + "europe\/stockholm" + ], + "title": "europe\/stockholm" + }, + { + "type": "string", + "enum": [ + "europe\/tallinn" + ], + "title": "europe\/tallinn" + }, + { + "type": "string", + "enum": [ + "europe\/tirane" + ], + "title": "europe\/tirane" + }, + { + "type": "string", + "enum": [ + "europe\/ulyanovsk" + ], + "title": "europe\/ulyanovsk" + }, + { + "type": "string", + "enum": [ + "europe\/vaduz" + ], + "title": "europe\/vaduz" + }, + { + "type": "string", + "enum": [ + "europe\/vatican" + ], + "title": "europe\/vatican" + }, + { + "type": "string", + "enum": [ + "europe\/vienna" + ], + "title": "europe\/vienna" + }, + { + "type": "string", + "enum": [ + "europe\/vilnius" + ], + "title": "europe\/vilnius" + }, + { + "type": "string", + "enum": [ + "europe\/volgograd" + ], + "title": "europe\/volgograd" + }, + { + "type": "string", + "enum": [ + "europe\/warsaw" + ], + "title": "europe\/warsaw" + }, + { + "type": "string", + "enum": [ + "europe\/zagreb" + ], + "title": "europe\/zagreb" + }, + { + "type": "string", + "enum": [ + "europe\/zurich" + ], + "title": "europe\/zurich" + }, + { + "type": "string", + "enum": [ + "indian\/antananarivo" + ], + "title": "indian\/antananarivo" + }, + { + "type": "string", + "enum": [ + "indian\/chagos" + ], + "title": "indian\/chagos" + }, + { + "type": "string", + "enum": [ + "indian\/christmas" + ], + "title": "indian\/christmas" + }, + { + "type": "string", + "enum": [ + "indian\/cocos" + ], + "title": "indian\/cocos" + }, + { + "type": "string", + "enum": [ + "indian\/comoro" + ], + "title": "indian\/comoro" + }, + { + "type": "string", + "enum": [ + "indian\/kerguelen" + ], + "title": "indian\/kerguelen" + }, + { + "type": "string", + "enum": [ + "indian\/mahe" + ], + "title": "indian\/mahe" + }, + { + "type": "string", + "enum": [ + "indian\/maldives" + ], + "title": "indian\/maldives" + }, + { + "type": "string", + "enum": [ + "indian\/mauritius" + ], + "title": "indian\/mauritius" + }, + { + "type": "string", + "enum": [ + "indian\/mayotte" + ], + "title": "indian\/mayotte" + }, + { + "type": "string", + "enum": [ + "indian\/reunion" + ], + "title": "indian\/reunion" + }, + { + "type": "string", + "enum": [ + "pacific\/apia" + ], + "title": "pacific\/apia" + }, + { + "type": "string", + "enum": [ + "pacific\/auckland" + ], + "title": "pacific\/auckland" + }, + { + "type": "string", + "enum": [ + "pacific\/bougainville" + ], + "title": "pacific\/bougainville" + }, + { + "type": "string", + "enum": [ + "pacific\/chatham" + ], + "title": "pacific\/chatham" + }, + { + "type": "string", + "enum": [ + "pacific\/chuuk" + ], + "title": "pacific\/chuuk" + }, + { + "type": "string", + "enum": [ + "pacific\/easter" + ], + "title": "pacific\/easter" + }, + { + "type": "string", + "enum": [ + "pacific\/efate" + ], + "title": "pacific\/efate" + }, + { + "type": "string", + "enum": [ + "pacific\/fakaofo" + ], + "title": "pacific\/fakaofo" + }, + { + "type": "string", + "enum": [ + "pacific\/fiji" + ], + "title": "pacific\/fiji" + }, + { + "type": "string", + "enum": [ + "pacific\/funafuti" + ], + "title": "pacific\/funafuti" + }, + { + "type": "string", + "enum": [ + "pacific\/galapagos" + ], + "title": "pacific\/galapagos" + }, + { + "type": "string", + "enum": [ + "pacific\/gambier" + ], + "title": "pacific\/gambier" + }, + { + "type": "string", + "enum": [ + "pacific\/guadalcanal" + ], + "title": "pacific\/guadalcanal" + }, + { + "type": "string", + "enum": [ + "pacific\/guam" + ], + "title": "pacific\/guam" + }, + { + "type": "string", + "enum": [ + "pacific\/honolulu" + ], + "title": "pacific\/honolulu" + }, + { + "type": "string", + "enum": [ + "pacific\/kanton" + ], + "title": "pacific\/kanton" + }, + { + "type": "string", + "enum": [ + "pacific\/kiritimati" + ], + "title": "pacific\/kiritimati" + }, + { + "type": "string", + "enum": [ + "pacific\/kosrae" + ], + "title": "pacific\/kosrae" + }, + { "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-initials.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md", - "auth": { - "Project": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "name", - "description": "Full Name. When empty, current user name or email will be used. Max length: 128 chars.", - "required": false, - "schema": { - "type": "string", - "example": "", - "default": "" - }, - "in": "query" - }, - { - "name": "width", - "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 500 - }, - "in": "query" - }, - { - "name": "height", - "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 500 - }, - "in": "query" - }, - { - "name": "background", - "description": "Changes background color. By default a random color will be picked and stay will persistent to the given name.", - "required": false, - "schema": { - "type": "string", - "default": "" - }, - "in": "query" - } - ] - } - }, - "\/avatars\/qr": { - "get": { - "summary": "Get QR code", - "operationId": "avatarsGetQR", - "tags": [ - "avatars" - ], - "description": "Converts a given plain text to a QR code image. You can use the query parameters to change the size and style of the resulting image.\n", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { + "enum": [ + "pacific\/kwajalein" + ], + "title": "pacific\/kwajalein" + }, + { "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-qr.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md", - "auth": { - "Project": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "text", - "description": "Plain text to be converted to QR code image.", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "query" - }, - { - "name": "size", - "description": "QR code size. Pass an integer between 1 to 1000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1, - "default": 400 - }, - "in": "query" - }, - { - "name": "margin", - "description": "Margin from edge. Pass an integer between 0 to 10. Defaults to 1.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 1 - }, - "in": "query" - }, - { - "name": "download", - "description": "Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": false - }, - "in": "query" - } - ] - } - }, - "\/avatars\/screenshots": { - "get": { - "summary": "Get webpage screenshot", - "operationId": "avatarsGetScreenshot", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to capture a screenshot of any website URL. This endpoint uses a headless browser to render the webpage and capture it as an image.\n\nYou can configure the browser viewport size, theme, user agent, geolocation, permissions, and more. Capture either just the viewport or the full page scroll.\n\nWhen width and height are specified, the image is resized accordingly. If both dimensions are 0, the API provides an image at original size. If dimensions are not specified, the default viewport size is 1280x720px.", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { + "enum": [ + "pacific\/majuro" + ], + "title": "pacific\/majuro" + }, + { + "type": "string", + "enum": [ + "pacific\/marquesas" + ], + "title": "pacific\/marquesas" + }, + { + "type": "string", + "enum": [ + "pacific\/midway" + ], + "title": "pacific\/midway" + }, + { + "type": "string", + "enum": [ + "pacific\/nauru" + ], + "title": "pacific\/nauru" + }, + { + "type": "string", + "enum": [ + "pacific\/niue" + ], + "title": "pacific\/niue" + }, + { + "type": "string", + "enum": [ + "pacific\/norfolk" + ], + "title": "pacific\/norfolk" + }, + { + "type": "string", + "enum": [ + "pacific\/noumea" + ], + "title": "pacific\/noumea" + }, + { + "type": "string", + "enum": [ + "pacific\/pago_pago" + ], + "title": "pacific\/pago_pago" + }, + { + "type": "string", + "enum": [ + "pacific\/palau" + ], + "title": "pacific\/palau" + }, + { + "type": "string", + "enum": [ + "pacific\/pitcairn" + ], + "title": "pacific\/pitcairn" + }, + { + "type": "string", + "enum": [ + "pacific\/pohnpei" + ], + "title": "pacific\/pohnpei" + }, + { + "type": "string", + "enum": [ + "pacific\/port_moresby" + ], + "title": "pacific\/port_moresby" + }, + { + "type": "string", + "enum": [ + "pacific\/rarotonga" + ], + "title": "pacific\/rarotonga" + }, + { + "type": "string", + "enum": [ + "pacific\/saipan" + ], + "title": "pacific\/saipan" + }, + { + "type": "string", + "enum": [ + "pacific\/tahiti" + ], + "title": "pacific\/tahiti" + }, + { + "type": "string", + "enum": [ + "pacific\/tarawa" + ], + "title": "pacific\/tarawa" + }, + { + "type": "string", + "enum": [ + "pacific\/tongatapu" + ], + "title": "pacific\/tongatapu" + }, + { + "type": "string", + "enum": [ + "pacific\/wake" + ], + "title": "pacific\/wake" + }, + { "type": "string", - "format": "binary" + "enum": [ + "pacific\/wallis" + ], + "title": "pacific\/wallis" + }, + { + "type": "string", + "enum": [ + "utc" + ], + "title": "utc" } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-screenshot.md", - "rate-limit": 60, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-screenshot.md", - "auth": { - "Project": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "url", - "description": "Website URL which you want to capture.", - "required": true, - "schema": { - "type": "string", - "format": "url", - "example": "https:\/\/example.com" - }, - "in": "query" - }, - { - "name": "headers", - "description": "HTTP headers to send with the browser request. Defaults to empty.", - "required": false, - "schema": { - "type": "object", - "default": [], - "example": { - "Authorization": "Bearer token123", - "X-Custom-Header": "value" - } - }, - "in": "query" - }, - { - "name": "viewportWidth", - "description": "Browser viewport width. Pass an integer between 1 to 1920. Defaults to 1280.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1920, - "default": 1280 - }, - "in": "query" - }, - { - "name": "viewportHeight", - "description": "Browser viewport height. Pass an integer between 1 to 1080. Defaults to 720.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1080, - "default": 720 - }, - "in": "query" - }, - { - "name": "scale", - "description": "Browser scale factor. Pass a number between 0.1 to 3. Defaults to 1.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": 2, - "default": 1 - }, - "in": "query" - }, - { - "name": "theme", - "description": "Browser theme. Pass \"light\" or \"dark\". Defaults to \"light\".", - "required": false, - "schema": { - "type": "string", - "example": "dark", - "enum": [ - "light", - "dark" ], - "x-enum-name": "BrowserTheme", - "x-enum-keys": [ - "light", - "dark" - ], - "default": "light" - }, - "in": "query" - }, - { - "name": "userAgent", - "description": "Custom user agent string. Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "Mozilla\/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit\/605.1.15", - "default": "" - }, - "in": "query" - }, - { - "name": "fullpage", - "description": "Capture full page scroll. Pass 0 for viewport only, or 1 for full page. Defaults to 0.", - "required": false, - "schema": { - "type": "boolean", - "example": true, - "default": false - }, - "in": "query" - }, - { - "name": "locale", - "description": "Browser locale (e.g., \"en-US\", \"fr-FR\"). Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "en-US", "default": "" }, "in": "query" }, - { - "name": "timezone", - "description": "IANA timezone identifier (e.g., \"America\/New_York\", \"Europe\/London\"). Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "America\/New_York", - "enum": [ - "africa\/abidjan", - "africa\/accra", - "africa\/addis_ababa", - "africa\/algiers", - "africa\/asmara", - "africa\/bamako", - "africa\/bangui", - "africa\/banjul", - "africa\/bissau", - "africa\/blantyre", - "africa\/brazzaville", - "africa\/bujumbura", - "africa\/cairo", - "africa\/casablanca", - "africa\/ceuta", - "africa\/conakry", - "africa\/dakar", - "africa\/dar_es_salaam", - "africa\/djibouti", - "africa\/douala", - "africa\/el_aaiun", - "africa\/freetown", - "africa\/gaborone", - "africa\/harare", - "africa\/johannesburg", - "africa\/juba", - "africa\/kampala", - "africa\/khartoum", - "africa\/kigali", - "africa\/kinshasa", - "africa\/lagos", - "africa\/libreville", - "africa\/lome", - "africa\/luanda", - "africa\/lubumbashi", - "africa\/lusaka", - "africa\/malabo", - "africa\/maputo", - "africa\/maseru", - "africa\/mbabane", - "africa\/mogadishu", - "africa\/monrovia", - "africa\/nairobi", - "africa\/ndjamena", - "africa\/niamey", - "africa\/nouakchott", - "africa\/ouagadougou", - "africa\/porto-novo", - "africa\/sao_tome", - "africa\/tripoli", - "africa\/tunis", - "africa\/windhoek", - "america\/adak", - "america\/anchorage", - "america\/anguilla", - "america\/antigua", - "america\/araguaina", - "america\/argentina\/buenos_aires", - "america\/argentina\/catamarca", - "america\/argentina\/cordoba", - "america\/argentina\/jujuy", - "america\/argentina\/la_rioja", - "america\/argentina\/mendoza", - "america\/argentina\/rio_gallegos", - "america\/argentina\/salta", - "america\/argentina\/san_juan", - "america\/argentina\/san_luis", - "america\/argentina\/tucuman", - "america\/argentina\/ushuaia", - "america\/aruba", - "america\/asuncion", - "america\/atikokan", - "america\/bahia", - "america\/bahia_banderas", - "america\/barbados", - "america\/belem", - "america\/belize", - "america\/blanc-sablon", - "america\/boa_vista", - "america\/bogota", - "america\/boise", - "america\/cambridge_bay", - "america\/campo_grande", - "america\/cancun", - "america\/caracas", - "america\/cayenne", - "america\/cayman", - "america\/chicago", - "america\/chihuahua", - "america\/ciudad_juarez", - "america\/costa_rica", - "america\/coyhaique", - "america\/creston", - "america\/cuiaba", - "america\/curacao", - "america\/danmarkshavn", - "america\/dawson", - "america\/dawson_creek", - "america\/denver", - "america\/detroit", - "america\/dominica", - "america\/edmonton", - "america\/eirunepe", - "america\/el_salvador", - "america\/fort_nelson", - "america\/fortaleza", - "america\/glace_bay", - "america\/goose_bay", - "america\/grand_turk", - "america\/grenada", - "america\/guadeloupe", - "america\/guatemala", - "america\/guayaquil", - "america\/guyana", - "america\/halifax", - "america\/havana", - "america\/hermosillo", - "america\/indiana\/indianapolis", - "america\/indiana\/knox", - "america\/indiana\/marengo", - "america\/indiana\/petersburg", - "america\/indiana\/tell_city", - "america\/indiana\/vevay", - "america\/indiana\/vincennes", - "america\/indiana\/winamac", - "america\/inuvik", - "america\/iqaluit", - "america\/jamaica", - "america\/juneau", - "america\/kentucky\/louisville", - "america\/kentucky\/monticello", - "america\/kralendijk", - "america\/la_paz", - "america\/lima", - "america\/los_angeles", - "america\/lower_princes", - "america\/maceio", - "america\/managua", - "america\/manaus", - "america\/marigot", - "america\/martinique", - "america\/matamoros", - "america\/mazatlan", - "america\/menominee", - "america\/merida", - "america\/metlakatla", - "america\/mexico_city", - "america\/miquelon", - "america\/moncton", - "america\/monterrey", - "america\/montevideo", - "america\/montserrat", - "america\/nassau", - "america\/new_york", - "america\/nome", - "america\/noronha", - "america\/north_dakota\/beulah", - "america\/north_dakota\/center", - "america\/north_dakota\/new_salem", - "america\/nuuk", - "america\/ojinaga", - "america\/panama", - "america\/paramaribo", - "america\/phoenix", - "america\/port-au-prince", - "america\/port_of_spain", - "america\/porto_velho", - "america\/puerto_rico", - "america\/punta_arenas", - "america\/rankin_inlet", - "america\/recife", - "america\/regina", - "america\/resolute", - "america\/rio_branco", - "america\/santarem", - "america\/santiago", - "america\/santo_domingo", - "america\/sao_paulo", - "america\/scoresbysund", - "america\/sitka", - "america\/st_barthelemy", - "america\/st_johns", - "america\/st_kitts", - "america\/st_lucia", - "america\/st_thomas", - "america\/st_vincent", - "america\/swift_current", - "america\/tegucigalpa", - "america\/thule", - "america\/tijuana", - "america\/toronto", - "america\/tortola", - "america\/vancouver", - "america\/whitehorse", - "america\/winnipeg", - "america\/yakutat", - "antarctica\/casey", - "antarctica\/davis", - "antarctica\/dumontdurville", - "antarctica\/macquarie", - "antarctica\/mawson", - "antarctica\/mcmurdo", - "antarctica\/palmer", - "antarctica\/rothera", - "antarctica\/syowa", - "antarctica\/troll", - "antarctica\/vostok", - "arctic\/longyearbyen", - "asia\/aden", - "asia\/almaty", - "asia\/amman", - "asia\/anadyr", - "asia\/aqtau", - "asia\/aqtobe", - "asia\/ashgabat", - "asia\/atyrau", - "asia\/baghdad", - "asia\/bahrain", - "asia\/baku", - "asia\/bangkok", - "asia\/barnaul", - "asia\/beirut", - "asia\/bishkek", - "asia\/brunei", - "asia\/chita", - "asia\/colombo", - "asia\/damascus", - "asia\/dhaka", - "asia\/dili", - "asia\/dubai", - "asia\/dushanbe", - "asia\/famagusta", - "asia\/gaza", - "asia\/hebron", - "asia\/ho_chi_minh", - "asia\/hong_kong", - "asia\/hovd", - "asia\/irkutsk", - "asia\/jakarta", - "asia\/jayapura", - "asia\/jerusalem", - "asia\/kabul", - "asia\/kamchatka", - "asia\/karachi", - "asia\/kathmandu", - "asia\/khandyga", - "asia\/kolkata", - "asia\/krasnoyarsk", - "asia\/kuala_lumpur", - "asia\/kuching", - "asia\/kuwait", - "asia\/macau", - "asia\/magadan", - "asia\/makassar", - "asia\/manila", - "asia\/muscat", - "asia\/nicosia", - "asia\/novokuznetsk", - "asia\/novosibirsk", - "asia\/omsk", - "asia\/oral", - "asia\/phnom_penh", - "asia\/pontianak", - "asia\/pyongyang", - "asia\/qatar", - "asia\/qostanay", - "asia\/qyzylorda", - "asia\/riyadh", - "asia\/sakhalin", - "asia\/samarkand", - "asia\/seoul", - "asia\/shanghai", - "asia\/singapore", - "asia\/srednekolymsk", - "asia\/taipei", - "asia\/tashkent", - "asia\/tbilisi", - "asia\/tehran", - "asia\/thimphu", - "asia\/tokyo", - "asia\/tomsk", - "asia\/ulaanbaatar", - "asia\/urumqi", - "asia\/ust-nera", - "asia\/vientiane", - "asia\/vladivostok", - "asia\/yakutsk", - "asia\/yangon", - "asia\/yekaterinburg", - "asia\/yerevan", - "atlantic\/azores", - "atlantic\/bermuda", - "atlantic\/canary", - "atlantic\/cape_verde", - "atlantic\/faroe", - "atlantic\/madeira", - "atlantic\/reykjavik", - "atlantic\/south_georgia", - "atlantic\/st_helena", - "atlantic\/stanley", - "australia\/adelaide", - "australia\/brisbane", - "australia\/broken_hill", - "australia\/darwin", - "australia\/eucla", - "australia\/hobart", - "australia\/lindeman", - "australia\/lord_howe", - "australia\/melbourne", - "australia\/perth", - "australia\/sydney", - "europe\/amsterdam", - "europe\/andorra", - "europe\/astrakhan", - "europe\/athens", - "europe\/belgrade", - "europe\/berlin", - "europe\/bratislava", - "europe\/brussels", - "europe\/bucharest", - "europe\/budapest", - "europe\/busingen", - "europe\/chisinau", - "europe\/copenhagen", - "europe\/dublin", - "europe\/gibraltar", - "europe\/guernsey", - "europe\/helsinki", - "europe\/isle_of_man", - "europe\/istanbul", - "europe\/jersey", - "europe\/kaliningrad", - "europe\/kirov", - "europe\/kyiv", - "europe\/lisbon", - "europe\/ljubljana", - "europe\/london", - "europe\/luxembourg", - "europe\/madrid", - "europe\/malta", - "europe\/mariehamn", - "europe\/minsk", - "europe\/monaco", - "europe\/moscow", - "europe\/oslo", - "europe\/paris", - "europe\/podgorica", - "europe\/prague", - "europe\/riga", - "europe\/rome", - "europe\/samara", - "europe\/san_marino", - "europe\/sarajevo", - "europe\/saratov", - "europe\/simferopol", - "europe\/skopje", - "europe\/sofia", - "europe\/stockholm", - "europe\/tallinn", - "europe\/tirane", - "europe\/ulyanovsk", - "europe\/vaduz", - "europe\/vatican", - "europe\/vienna", - "europe\/vilnius", - "europe\/volgograd", - "europe\/warsaw", - "europe\/zagreb", - "europe\/zurich", - "indian\/antananarivo", - "indian\/chagos", - "indian\/christmas", - "indian\/cocos", - "indian\/comoro", - "indian\/kerguelen", - "indian\/mahe", - "indian\/maldives", - "indian\/mauritius", - "indian\/mayotte", - "indian\/reunion", - "pacific\/apia", - "pacific\/auckland", - "pacific\/bougainville", - "pacific\/chatham", - "pacific\/chuuk", - "pacific\/easter", - "pacific\/efate", - "pacific\/fakaofo", - "pacific\/fiji", - "pacific\/funafuti", - "pacific\/galapagos", - "pacific\/gambier", - "pacific\/guadalcanal", - "pacific\/guam", - "pacific\/honolulu", - "pacific\/kanton", - "pacific\/kiritimati", - "pacific\/kosrae", - "pacific\/kwajalein", - "pacific\/majuro", - "pacific\/marquesas", - "pacific\/midway", - "pacific\/nauru", - "pacific\/niue", - "pacific\/norfolk", - "pacific\/noumea", - "pacific\/pago_pago", - "pacific\/palau", - "pacific\/pitcairn", - "pacific\/pohnpei", - "pacific\/port_moresby", - "pacific\/rarotonga", - "pacific\/saipan", - "pacific\/tahiti", - "pacific\/tarawa", - "pacific\/tongatapu", - "pacific\/wake", - "pacific\/wallis", - "utc" - ], - "x-enum-name": "Timezone", - "x-enum-keys": [ - "africa\/abidjan", - "africa\/accra", - "africa\/addis_ababa", - "africa\/algiers", - "africa\/asmara", - "africa\/bamako", - "africa\/bangui", - "africa\/banjul", - "africa\/bissau", - "africa\/blantyre", - "africa\/brazzaville", - "africa\/bujumbura", - "africa\/cairo", - "africa\/casablanca", - "africa\/ceuta", - "africa\/conakry", - "africa\/dakar", - "africa\/dar_es_salaam", - "africa\/djibouti", - "africa\/douala", - "africa\/el_aaiun", - "africa\/freetown", - "africa\/gaborone", - "africa\/harare", - "africa\/johannesburg", - "africa\/juba", - "africa\/kampala", - "africa\/khartoum", - "africa\/kigali", - "africa\/kinshasa", - "africa\/lagos", - "africa\/libreville", - "africa\/lome", - "africa\/luanda", - "africa\/lubumbashi", - "africa\/lusaka", - "africa\/malabo", - "africa\/maputo", - "africa\/maseru", - "africa\/mbabane", - "africa\/mogadishu", - "africa\/monrovia", - "africa\/nairobi", - "africa\/ndjamena", - "africa\/niamey", - "africa\/nouakchott", - "africa\/ouagadougou", - "africa\/porto-novo", - "africa\/sao_tome", - "africa\/tripoli", - "africa\/tunis", - "africa\/windhoek", - "america\/adak", - "america\/anchorage", - "america\/anguilla", - "america\/antigua", - "america\/araguaina", - "america\/argentina\/buenos_aires", - "america\/argentina\/catamarca", - "america\/argentina\/cordoba", - "america\/argentina\/jujuy", - "america\/argentina\/la_rioja", - "america\/argentina\/mendoza", - "america\/argentina\/rio_gallegos", - "america\/argentina\/salta", - "america\/argentina\/san_juan", - "america\/argentina\/san_luis", - "america\/argentina\/tucuman", - "america\/argentina\/ushuaia", - "america\/aruba", - "america\/asuncion", - "america\/atikokan", - "america\/bahia", - "america\/bahia_banderas", - "america\/barbados", - "america\/belem", - "america\/belize", - "america\/blanc-sablon", - "america\/boa_vista", - "america\/bogota", - "america\/boise", - "america\/cambridge_bay", - "america\/campo_grande", - "america\/cancun", - "america\/caracas", - "america\/cayenne", - "america\/cayman", - "america\/chicago", - "america\/chihuahua", - "america\/ciudad_juarez", - "america\/costa_rica", - "america\/coyhaique", - "america\/creston", - "america\/cuiaba", - "america\/curacao", - "america\/danmarkshavn", - "america\/dawson", - "america\/dawson_creek", - "america\/denver", - "america\/detroit", - "america\/dominica", - "america\/edmonton", - "america\/eirunepe", - "america\/el_salvador", - "america\/fort_nelson", - "america\/fortaleza", - "america\/glace_bay", - "america\/goose_bay", - "america\/grand_turk", - "america\/grenada", - "america\/guadeloupe", - "america\/guatemala", - "america\/guayaquil", - "america\/guyana", - "america\/halifax", - "america\/havana", - "america\/hermosillo", - "america\/indiana\/indianapolis", - "america\/indiana\/knox", - "america\/indiana\/marengo", - "america\/indiana\/petersburg", - "america\/indiana\/tell_city", - "america\/indiana\/vevay", - "america\/indiana\/vincennes", - "america\/indiana\/winamac", - "america\/inuvik", - "america\/iqaluit", - "america\/jamaica", - "america\/juneau", - "america\/kentucky\/louisville", - "america\/kentucky\/monticello", - "america\/kralendijk", - "america\/la_paz", - "america\/lima", - "america\/los_angeles", - "america\/lower_princes", - "america\/maceio", - "america\/managua", - "america\/manaus", - "america\/marigot", - "america\/martinique", - "america\/matamoros", - "america\/mazatlan", - "america\/menominee", - "america\/merida", - "america\/metlakatla", - "america\/mexico_city", - "america\/miquelon", - "america\/moncton", - "america\/monterrey", - "america\/montevideo", - "america\/montserrat", - "america\/nassau", - "america\/new_york", - "america\/nome", - "america\/noronha", - "america\/north_dakota\/beulah", - "america\/north_dakota\/center", - "america\/north_dakota\/new_salem", - "america\/nuuk", - "america\/ojinaga", - "america\/panama", - "america\/paramaribo", - "america\/phoenix", - "america\/port-au-prince", - "america\/port_of_spain", - "america\/porto_velho", - "america\/puerto_rico", - "america\/punta_arenas", - "america\/rankin_inlet", - "america\/recife", - "america\/regina", - "america\/resolute", - "america\/rio_branco", - "america\/santarem", - "america\/santiago", - "america\/santo_domingo", - "america\/sao_paulo", - "america\/scoresbysund", - "america\/sitka", - "america\/st_barthelemy", - "america\/st_johns", - "america\/st_kitts", - "america\/st_lucia", - "america\/st_thomas", - "america\/st_vincent", - "america\/swift_current", - "america\/tegucigalpa", - "america\/thule", - "america\/tijuana", - "america\/toronto", - "america\/tortola", - "america\/vancouver", - "america\/whitehorse", - "america\/winnipeg", - "america\/yakutat", - "antarctica\/casey", - "antarctica\/davis", - "antarctica\/dumontdurville", - "antarctica\/macquarie", - "antarctica\/mawson", - "antarctica\/mcmurdo", - "antarctica\/palmer", - "antarctica\/rothera", - "antarctica\/syowa", - "antarctica\/troll", - "antarctica\/vostok", - "arctic\/longyearbyen", - "asia\/aden", - "asia\/almaty", - "asia\/amman", - "asia\/anadyr", - "asia\/aqtau", - "asia\/aqtobe", - "asia\/ashgabat", - "asia\/atyrau", - "asia\/baghdad", - "asia\/bahrain", - "asia\/baku", - "asia\/bangkok", - "asia\/barnaul", - "asia\/beirut", - "asia\/bishkek", - "asia\/brunei", - "asia\/chita", - "asia\/colombo", - "asia\/damascus", - "asia\/dhaka", - "asia\/dili", - "asia\/dubai", - "asia\/dushanbe", - "asia\/famagusta", - "asia\/gaza", - "asia\/hebron", - "asia\/ho_chi_minh", - "asia\/hong_kong", - "asia\/hovd", - "asia\/irkutsk", - "asia\/jakarta", - "asia\/jayapura", - "asia\/jerusalem", - "asia\/kabul", - "asia\/kamchatka", - "asia\/karachi", - "asia\/kathmandu", - "asia\/khandyga", - "asia\/kolkata", - "asia\/krasnoyarsk", - "asia\/kuala_lumpur", - "asia\/kuching", - "asia\/kuwait", - "asia\/macau", - "asia\/magadan", - "asia\/makassar", - "asia\/manila", - "asia\/muscat", - "asia\/nicosia", - "asia\/novokuznetsk", - "asia\/novosibirsk", - "asia\/omsk", - "asia\/oral", - "asia\/phnom_penh", - "asia\/pontianak", - "asia\/pyongyang", - "asia\/qatar", - "asia\/qostanay", - "asia\/qyzylorda", - "asia\/riyadh", - "asia\/sakhalin", - "asia\/samarkand", - "asia\/seoul", - "asia\/shanghai", - "asia\/singapore", - "asia\/srednekolymsk", - "asia\/taipei", - "asia\/tashkent", - "asia\/tbilisi", - "asia\/tehran", - "asia\/thimphu", - "asia\/tokyo", - "asia\/tomsk", - "asia\/ulaanbaatar", - "asia\/urumqi", - "asia\/ust-nera", - "asia\/vientiane", - "asia\/vladivostok", - "asia\/yakutsk", - "asia\/yangon", - "asia\/yekaterinburg", - "asia\/yerevan", - "atlantic\/azores", - "atlantic\/bermuda", - "atlantic\/canary", - "atlantic\/cape_verde", - "atlantic\/faroe", - "atlantic\/madeira", - "atlantic\/reykjavik", - "atlantic\/south_georgia", - "atlantic\/st_helena", - "atlantic\/stanley", - "australia\/adelaide", - "australia\/brisbane", - "australia\/broken_hill", - "australia\/darwin", - "australia\/eucla", - "australia\/hobart", - "australia\/lindeman", - "australia\/lord_howe", - "australia\/melbourne", - "australia\/perth", - "australia\/sydney", - "europe\/amsterdam", - "europe\/andorra", - "europe\/astrakhan", - "europe\/athens", - "europe\/belgrade", - "europe\/berlin", - "europe\/bratislava", - "europe\/brussels", - "europe\/bucharest", - "europe\/budapest", - "europe\/busingen", - "europe\/chisinau", - "europe\/copenhagen", - "europe\/dublin", - "europe\/gibraltar", - "europe\/guernsey", - "europe\/helsinki", - "europe\/isle_of_man", - "europe\/istanbul", - "europe\/jersey", - "europe\/kaliningrad", - "europe\/kirov", - "europe\/kyiv", - "europe\/lisbon", - "europe\/ljubljana", - "europe\/london", - "europe\/luxembourg", - "europe\/madrid", - "europe\/malta", - "europe\/mariehamn", - "europe\/minsk", - "europe\/monaco", - "europe\/moscow", - "europe\/oslo", - "europe\/paris", - "europe\/podgorica", - "europe\/prague", - "europe\/riga", - "europe\/rome", - "europe\/samara", - "europe\/san_marino", - "europe\/sarajevo", - "europe\/saratov", - "europe\/simferopol", - "europe\/skopje", - "europe\/sofia", - "europe\/stockholm", - "europe\/tallinn", - "europe\/tirane", - "europe\/ulyanovsk", - "europe\/vaduz", - "europe\/vatican", - "europe\/vienna", - "europe\/vilnius", - "europe\/volgograd", - "europe\/warsaw", - "europe\/zagreb", - "europe\/zurich", - "indian\/antananarivo", - "indian\/chagos", - "indian\/christmas", - "indian\/cocos", - "indian\/comoro", - "indian\/kerguelen", - "indian\/mahe", - "indian\/maldives", - "indian\/mauritius", - "indian\/mayotte", - "indian\/reunion", - "pacific\/apia", - "pacific\/auckland", - "pacific\/bougainville", - "pacific\/chatham", - "pacific\/chuuk", - "pacific\/easter", - "pacific\/efate", - "pacific\/fakaofo", - "pacific\/fiji", - "pacific\/funafuti", - "pacific\/galapagos", - "pacific\/gambier", - "pacific\/guadalcanal", - "pacific\/guam", - "pacific\/honolulu", - "pacific\/kanton", - "pacific\/kiritimati", - "pacific\/kosrae", - "pacific\/kwajalein", - "pacific\/majuro", - "pacific\/marquesas", - "pacific\/midway", - "pacific\/nauru", - "pacific\/niue", - "pacific\/norfolk", - "pacific\/noumea", - "pacific\/pago_pago", - "pacific\/palau", - "pacific\/pitcairn", - "pacific\/pohnpei", - "pacific\/port_moresby", - "pacific\/rarotonga", - "pacific\/saipan", - "pacific\/tahiti", - "pacific\/tarawa", - "pacific\/tongatapu", - "pacific\/wake", - "pacific\/wallis", - "utc" - ] - }, - "in": "query" - }, { "name": "latitude", "description": "Geolocation latitude. Pass a number between -90 to 90. Defaults to 0.", @@ -8448,51 +12269,149 @@ "schema": { "type": "array", "items": { + "title": "BrowserPermission", "type": "string", - "enum": [ - "geolocation", - "camera", - "microphone", - "notifications", - "midi", - "push", - "clipboard-read", - "clipboard-write", - "payment-handler", - "usb", - "bluetooth", - "accelerometer", - "gyroscope", - "magnetometer", - "ambient-light-sensor", - "background-sync", - "persistent-storage", - "screen-wake-lock", - "web-share", - "xr-spatial-tracking" - ], - "x-enum-name": "BrowserPermission", - "x-enum-keys": [ - "geolocation", - "camera", - "microphone", - "notifications", - "midi", - "push", - "clipboard-read", - "clipboard-write", - "payment-handler", - "usb", - "bluetooth", - "accelerometer", - "gyroscope", - "magnetometer", - "ambient-light-sensor", - "background-sync", - "persistent-storage", - "screen-wake-lock", - "web-share", - "xr-spatial-tracking" + "oneOf": [ + { + "type": "string", + "enum": [ + "geolocation" + ], + "title": "geolocation" + }, + { + "type": "string", + "enum": [ + "camera" + ], + "title": "camera" + }, + { + "type": "string", + "enum": [ + "microphone" + ], + "title": "microphone" + }, + { + "type": "string", + "enum": [ + "notifications" + ], + "title": "notifications" + }, + { + "type": "string", + "enum": [ + "midi" + ], + "title": "midi" + }, + { + "type": "string", + "enum": [ + "push" + ], + "title": "push" + }, + { + "type": "string", + "enum": [ + "clipboard-read" + ], + "title": "clipboard-read" + }, + { + "type": "string", + "enum": [ + "clipboard-write" + ], + "title": "clipboard-write" + }, + { + "type": "string", + "enum": [ + "payment-handler" + ], + "title": "payment-handler" + }, + { + "type": "string", + "enum": [ + "usb" + ], + "title": "usb" + }, + { + "type": "string", + "enum": [ + "bluetooth" + ], + "title": "bluetooth" + }, + { + "type": "string", + "enum": [ + "accelerometer" + ], + "title": "accelerometer" + }, + { + "type": "string", + "enum": [ + "gyroscope" + ], + "title": "gyroscope" + }, + { + "type": "string", + "enum": [ + "magnetometer" + ], + "title": "magnetometer" + }, + { + "type": "string", + "enum": [ + "ambient-light-sensor" + ], + "title": "ambient-light-sensor" + }, + { + "type": "string", + "enum": [ + "background-sync" + ], + "title": "background-sync" + }, + { + "type": "string", + "enum": [ + "persistent-storage" + ], + "title": "persistent-storage" + }, + { + "type": "string", + "enum": [ + "screen-wake-lock" + ], + "title": "screen-wake-lock" + }, + { + "type": "string", + "enum": [ + "web-share" + ], + "title": "web-share" + }, + { + "type": "string", + "enum": [ + "xr-spatial-tracking" + ], + "title": "xr-spatial-tracking" + } ] }, "example": [ @@ -8558,25 +12477,59 @@ "schema": { "type": "string", "example": "jpeg", - "enum": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" + "title": "ImageFormat", + "oneOf": [ + { + "type": "string", + "enum": [ + "jpg" + ], + "title": "jpg" + }, + { + "type": "string", + "enum": [ + "jpeg" + ], + "title": "jpeg" + }, + { + "type": "string", + "enum": [ + "png" + ], + "title": "png" + }, + { + "type": "string", + "enum": [ + "webp" + ], + "title": "webp" + }, + { + "type": "string", + "enum": [ + "heic" + ], + "title": "heic" + }, + { + "type": "string", + "enum": [ + "avif" + ], + "title": "avif" + }, + { + "type": "string", + "enum": [ + "gif" + ], + "title": "gif" + } ], - "x-enum-name": "ImageFormat", - "x-enum-keys": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" - ] + "default": "" }, "in": "query" } @@ -8711,8 +12664,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -8861,14 +12814,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -9009,8 +12962,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -9274,16 +13227,16 @@ "type": "object", "properties": { "documentId": { - "type": "string", "description": "Document 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Document data as JSON object.", + "type": "object", "default": {}, "example": { "username": "walter.obrien", @@ -9294,8 +13247,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -9305,16 +13258,16 @@ "nullable": true }, "documents": { - "type": "array", "description": "Array of documents data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -9568,8 +13521,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include all required attributes of the document to be created or updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -9580,8 +13533,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -9591,8 +13544,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -9693,8 +13646,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -9705,8 +13658,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -9716,8 +13669,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -9917,20 +13870,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "min": { - "type": "number", "description": "Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -10042,20 +13995,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "max": { - "type": "number", "description": "Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -10186,8 +14139,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -10328,14 +14281,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -10467,8 +14420,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -10746,16 +14699,16 @@ "type": "object", "properties": { "documentId": { - "type": "string", "description": "Document 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Document data as JSON object.", + "type": "object", "default": {}, "example": { "username": "walter.obrien", @@ -10766,8 +14719,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -10776,16 +14729,16 @@ } }, "documents": { - "type": "array", "description": "Array of documents data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } }, @@ -11023,14 +14976,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include all required fields of the document to be created or updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -11039,8 +14992,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -11136,14 +15089,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only fields and value pairs to be updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -11152,8 +15105,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -11344,19 +15297,19 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to decrement the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "min": { - "type": "number", "description": "Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", "format": "float" }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -11463,19 +15416,19 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "max": { - "type": "number", "description": "Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.", + "type": "number", "format": "float" }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -11642,57 +15595,90 @@ "type": "object", "properties": { "body": { - "type": "string", "description": "HTTP body of execution. Default value is empty string.", + "type": "string", "default": "", "example": "" }, "async": { - "type": "boolean", "description": "Execute code in the background. Default value is false.", + "type": "boolean", "default": false, "example": false }, "path": { - "type": "string", "description": "HTTP path of execution. Path can include query params. Default value is \/", + "type": "string", "default": "\/", "example": "" }, "method": { - "type": "string", "description": "HTTP method of execution. Default value is POST.", + "type": "string", "default": "POST", "example": "GET", - "enum": [ - "GET", - "POST", - "PUT", - "PATCH", - "DELETE", - "OPTIONS", - "HEAD" - ], - "x-enum-name": "ExecutionMethod", - "x-enum-keys": [ - "GET", - "POST", - "PUT", - "PATCH", - "DELETE", - "OPTIONS", - "HEAD" + "title": "ExecutionMethod", + "oneOf": [ + { + "type": "string", + "enum": [ + "GET" + ], + "title": "GET" + }, + { + "type": "string", + "enum": [ + "POST" + ], + "title": "POST" + }, + { + "type": "string", + "enum": [ + "PUT" + ], + "title": "PUT" + }, + { + "type": "string", + "enum": [ + "PATCH" + ], + "title": "PATCH" + }, + { + "type": "string", + "enum": [ + "DELETE" + ], + "title": "DELETE" + }, + { + "type": "string", + "enum": [ + "OPTIONS" + ], + "title": "OPTIONS" + }, + { + "type": "string", + "enum": [ + "HEAD" + ], + "title": "HEAD" + } ] }, "headers": { - "type": "object", "description": "HTTP headers of execution. Defaults to empty.", + "type": "object", "default": [], "example": {} }, "scheduledAt": { - "type": "string", "description": "Scheduled execution time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future with precision in minutes.", + "type": "string", "example": "", "nullable": true } @@ -11834,8 +15820,8 @@ "type": "object", "properties": { "query": { - "type": "object", "description": "The query or queries to execute.", + "type": "object", "default": {}, "example": {} } @@ -11905,8 +15891,8 @@ "type": "object", "properties": { "query": { - "type": "object", "description": "The query or queries to execute.", + "type": "object", "default": {}, "example": {} } @@ -12396,16 +16382,16 @@ "type": "object", "properties": { "subscriberId": { - "type": "string", "description": "Subscriber ID. Choose a custom Subscriber ID or a new Subscriber ID.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "targetId": { - "type": "string", "description": "Target ID. The target ID to link to the specified Topic ID.", + "type": "string", "example": "" } }, @@ -12552,19 +16538,19 @@ "type": "object", "properties": { "grant_id": { - "type": "string", "description": "Grant ID made during authorization, provided to consent screen in URL search params.", + "type": "string", "example": "" }, "authorization_details": { - "type": "string", "description": "Enriched `authorization_details` the user consented to, replacing what the client requested. Each entry must use a `type` the project accepts. Optional; omit to keep the originally requested details.", + "type": "string", "default": "", "example": "" }, "scope": { - "type": "string", "description": "Space-separated scopes the user consented to. Must be a subset of the scopes originally requested; identity scopes such as `openid` are always retained. Optional; omit to keep the originally requested scopes.", + "type": "string", "default": "", "example": "" } @@ -12859,87 +16845,87 @@ "type": "object", "properties": { "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "" }, "redirect_uri": { - "type": "string", "description": "Redirect URI where visitor will be redirected after authorization, whether successful or not.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "response_type": { - "type": "string", "description": "OAuth2 \/ OIDC response type. One of `code` (Authorization Code Flow), `id_token` (Implicit Flow, OIDC login only), or `code id_token` (Hybrid Flow).", + "type": "string", "default": "", "example": "" }, "scope": { - "type": "string", "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`, `phone`.", + "type": "string", "default": "", "example": "" }, "state": { - "type": "string", "description": "OAuth2 state. You receive this back in the redirect URI.", + "type": "string", "default": "", "example": "" }, "nonce": { - "type": "string", "description": "OIDC nonce parameter to prevent replay attacks. Required when response_type includes `id_token`.", + "type": "string", "default": "", "example": "" }, "code_challenge": { - "type": "string", "description": "PKCE code challenge. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "" }, "code_challenge_method": { - "type": "string", "description": "PKCE code challenge method. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "s256" }, "prompt": { - "type": "string", "description": "OIDC prompt parameter for customization of consent screen. Space-separated list of: none, login, consent, select_account.", + "type": "string", "default": "", "example": "" }, "max_age": { - "type": "integer", "description": "OIDC max_age paraleter for customization of consent screen. Maximum allowable elapsed time in seconds since the user last authenticated. If exceeded, re-authentication is required.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "authorization_details": { - "type": "string", "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", "default": "", "example": "" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "" }, "request_uri": { - "type": "string", "description": "OAuth2 authorization request handle returned by the pushed authorization request endpoint.", + "type": "string", "default": "", "example": "" } @@ -13017,31 +17003,31 @@ "type": "object", "properties": { "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "" }, "scope": { - "type": "string", "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`.", + "type": "string", "default": "", "example": "" }, "authorization_details": { - "type": "string", "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", "default": "", "example": "" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "" } @@ -13119,8 +17105,8 @@ "type": "object", "properties": { "user_code": { - "type": "string", "description": "User code displayed on the device.", + "type": "string", "example": "" } }, @@ -13387,39 +17373,39 @@ "type": "object", "properties": { "id_token_hint": { - "type": "string", "description": "ID Token previously issued to the app, used as proof of the logout request. Required to end the session; signature and issuer are validated while expiry is ignored.", + "type": "string", "default": "", "example": "" }, "logout_hint": { - "type": "string", "description": "Hint about the user that is logging out. Accepted for OIDC compatibility.", + "type": "string", "default": "", "example": "" }, "client_id": { - "type": "string", "description": "OAuth2 client ID. When both `client_id` and `id_token_hint` are provided, they must identify the same app.", + "type": "string", "default": "", "example": "" }, "post_logout_redirect_uri": { - "type": "string", "description": "URI to redirect the user to after logout. Must exactly match a URI registered in the app's `postLogoutRedirectUris`.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "state": { - "type": "string", "description": "Opaque value passed back unchanged in the `state` query param of the post-logout redirect.", + "type": "string", "default": "", "example": "" }, "ui_locales": { - "type": "string", "description": "Preferred languages for any logout UI, as space-separated BCP47 tags. Accepted for OIDC compatibility.", + "type": "string", "default": "", "example": "" } @@ -13594,78 +17580,78 @@ "type": "object", "properties": { "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "example": "" }, "redirect_uri": { - "type": "string", "description": "Redirect URI where visitor will be redirected after authorization, whether successful or not.", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "response_type": { - "type": "string", "description": "OAuth2 \/ OIDC response type.", + "type": "string", "example": "code" }, "scope": { - "type": "string", "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`, `phone`.", + "type": "string", "default": "", "example": "" }, "state": { - "type": "string", "description": "OAuth2 state. You receive this back in the redirect URI.", + "type": "string", "default": "", "example": "" }, "nonce": { - "type": "string", "description": "OIDC nonce parameter to prevent replay attacks. Required when response_type includes `id_token`.", + "type": "string", "default": "", "example": "" }, "code_challenge": { - "type": "string", "description": "PKCE code challenge. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "" }, "code_challenge_method": { - "type": "string", "description": "PKCE code challenge method. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "s256" }, "prompt": { - "type": "string", "description": "OIDC prompt parameter for customization of consent screen. Space-separated list of: none, login, consent, select_account.", + "type": "string", "default": "", "example": "" }, "max_age": { - "type": "integer", "description": "OIDC max_age parameter for customization of consent screen.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "authorization_details": { - "type": "string", "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", "default": "", "example": "" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "" } @@ -13845,8 +17831,8 @@ "type": "object", "properties": { "grant_id": { - "type": "string", "description": "Grant ID made during authorization, provided to consent screen in URL search params.", + "type": "string", "example": "" } }, @@ -13927,25 +17913,25 @@ "type": "object", "properties": { "token": { - "type": "string", "description": "The access or refresh token to revoke.", + "type": "string", "example": "" }, "token_type_hint": { - "type": "string", "description": "Type of token to revoke (access_token or refresh_token).", + "type": "string", "default": "", "example": "access_token" }, "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "" }, "client_secret": { - "type": "string", "description": "OAuth2 client secret. Required for confidential apps; omitted for public apps.", + "type": "string", "default": "", "example": "" } @@ -14026,61 +18012,61 @@ "type": "object", "properties": { "grant_type": { - "type": "string", "description": "OAuth2 grant type. Can be one of: `authorization_code`, `refresh_token`, `urn:ietf:params:oauth:grant-type:device_code`.", + "type": "string", "example": "" }, "code": { - "type": "string", "description": "Authorization code to be exchanged for access and refresh tokens. Required for `authorization_code` grant type.", + "type": "string", "default": "", "example": "" }, "refresh_token": { - "type": "string", "description": "Refresh token to be exchanged for a new access and refresh tokens. Required for `refresh_token` grant type.", + "type": "string", "default": "", "example": "" }, "device_code": { - "type": "string", "description": "Device code obtained from the device authorization endpoint. Required for `urn:ietf:params:oauth:grant-type:device_code` grant type.", + "type": "string", "default": "", "example": "" }, "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "" }, "client_secret": { - "type": "string", "description": "OAuth2 client secret. Required for confidential apps.", + "type": "string", "default": "", "example": "" }, "code_verifier": { - "type": "string", "description": "PKCE code verifier. Required for public apps.", + "type": "string", "default": "", "example": "" }, "redirect_uri": { - "type": "string", "description": "Redirect URI. Required for `authorization_code` grant type.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "" } @@ -14223,13 +18209,13 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application unique ID.", + "type": "string", "example": "" }, "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. The Appwrite Console stores authorized project IDs here.", + "type": "string", "default": "", "example": "" } @@ -14370,8 +18356,8 @@ "type": "object", "properties": { "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. Omit to keep the current value.", + "type": "string", "example": "", "nullable": true } @@ -14734,18 +18720,18 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "status": { - "type": "string", "description": "Presence status.", + "type": "string", "example": "" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -14754,14 +18740,14 @@ } }, "expiresAt": { - "type": "string", "description": "Presence expiry datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime" }, "metadata": { - "type": "object", "description": "Presence metadata object.", + "type": "object", "default": [], "example": {} } @@ -14869,30 +18855,30 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "status": { - "type": "string", "description": "Presence status.", + "type": "string", "example": "" }, "expiresAt": { - "type": "string", "description": "Presence expiry datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime" }, "metadata": { - "type": "object", "description": "Presence metadata object.", + "type": "object", "default": {}, "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -14901,8 +18887,8 @@ } }, "purge": { - "type": "boolean", "description": "When true, purge cached responses used by list presences endpoint.", + "type": "boolean", "default": false, "example": false } @@ -15131,8 +19117,8 @@ "type": "object", "properties": { "fileId": { - "type": "string", "description": "File 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.", + "type": "string", "example": "", "x-upload-id": true, "x-appwrite": { @@ -15140,13 +19126,13 @@ } }, "file": { - "type": "string", "description": "Binary file. Appwrite SDKs provide helpers to handle file input. [Learn about file input](https:\/\/appwrite.io\/docs\/products\/storage\/upload-download#input-file).", + "type": "string", "format": "binary" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -15156,8 +19142,8 @@ "nullable": true }, "folder": { - "type": "string", "description": "Virtual folder to place the file in, for example \"photos\/2026\". Nest folders with `\/`. Defaults to the bucket root.", + "type": "string", "default": "" } }, @@ -15320,13 +19306,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "File name.", + "type": "string", "example": "" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -15597,28 +19583,71 @@ "schema": { "type": "string", "example": "center", - "enum": [ - "center", - "top-left", - "top", - "top-right", - "left", - "right", - "bottom-left", - "bottom", - "bottom-right" - ], - "x-enum-name": "ImageGravity", - "x-enum-keys": [ - "center", - "top-left", - "top", - "top-right", - "left", - "right", - "bottom-left", - "bottom", - "bottom-right" + "title": "ImageGravity", + "oneOf": [ + { + "type": "string", + "enum": [ + "center" + ], + "title": "center" + }, + { + "type": "string", + "enum": [ + "top-left" + ], + "title": "top-left" + }, + { + "type": "string", + "enum": [ + "top" + ], + "title": "top" + }, + { + "type": "string", + "enum": [ + "top-right" + ], + "title": "top-right" + }, + { + "type": "string", + "enum": [ + "left" + ], + "title": "left" + }, + { + "type": "string", + "enum": [ + "right" + ], + "title": "right" + }, + { + "type": "string", + "enum": [ + "bottom-left" + ], + "title": "bottom-left" + }, + { + "type": "string", + "enum": [ + "bottom" + ], + "title": "bottom" + }, + { + "type": "string", + "enum": [ + "bottom-right" + ], + "title": "bottom-right" + } ], "default": "center" }, @@ -15711,25 +19740,59 @@ "schema": { "type": "string", "example": "jpg", - "enum": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" + "title": "ImageFormat", + "oneOf": [ + { + "type": "string", + "enum": [ + "jpg" + ], + "title": "jpg" + }, + { + "type": "string", + "enum": [ + "jpeg" + ], + "title": "jpeg" + }, + { + "type": "string", + "enum": [ + "png" + ], + "title": "png" + }, + { + "type": "string", + "enum": [ + "webp" + ], + "title": "webp" + }, + { + "type": "string", + "enum": [ + "heic" + ], + "title": "heic" + }, + { + "type": "string", + "enum": [ + "avif" + ], + "title": "avif" + }, + { + "type": "string", + "enum": [ + "gif" + ], + "title": "gif" + } ], - "x-enum-name": "ImageFormat", - "x-enum-keys": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" - ] + "default": "" }, "in": "query" }, @@ -15960,8 +20023,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -16108,14 +20171,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -16254,8 +20317,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -16513,16 +20576,16 @@ "type": "object", "properties": { "rowId": { - "type": "string", "description": "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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Row data as JSON object.", + "type": "object", "default": {}, "example": { "username": "walter.obrien", @@ -16533,8 +20596,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -16544,16 +20607,16 @@ "nullable": true }, "rows": { - "type": "array", "description": "Array of rows data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -16798,8 +20861,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Row data as JSON object. Include all required columns of the row to be created or updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -16810,8 +20873,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -16821,8 +20884,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -16922,8 +20985,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Row data as JSON object. Include only columns and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -16934,8 +20997,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -16945,8 +21008,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -17144,20 +21207,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the column by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "min": { - "type": "number", "description": "Minimum value for the column. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -17268,20 +21331,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the column by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "max": { - "type": "number", "description": "Maximum value for the column. If the current value is greater than this value, an error will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -17434,21 +21497,21 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "Team 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Team name. Max length: 128 chars.", + "type": "string", "example": "" }, "roles": { - "type": "array", "description": "Array of strings. Use this param to set the roles in the team for the user who created it. The default role is **owner**. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 32 characters long.", + "type": "array", "default": [ "owner" ], @@ -17596,8 +21659,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "New team name. Max length: 128 chars.", + "type": "string", "example": "" } }, @@ -17815,13 +21878,13 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application unique ID.", + "type": "string", "example": "" }, "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. The Appwrite Console stores authorized project IDs here.", + "type": "string", "default": "", "example": "" } @@ -17982,8 +22045,8 @@ "type": "object", "properties": { "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. Omit to keep the current value.", + "type": "string", "example": "", "nullable": true } @@ -18224,42 +22287,42 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "Email of the new team member.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "userId": { - "type": "string", "description": "ID of the user to be added to a team.", + "type": "string", "default": "", "example": "" }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "roles": { - "type": "array", "description": "Array of strings. Use this param to set the user roles in the team. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the invitation email. This parameter is not required when an API key is supplied. 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.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "name": { - "type": "string", "description": "Name of the new team member. Max length: 128 chars.", + "type": "string", "default": "", "example": "" } @@ -18422,8 +22485,8 @@ "type": "object", "properties": { "roles": { - "type": "array", "description": "An array of strings. Use this param to set the user's roles in the team. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } @@ -18580,13 +22643,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "secret": { - "type": "string", "description": "Secret key.", + "type": "string", "example": "" } }, @@ -18729,8 +22792,8 @@ "type": "object", "properties": { "prefs": { - "type": "object", "description": "Prefs key-value JSON object.", + "type": "object", "default": {}, "example": {} } @@ -18864,8 +22927,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -19006,14 +23069,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -19146,8 +23209,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -19243,7 +23306,7 @@ }, { "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 524288 characters long.", "required": false, "schema": { "type": "array", @@ -19398,16 +23461,16 @@ "type": "object", "properties": { "documentId": { - "type": "string", "description": "Document 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Document data as JSON object.", + "type": "object", "default": {}, "example": { "embeddings": [ @@ -19422,8 +23485,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -19432,16 +23495,16 @@ } }, "documents": { - "type": "array", "description": "Array of documents data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } }, @@ -19533,27 +23596,27 @@ "type": "object", "properties": { "queries": { + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 524288 characters long.", "type": "array", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID to read uncommitted changes within the transaction.", + "type": "string", "example": "" }, "total": { - "type": "boolean", "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "type": "boolean", "default": true, "example": false }, "ttl": { - "type": "integer", "description": "TTL (seconds) for cached responses when caching is enabled for select queries. Must be between 0 and 86400 (24 hours).", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -19792,14 +23855,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include all required fields of the document to be created or updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -19808,8 +23871,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -19905,14 +23968,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only fields and value pairs to be updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -19921,8 +23984,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -22335,12 +26398,24 @@ "example": "5e5ea6g16897e" }, "resourceType": { - "type": "string", "description": "Execution resource type.", "example": "functions", - "enum": [ - "functions", - "sites" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + } ] }, "deploymentId": { @@ -22349,25 +26424,73 @@ "example": "5e5ea5c16897e" }, "trigger": { - "type": "string", "description": "The trigger that caused the resource to execute. Possible values can be: `http`, `schedule`, or `event`.", "example": "http", - "enum": [ - "http", - "schedule", - "event" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "http" + ], + "title": "http" + }, + { + "type": "string", + "enum": [ + "schedule" + ], + "title": "schedule" + }, + { + "type": "string", + "enum": [ + "event" + ], + "title": "event" + } ] }, "status": { - "type": "string", "description": "The status of the resource execution. Possible values can be: `waiting`, `processing`, `completed`, `failed`, or `scheduled`.", "example": "processing", - "enum": [ - "waiting", - "processing", - "completed", - "failed", - "scheduled" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "waiting" + ], + "title": "waiting" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "completed" + ], + "title": "completed" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + }, + { + "type": "string", + "enum": [ + "scheduled" + ], + "title": "scheduled" + } ] }, "requestMethod": { diff --git a/specs/latest/open-api3-latest-console.json b/specs/latest/open-api3-latest-console.json index 29cab3b31..f0bd6de73 100644 --- a/specs/latest/open-api3-latest-console.json +++ b/specs/latest/open-api3-latest-console.json @@ -137,28 +137,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "New user password. Must be between 8 and 256 chars.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "" } @@ -324,35 +324,35 @@ "type": "object", "properties": { "country": { - "type": "string", "description": "Country", + "type": "string", "example": "" }, "city": { - "type": "string", "description": "City", + "type": "string", "example": "" }, "streetAddress": { - "type": "string", "description": "Street address", + "type": "string", "example": "" }, "addressLine2": { - "type": "string", "description": "Address line 2", + "type": "string", "default": "", "example": "" }, "state": { - "type": "string", "description": "State or province", + "type": "string", "default": "", "example": "" }, "postalCode": { - "type": "string", "description": "Postal code", + "type": "string", "default": "", "example": "" } @@ -489,35 +489,35 @@ "type": "object", "properties": { "country": { - "type": "string", "description": "Country", + "type": "string", "example": "" }, "city": { - "type": "string", "description": "City", + "type": "string", "example": "" }, "streetAddress": { - "type": "string", "description": "Street address", + "type": "string", "example": "" }, "addressLine2": { - "type": "string", "description": "Address line 2", + "type": "string", "default": "", "example": "" }, "state": { - "type": "string", "description": "State or province", + "type": "string", "default": "", "example": "" }, "postalCode": { - "type": "string", "description": "Postal code", + "type": "string", "default": "", "example": "" } @@ -1119,14 +1119,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -1390,8 +1390,8 @@ "type": "object", "properties": { "duration": { - "type": "integer", "description": "Time in seconds before JWT expires. Default duration is 900 seconds, and maximum is 3600 seconds.", + "type": "integer", "default": 900, "example": 0, "format": "int32" @@ -1511,31 +1511,44 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "AccountKeyScopes", "type": "string", - "enum": [ - "account", - "teams.read", - "teams.write" - ], - "x-enum-name": "AccountKeyScopes", - "x-enum-keys": [ - "account", - "teams.read", - "teams.write" + "oneOf": [ + { + "type": "string", + "enum": [ + "account" + ], + "title": "account" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -1670,31 +1683,44 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "AccountKeyScopes", "type": "string", - "enum": [ - "account", - "teams.read", - "teams.write" - ], - "x-enum-name": "AccountKeyScopes", - "x-enum-keys": [ - "account", - "teams.read", - "teams.write" + "oneOf": [ + { + "type": "string", + "enum": [ + "account" + ], + "title": "account" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -1895,8 +1921,8 @@ "type": "object", "properties": { "mfa": { - "type": "boolean", "description": "Enable or disable MFA.", + "type": "boolean", "example": false } }, @@ -2022,12 +2048,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -2150,12 +2179,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -2168,8 +2200,8 @@ "type": "object", "properties": { "otp": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -2284,12 +2316,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -2409,23 +2444,46 @@ "type": "object", "properties": { "factor": { - "type": "string", "description": "Factor used for verification. Must be one of following: `email`, `phone`, `totp`, `recoveryCode`, `custom`.", + "type": "string", "example": "email", - "enum": [ - "email", - "phone", - "totp", - "recoverycode", - "custom" - ], - "x-enum-name": "AuthenticationFactor", - "x-enum-keys": [ - "email", - "phone", - "totp", - "recoverycode", - "custom" + "title": "AuthenticationFactor", + "oneOf": [ + { + "type": "string", + "enum": [ + "email" + ], + "title": "email" + }, + { + "type": "string", + "enum": [ + "phone" + ], + "title": "phone" + }, + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + }, + { + "type": "string", + "enum": [ + "recoverycode" + ], + "title": "recoverycode" + }, + { + "type": "string", + "enum": [ + "custom" + ], + "title": "custom" + } ] } }, @@ -2552,13 +2610,13 @@ "type": "object", "properties": { "challengeId": { - "type": "string", "description": "ID of the challenge.", + "type": "string", "example": "" }, "otp": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -3020,8 +3078,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "example": "" } }, @@ -3090,14 +3148,14 @@ "type": "object", "properties": { "password": { - "type": "string", "description": "New user password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" }, "oldPassword": { - "type": "string", "description": "Current user password. Max length: 256 chars.", + "type": "string", "default": "", "example": "password", "format": "password" @@ -3340,20 +3398,20 @@ "type": "object", "properties": { "expiryMonth": { - "type": "integer", "description": "Payment expiry month", + "type": "integer", "example": 1, "format": "int32" }, "expiryYear": { - "type": "integer", "description": "Expiry year", + "type": "integer", "example": 2026, "format": "int32" }, "state": { - "type": "string", "description": "State of the payment method country", + "type": "string", "example": "" } }, @@ -3484,18 +3542,18 @@ "type": "object", "properties": { "providerMethodId": { - "type": "string", "description": "Payment method ID from the payment provider", + "type": "string", "example": "" }, "name": { - "type": "string", "description": "Name in the payment method", + "type": "string", "example": "" }, "state": { - "type": "string", "description": "State of the payment method country", + "type": "string", "example": "", "nullable": true } @@ -3625,14 +3683,14 @@ "type": "object", "properties": { "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "example": "+12065550100", "format": "phone" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -3752,8 +3810,8 @@ "type": "object", "properties": { "prefs": { - "type": "object", "description": "Prefs key-value JSON object.", + "type": "object", "default": {}, "example": { "language": "en", @@ -3830,14 +3888,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the recovery 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.", + "type": "string", "example": "https:\/\/example.com", "format": "url" } @@ -3906,18 +3964,18 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "secret": { - "type": "string", "description": "Valid reset token.", + "type": "string", "example": "" }, "password": { - "type": "string", "description": "New user password. Must be between 8 and 256 chars.", + "type": "string", "example": "password", "format": "password" } @@ -4133,14 +4191,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -4215,16 +4273,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -4291,103 +4349,328 @@ "parameters": [ { "name": "provider", - "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", + "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, huggingface, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", "required": true, "schema": { "type": "string", "example": "amazon", - "enum": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" - ], - "x-enum-name": "OAuthProvider", - "x-enum-keys": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" + "title": "OAuthProvider", + "oneOf": [ + { + "type": "string", + "enum": [ + "amazon" + ], + "title": "amazon" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "auth0" + ], + "title": "auth0" + }, + { + "type": "string", + "enum": [ + "authentik" + ], + "title": "authentik" + }, + { + "type": "string", + "enum": [ + "autodesk" + ], + "title": "autodesk" + }, + { + "type": "string", + "enum": [ + "bitbucket" + ], + "title": "bitbucket" + }, + { + "type": "string", + "enum": [ + "bitly" + ], + "title": "bitly" + }, + { + "type": "string", + "enum": [ + "box" + ], + "title": "box" + }, + { + "type": "string", + "enum": [ + "dailymotion" + ], + "title": "dailymotion" + }, + { + "type": "string", + "enum": [ + "discord" + ], + "title": "discord" + }, + { + "type": "string", + "enum": [ + "disqus" + ], + "title": "disqus" + }, + { + "type": "string", + "enum": [ + "dropbox" + ], + "title": "dropbox" + }, + { + "type": "string", + "enum": [ + "etsy" + ], + "title": "etsy" + }, + { + "type": "string", + "enum": [ + "facebook" + ], + "title": "facebook" + }, + { + "type": "string", + "enum": [ + "figma" + ], + "title": "figma" + }, + { + "type": "string", + "enum": [ + "fusionauth" + ], + "title": "fusionauth" + }, + { + "type": "string", + "enum": [ + "github" + ], + "title": "github" + }, + { + "type": "string", + "enum": [ + "gitlab" + ], + "title": "gitlab" + }, + { + "type": "string", + "enum": [ + "google" + ], + "title": "google" + }, + { + "type": "string", + "enum": [ + "huggingface" + ], + "title": "huggingface" + }, + { + "type": "string", + "enum": [ + "keycloak" + ], + "title": "keycloak" + }, + { + "type": "string", + "enum": [ + "kick" + ], + "title": "kick" + }, + { + "type": "string", + "enum": [ + "linkedin" + ], + "title": "linkedin" + }, + { + "type": "string", + "enum": [ + "microsoft" + ], + "title": "microsoft" + }, + { + "type": "string", + "enum": [ + "notion" + ], + "title": "notion" + }, + { + "type": "string", + "enum": [ + "oidc" + ], + "title": "oidc" + }, + { + "type": "string", + "enum": [ + "okta" + ], + "title": "okta" + }, + { + "type": "string", + "enum": [ + "paypal" + ], + "title": "paypal" + }, + { + "type": "string", + "enum": [ + "paypalSandbox" + ], + "title": "paypalSandbox" + }, + { + "type": "string", + "enum": [ + "podio" + ], + "title": "podio" + }, + { + "type": "string", + "enum": [ + "salesforce" + ], + "title": "salesforce" + }, + { + "type": "string", + "enum": [ + "slack" + ], + "title": "slack" + }, + { + "type": "string", + "enum": [ + "spotify" + ], + "title": "spotify" + }, + { + "type": "string", + "enum": [ + "stripe" + ], + "title": "stripe" + }, + { + "type": "string", + "enum": [ + "tradeshift" + ], + "title": "tradeshift" + }, + { + "type": "string", + "enum": [ + "tradeshiftBox" + ], + "title": "tradeshiftBox" + }, + { + "type": "string", + "enum": [ + "twitch" + ], + "title": "twitch" + }, + { + "type": "string", + "enum": [ + "wordpress" + ], + "title": "wordpress" + }, + { + "type": "string", + "enum": [ + "x" + ], + "title": "x" + }, + { + "type": "string", + "enum": [ + "yahoo" + ], + "title": "yahoo" + }, + { + "type": "string", + "enum": [ + "yammer" + ], + "title": "yammer" + }, + { + "type": "string", + "enum": [ + "yandex" + ], + "title": "yandex" + }, + { + "type": "string", + "enum": [ + "zoho" + ], + "title": "zoho" + }, + { + "type": "string", + "enum": [ + "zoom" + ], + "title": "zoom" + } ] }, "in": "path" @@ -4492,16 +4775,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -4571,16 +4854,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Secret of a token generated by login methods. For example, the `createMagicURLToken` or `createPhoneToken` methods.", + "type": "string", "example": "" } }, @@ -4880,21 +5163,21 @@ "type": "object", "properties": { "targetId": { - "type": "string", "description": "Target 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "identifier": { - "type": "string", "description": "The target identifier (token, email, phone etc.)", + "type": "string", "example": "" }, "providerId": { - "type": "string", "description": "Provider ID. Message will be sent to this target from the specified provider ID. If no provider ID is set the first setup provider will be used.", + "type": "string", "default": "", "example": "" } @@ -4975,8 +5258,8 @@ "type": "object", "properties": { "identifier": { - "type": "string", "description": "The target identifier (token, email, phone etc.)", + "type": "string", "example": "" } }, @@ -5100,22 +5383,22 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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. If the email address has never been used, a new account is created using the provided userId. Otherwise, if the email address is already attached to an account, the user ID is ignored.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "phrase": { - "type": "boolean", "description": "Toggle for security phrase. If enabled, email will be send with a randomly generated phrase and the phrase will also be included in the response. Confirming phrases match increases the security of your authentication flow.", + "type": "boolean", "default": false, "example": false } @@ -5189,29 +5472,29 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "Unique 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. If the email address has never been used, a new account is created using the provided userId. Otherwise, if the email address is already attached to an account, the user ID is ignored.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the magic URL login. 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.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "phrase": { - "type": "boolean", "description": "Toggle for security phrase. If enabled, email will be send with a randomly generated phrase and the phrase will also be included in the response. Confirming phrases match increases the security of your authentication flow.", + "type": "boolean", "default": false, "example": false } @@ -5279,103 +5562,328 @@ "parameters": [ { "name": "provider", - "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", + "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, huggingface, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", "required": true, "schema": { "type": "string", "example": "amazon", - "enum": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" - ], - "x-enum-name": "OAuthProvider", - "x-enum-keys": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" + "title": "OAuthProvider", + "oneOf": [ + { + "type": "string", + "enum": [ + "amazon" + ], + "title": "amazon" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "auth0" + ], + "title": "auth0" + }, + { + "type": "string", + "enum": [ + "authentik" + ], + "title": "authentik" + }, + { + "type": "string", + "enum": [ + "autodesk" + ], + "title": "autodesk" + }, + { + "type": "string", + "enum": [ + "bitbucket" + ], + "title": "bitbucket" + }, + { + "type": "string", + "enum": [ + "bitly" + ], + "title": "bitly" + }, + { + "type": "string", + "enum": [ + "box" + ], + "title": "box" + }, + { + "type": "string", + "enum": [ + "dailymotion" + ], + "title": "dailymotion" + }, + { + "type": "string", + "enum": [ + "discord" + ], + "title": "discord" + }, + { + "type": "string", + "enum": [ + "disqus" + ], + "title": "disqus" + }, + { + "type": "string", + "enum": [ + "dropbox" + ], + "title": "dropbox" + }, + { + "type": "string", + "enum": [ + "etsy" + ], + "title": "etsy" + }, + { + "type": "string", + "enum": [ + "facebook" + ], + "title": "facebook" + }, + { + "type": "string", + "enum": [ + "figma" + ], + "title": "figma" + }, + { + "type": "string", + "enum": [ + "fusionauth" + ], + "title": "fusionauth" + }, + { + "type": "string", + "enum": [ + "github" + ], + "title": "github" + }, + { + "type": "string", + "enum": [ + "gitlab" + ], + "title": "gitlab" + }, + { + "type": "string", + "enum": [ + "google" + ], + "title": "google" + }, + { + "type": "string", + "enum": [ + "huggingface" + ], + "title": "huggingface" + }, + { + "type": "string", + "enum": [ + "keycloak" + ], + "title": "keycloak" + }, + { + "type": "string", + "enum": [ + "kick" + ], + "title": "kick" + }, + { + "type": "string", + "enum": [ + "linkedin" + ], + "title": "linkedin" + }, + { + "type": "string", + "enum": [ + "microsoft" + ], + "title": "microsoft" + }, + { + "type": "string", + "enum": [ + "notion" + ], + "title": "notion" + }, + { + "type": "string", + "enum": [ + "oidc" + ], + "title": "oidc" + }, + { + "type": "string", + "enum": [ + "okta" + ], + "title": "okta" + }, + { + "type": "string", + "enum": [ + "paypal" + ], + "title": "paypal" + }, + { + "type": "string", + "enum": [ + "paypalSandbox" + ], + "title": "paypalSandbox" + }, + { + "type": "string", + "enum": [ + "podio" + ], + "title": "podio" + }, + { + "type": "string", + "enum": [ + "salesforce" + ], + "title": "salesforce" + }, + { + "type": "string", + "enum": [ + "slack" + ], + "title": "slack" + }, + { + "type": "string", + "enum": [ + "spotify" + ], + "title": "spotify" + }, + { + "type": "string", + "enum": [ + "stripe" + ], + "title": "stripe" + }, + { + "type": "string", + "enum": [ + "tradeshift" + ], + "title": "tradeshift" + }, + { + "type": "string", + "enum": [ + "tradeshiftBox" + ], + "title": "tradeshiftBox" + }, + { + "type": "string", + "enum": [ + "twitch" + ], + "title": "twitch" + }, + { + "type": "string", + "enum": [ + "wordpress" + ], + "title": "wordpress" + }, + { + "type": "string", + "enum": [ + "x" + ], + "title": "x" + }, + { + "type": "string", + "enum": [ + "yahoo" + ], + "title": "yahoo" + }, + { + "type": "string", + "enum": [ + "yammer" + ], + "title": "yammer" + }, + { + "type": "string", + "enum": [ + "yandex" + ], + "title": "yandex" + }, + { + "type": "string", + "enum": [ + "zoho" + ], + "title": "zoho" + }, + { + "type": "string", + "enum": [ + "zoom" + ], + "title": "zoom" + } ] }, "in": "path" @@ -5479,16 +5987,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "Unique 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. If the phone number has never been used, a new account is created using the provided userId. Otherwise, if the phone number is already attached to an account, the user ID is ignored.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "example": "+12065550100", "format": "phone" } @@ -5611,8 +6119,8 @@ "type": "object", "properties": { "url": { - "type": "string", "description": "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.", + "type": "string", "example": "https:\/\/example.com", "format": "url" } @@ -5736,13 +6244,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -5864,13 +6372,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "" }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "" } }, @@ -6121,16 +6629,16 @@ "type": "object", "properties": { "linkId": { - "type": "string", "description": "Link 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. This ID is the shareable referral code.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Link name. Max length: 128 chars.", + "type": "string", "default": "", "example": "" } @@ -6450,13 +6958,13 @@ "type": "object", "properties": { "status": { - "type": "string", "description": "New reward status. Use `claimed` to claim the reward as organization credits.", + "type": "string", "example": "claimed" }, "organizationId": { - "type": "string", "description": "Organization ID to apply credits to when claiming.", + "type": "string", "example": "" } }, @@ -6601,132 +7109,132 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Application name.", + "type": "string", "example": "" }, "description": { - "type": "string", "description": "Application description shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "" }, "clientUri": { - "type": "string", "description": "Application homepage URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "logoUri": { - "type": "string", "description": "Application logo URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "privacyPolicyUrl": { - "type": "string", "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "termsUrl": { - "type": "string", "description": "Application terms of service URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "contacts": { - "type": "array", "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "tagline": { - "type": "string", "description": "Application tagline shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "" }, "tags": { - "type": "array", "description": "Application tags shown to users during OAuth2 consent. Maximum of 100 tags are allowed, each up to 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "images": { - "type": "array", "description": "Application image URLs shown to users during OAuth2 consent. Maximum of 100 images are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "supportUrl": { - "type": "string", "description": "Application support URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "dataDeletionUrl": { - "type": "string", "description": "Application data deletion URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "redirectUris": { - "type": "array", "description": "Redirect URIs. Each must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI (e.g. com.example.app:\/oauth), and must not contain a fragment.", + "type": "array", "items": { "type": "string" } }, "postLogoutRedirectUris": { - "type": "array", "description": "Post-logout redirect URIs for OpenID Connect RP-Initiated Logout. Each must be an https URL, an http loopback URL, or a private-use scheme URI, and must not contain a fragment. After ending the user session, the logout endpoint only redirects to URIs in this list.", + "type": "array", "default": [], "items": { "type": "string" } }, "enabled": { - "type": "boolean", "description": "Is application enabled?", + "type": "boolean", "default": true, "example": false }, "type": { - "type": "string", "description": "OAuth2 client type. Use `public` for SPAs, mobile, and native apps that cannot keep a `client_secret` \u2014 PKCE is then required at the token endpoint. Use `confidential` for server-side clients that present a `client_secret`. Defaults to `confidential`.", + "type": "string", "default": "confidential", "example": "public" }, "deviceFlow": { - "type": "boolean", "description": "Allow this client to use the OAuth2 Device Authorization Grant (RFC 8628) for input-constrained devices such as TVs and CLIs. Defaults to false.", + "type": "boolean", "default": false, "example": false }, "teamId": { - "type": "string", "description": "Team unique ID.", + "type": "string", "default": "", "example": "" } @@ -6973,133 +7481,133 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Application name.", + "type": "string", "example": "" }, "description": { - "type": "string", "description": "Application description shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "" }, "clientUri": { - "type": "string", "description": "Application homepage URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "logoUri": { - "type": "string", "description": "Application logo URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "privacyPolicyUrl": { - "type": "string", "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "termsUrl": { - "type": "string", "description": "Application terms of service URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "contacts": { - "type": "array", "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "tagline": { - "type": "string", "description": "Application tagline shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "" }, "tags": { - "type": "array", "description": "Application tags shown to users during OAuth2 consent. Maximum of 100 tags are allowed, each up to 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "images": { - "type": "array", "description": "Application image URLs shown to users during OAuth2 consent. Maximum of 100 images are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "supportUrl": { - "type": "string", "description": "Application support URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "dataDeletionUrl": { - "type": "string", "description": "Application data deletion URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "enabled": { - "type": "boolean", "description": "Is application enabled?", + "type": "boolean", "default": true, "example": false }, "redirectUris": { - "type": "array", "description": "Redirect URIs. Each must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI (e.g. com.example.app:\/oauth), and must not contain a fragment.", + "type": "array", "default": [], "items": { "type": "string" } }, "postLogoutRedirectUris": { - "type": "array", "description": "Post-logout redirect URIs for OpenID Connect RP-Initiated Logout. Each must be an https URL, an http loopback URL, or a private-use scheme URI, and must not contain a fragment. After ending the user session, the logout endpoint only redirects to URIs in this list.", + "type": "array", "default": [], "items": { "type": "string" } }, "type": { - "type": "string", "description": "OAuth2 client type. Use `public` for SPAs, mobile, and native apps that cannot keep a `client_secret` \u2014 PKCE is then required at the token endpoint. Use `confidential` for server-side clients that present a `client_secret`. Defaults to `confidential`.", + "type": "string", "default": "confidential", "example": "public" }, "deviceFlow": { - "type": "boolean", "description": "Allow this client to use the OAuth2 Device Authorization Grant (RFC 8628) for input-constrained devices such as TVs and CLIs. Defaults to false.", + "type": "boolean", "default": false, "example": false }, "installationScopes": { - "type": "array", "description": "Scopes the application requests when installed on a team. Only scopes allowed by the project's OAuth2 server installation scopes configuration are accepted; use the list installation scopes endpoint to discover available values. Maximum of 100 scopes are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "installationRedirectUrl": { - "type": "string", "description": "URL users are redirected to after creating or updating an installation of this application. Must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI, and must not contain a fragment. Leave empty for no redirect.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" @@ -7833,8 +8341,8 @@ "type": "object", "properties": { "labels": { - "type": "array", "description": "Array of application labels. Replaces the previous labels. Maximum of 1000 labels are allowed, each up to 36 alphanumeric characters long.", + "type": "array", "items": { "type": "string" } @@ -8205,8 +8713,8 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "Team ID of the team to transfer application to.", + "type": "string", "example": "" } }, @@ -8339,38 +8847,106 @@ "schema": { "type": "string", "example": "aa", - "enum": [ - "aa", - "an", - "ch", - "ci", - "cm", - "cr", - "ff", - "sf", - "mf", - "ps", - "oi", - "om", - "op", - "on" - ], - "x-enum-name": "Browser", - "x-enum-keys": [ - "Avant Browser", - "Android WebView Beta", - "Google Chrome", - "Google Chrome (iOS)", - "Google Chrome (Mobile)", - "Chromium", - "Mozilla Firefox", - "Safari", - "Mobile Safari", - "Microsoft Edge", - "Microsoft Edge (iOS)", - "Opera Mini", - "Opera", - "Opera (Next)" + "title": "Browser", + "oneOf": [ + { + "type": "string", + "enum": [ + "aa" + ], + "title": "Avant Browser" + }, + { + "type": "string", + "enum": [ + "an" + ], + "title": "Android WebView Beta" + }, + { + "type": "string", + "enum": [ + "ch" + ], + "title": "Google Chrome" + }, + { + "type": "string", + "enum": [ + "ci" + ], + "title": "Google Chrome (iOS)" + }, + { + "type": "string", + "enum": [ + "cm" + ], + "title": "Google Chrome (Mobile)" + }, + { + "type": "string", + "enum": [ + "cr" + ], + "title": "Chromium" + }, + { + "type": "string", + "enum": [ + "ff" + ], + "title": "Mozilla Firefox" + }, + { + "type": "string", + "enum": [ + "sf" + ], + "title": "Safari" + }, + { + "type": "string", + "enum": [ + "mf" + ], + "title": "Mobile Safari" + }, + { + "type": "string", + "enum": [ + "ps" + ], + "title": "Microsoft Edge" + }, + { + "type": "string", + "enum": [ + "oi" + ], + "title": "Microsoft Edge (iOS)" + }, + { + "type": "string", + "enum": [ + "om" + ], + "title": "Opera Mini" + }, + { + "type": "string", + "enum": [ + "op" + ], + "title": "Opera" + }, + { + "type": "string", + "enum": [ + "on" + ], + "title": "Opera (Next)" + } ] }, "in": "path" @@ -8475,610 +9051,127 @@ "schema": { "type": "string", "example": "amex", - "enum": [ - "amex", - "argencard", - "cabal", - "cencosud", - "diners", - "discover", - "elo", - "hipercard", - "jcb", - "mastercard", - "naranja", - "targeta-shopping", - "unionpay", - "visa", - "mir", - "maestro", - "rupay" - ], - "x-enum-name": "CreditCard", - "x-enum-keys": [ - "American Express", - "Argencard", - "Cabal", - "Cencosud", - "Diners Club", - "Discover", - "Elo", - "Hipercard", - "JCB", - "Mastercard", - "Naranja", - "Tarjeta Shopping", - "Union Pay", - "Visa", - "MIR", - "Maestro", - "Rupay" - ] - }, - "in": "path" - }, - { - "name": "width", - "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 100 - }, - "in": "query" - }, - { - "name": "height", - "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 100 - }, - "in": "query" - }, - { - "name": "quality", - "description": "Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": -1, - "default": -1 - }, - "in": "query" - } - ] - } - }, - "\/avatars\/favicon": { - "get": { - "summary": "Get favicon", - "operationId": "avatarsGetFavicon", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to fetch the favorite icon (AKA favicon) of any remote website URL.\n\nThis endpoint does not follow HTTP redirects.", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/*": { - "schema": { + "title": "CreditCard", + "oneOf": [ + { "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-favicon.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-favicon.md", - "auth": { - "Project": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "Key": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "url", - "description": "Website URL which you want to fetch the favicon from.", - "required": true, - "schema": { - "type": "string", - "format": "url", - "example": "https:\/\/example.com" - }, - "in": "query" - } - ] - } - }, - "\/avatars\/flags\/{code}": { - "get": { - "summary": "Get country flag", - "operationId": "avatarsGetFlag", - "tags": [ - "avatars" - ], - "description": "You can use this endpoint to show different country flags icons to your users. The code argument receives the 2 letter country code. Use width, height and quality arguments to change the output settings. Country codes follow the [ISO 3166-1](https:\/\/en.wikipedia.org\/wiki\/ISO_3166-1) standard.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { + "enum": [ + "amex" + ], + "title": "American Express" + }, + { "type": "string", - "format": "binary" + "enum": [ + "argencard" + ], + "title": "Argencard" + }, + { + "type": "string", + "enum": [ + "cabal" + ], + "title": "Cabal" + }, + { + "type": "string", + "enum": [ + "cencosud" + ], + "title": "Cencosud" + }, + { + "type": "string", + "enum": [ + "diners" + ], + "title": "Diners Club" + }, + { + "type": "string", + "enum": [ + "discover" + ], + "title": "Discover" + }, + { + "type": "string", + "enum": [ + "elo" + ], + "title": "Elo" + }, + { + "type": "string", + "enum": [ + "hipercard" + ], + "title": "Hipercard" + }, + { + "type": "string", + "enum": [ + "jcb" + ], + "title": "JCB" + }, + { + "type": "string", + "enum": [ + "mastercard" + ], + "title": "Mastercard" + }, + { + "type": "string", + "enum": [ + "naranja" + ], + "title": "Naranja" + }, + { + "type": "string", + "enum": [ + "targeta-shopping" + ], + "title": "Tarjeta Shopping" + }, + { + "type": "string", + "enum": [ + "unionpay" + ], + "title": "Union Pay" + }, + { + "type": "string", + "enum": [ + "visa" + ], + "title": "Visa" + }, + { + "type": "string", + "enum": [ + "mir" + ], + "title": "MIR" + }, + { + "type": "string", + "enum": [ + "maestro" + ], + "title": "Maestro" + }, + { + "type": "string", + "enum": [ + "rupay" + ], + "title": "Rupay" } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-flag.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-flag.md", - "auth": { - "Project": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "Key": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "code", - "description": "Country Code. ISO Alpha-2 country code format.", - "required": true, - "schema": { - "type": "string", - "example": "af", - "enum": [ - "af", - "ao", - "al", - "ad", - "ae", - "ar", - "am", - "ag", - "au", - "at", - "az", - "bi", - "be", - "bj", - "bf", - "bd", - "bg", - "bh", - "bs", - "ba", - "by", - "bz", - "bo", - "br", - "bb", - "bn", - "bt", - "bw", - "cf", - "ca", - "ch", - "cl", - "cn", - "ci", - "cm", - "cd", - "cg", - "co", - "km", - "cv", - "cr", - "cu", - "cy", - "cz", - "de", - "dj", - "dm", - "dk", - "do", - "dz", - "ec", - "eg", - "er", - "es", - "ee", - "et", - "fi", - "fj", - "fr", - "fm", - "ga", - "gb", - "ge", - "gh", - "gn", - "gm", - "gw", - "gq", - "gr", - "gd", - "gt", - "gy", - "hn", - "hr", - "ht", - "hu", - "id", - "in", - "ie", - "ir", - "iq", - "is", - "il", - "it", - "jm", - "jo", - "jp", - "kz", - "ke", - "kg", - "kh", - "ki", - "kn", - "kr", - "kw", - "la", - "lb", - "lr", - "ly", - "lc", - "li", - "lk", - "ls", - "lt", - "lu", - "lv", - "ma", - "mc", - "md", - "mg", - "mv", - "mx", - "mh", - "mk", - "ml", - "mt", - "mm", - "me", - "mn", - "mz", - "mr", - "mu", - "mw", - "my", - "na", - "ne", - "ng", - "ni", - "nl", - "no", - "np", - "nr", - "nz", - "om", - "pk", - "pa", - "pe", - "ph", - "pw", - "pg", - "pl", - "pf", - "kp", - "pt", - "py", - "qa", - "ro", - "ru", - "rw", - "sa", - "sd", - "sn", - "sg", - "sb", - "sl", - "sv", - "sm", - "so", - "rs", - "ss", - "st", - "sr", - "sk", - "si", - "se", - "sz", - "sc", - "sy", - "td", - "tg", - "th", - "tj", - "tm", - "tl", - "to", - "tt", - "tn", - "tr", - "tv", - "tz", - "ug", - "ua", - "uy", - "us", - "uz", - "va", - "vc", - "ve", - "vn", - "vu", - "ws", - "ye", - "za", - "zm", - "zw" - ], - "x-enum-name": "Flag", - "x-enum-keys": [ - "Afghanistan", - "Angola", - "Albania", - "Andorra", - "United Arab Emirates", - "Argentina", - "Armenia", - "Antigua and Barbuda", - "Australia", - "Austria", - "Azerbaijan", - "Burundi", - "Belgium", - "Benin", - "Burkina Faso", - "Bangladesh", - "Bulgaria", - "Bahrain", - "Bahamas", - "Bosnia and Herzegovina", - "Belarus", - "Belize", - "Bolivia", - "Brazil", - "Barbados", - "Brunei Darussalam", - "Bhutan", - "Botswana", - "Central African Republic", - "Canada", - "Switzerland", - "Chile", - "China", - "C\u00f4te d'Ivoire", - "Cameroon", - "Democratic Republic of the Congo", - "Republic of the Congo", - "Colombia", - "Comoros", - "Cape Verde", - "Costa Rica", - "Cuba", - "Cyprus", - "Czech Republic", - "Germany", - "Djibouti", - "Dominica", - "Denmark", - "Dominican Republic", - "Algeria", - "Ecuador", - "Egypt", - "Eritrea", - "Spain", - "Estonia", - "Ethiopia", - "Finland", - "Fiji", - "France", - "Micronesia (Federated States of)", - "Gabon", - "United Kingdom", - "Georgia", - "Ghana", - "Guinea", - "Gambia", - "Guinea-Bissau", - "Equatorial Guinea", - "Greece", - "Grenada", - "Guatemala", - "Guyana", - "Honduras", - "Croatia", - "Haiti", - "Hungary", - "Indonesia", - "India", - "Ireland", - "Iran (Islamic Republic of)", - "Iraq", - "Iceland", - "Israel", - "Italy", - "Jamaica", - "Jordan", - "Japan", - "Kazakhstan", - "Kenya", - "Kyrgyzstan", - "Cambodia", - "Kiribati", - "Saint Kitts and Nevis", - "South Korea", - "Kuwait", - "Lao People's Democratic Republic", - "Lebanon", - "Liberia", - "Libya", - "Saint Lucia", - "Liechtenstein", - "Sri Lanka", - "Lesotho", - "Lithuania", - "Luxembourg", - "Latvia", - "Morocco", - "Monaco", - "Moldova", - "Madagascar", - "Maldives", - "Mexico", - "Marshall Islands", - "North Macedonia", - "Mali", - "Malta", - "Myanmar", - "Montenegro", - "Mongolia", - "Mozambique", - "Mauritania", - "Mauritius", - "Malawi", - "Malaysia", - "Namibia", - "Niger", - "Nigeria", - "Nicaragua", - "Netherlands", - "Norway", - "Nepal", - "Nauru", - "New Zealand", - "Oman", - "Pakistan", - "Panama", - "Peru", - "Philippines", - "Palau", - "Papua New Guinea", - "Poland", - "French Polynesia", - "North Korea", - "Portugal", - "Paraguay", - "Qatar", - "Romania", - "Russia", - "Rwanda", - "Saudi Arabia", - "Sudan", - "Senegal", - "Singapore", - "Solomon Islands", - "Sierra Leone", - "El Salvador", - "San Marino", - "Somalia", - "Serbia", - "South Sudan", - "Sao Tome and Principe", - "Suriname", - "Slovakia", - "Slovenia", - "Sweden", - "Eswatini", - "Seychelles", - "Syria", - "Chad", - "Togo", - "Thailand", - "Tajikistan", - "Turkmenistan", - "Timor-Leste", - "Tonga", - "Trinidad and Tobago", - "Tunisia", - "Turkey", - "Tuvalu", - "Tanzania", - "Uganda", - "Ukraine", - "Uruguay", - "United States", - "Uzbekistan", - "Vatican City", - "Saint Vincent and the Grenadines", - "Venezuela", - "Vietnam", - "Vanuatu", - "Samoa", - "Yemen", - "South Africa", - "Zambia", - "Zimbabwe" ] }, "in": "path" @@ -9122,14 +9215,14 @@ ] } }, - "\/avatars\/image": { + "\/avatars\/favicon": { "get": { - "summary": "Get image from URL", - "operationId": "avatarsGetImage", + "summary": "Get favicon", + "operationId": "avatarsGetFavicon", "tags": [ "avatars" ], - "description": "Use this endpoint to fetch a remote image URL and crop it to any image size you want. This endpoint is very useful if you need to crop and display remote images in your app or in case you want to make sure a 3rd party image is properly served using a TLS protocol.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 400x400px.\n\nThis endpoint does not follow HTTP redirects.", + "description": "Use this endpoint to fetch the favorite icon (AKA favicon) of any remote website URL.\n\nThis endpoint does not follow HTTP redirects.", "responses": { "200": { "description": "Image", @@ -9148,7 +9241,7 @@ "group": null, "cookies": false, "type": "location", - "demo": "avatars\/get-image.md", + "demo": "avatars\/get-favicon.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -9160,7 +9253,7 @@ ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-favicon.md", "auth": { "Project": [], "ImpersonateUserId": [] @@ -9178,7 +9271,7 @@ "parameters": [ { "name": "url", - "description": "Image URL which you want to crop.", + "description": "Website URL which you want to fetch the favicon from.", "required": true, "schema": { "type": "string", @@ -9186,144 +9279,18 @@ "example": "https:\/\/example.com" }, "in": "query" - }, - { - "name": "width", - "description": "Resize preview image width, Pass an integer between 0 to 2000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 400 - }, - "in": "query" - }, - { - "name": "height", - "description": "Resize preview image height, Pass an integer between 0 to 2000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 400 - }, - "in": "query" - } - ] - } - }, - "\/avatars\/initials": { - "get": { - "summary": "Get user initials", - "operationId": "avatarsGetInitials", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to show your user initials avatar icon on your website or app. By default, this route will try to print your logged-in user name or email initials. You can also overwrite the user name if you pass the 'name' parameter. If no name is given and no user is logged, an empty avatar will be returned.\n\nYou can use the color and background params to change the avatar colors. By default, a random theme will be selected. The random theme will persist for the user's initials when reloading the same theme will always return for the same initials.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { - "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-initials.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md", - "auth": { - "Project": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "Key": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "name", - "description": "Full Name. When empty, current user name or email will be used. Max length: 128 chars.", - "required": false, - "schema": { - "type": "string", - "example": "", - "default": "" - }, - "in": "query" - }, - { - "name": "width", - "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 500 - }, - "in": "query" - }, - { - "name": "height", - "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 500 - }, - "in": "query" - }, - { - "name": "background", - "description": "Changes background color. By default a random color will be picked and stay will persistent to the given name.", - "required": false, - "schema": { - "type": "string", - "default": "" - }, - "in": "query" } ] } }, - "\/avatars\/qr": { + "\/avatars\/flags\/{code}": { "get": { - "summary": "Get QR code", - "operationId": "avatarsGetQR", + "summary": "Get country flag", + "operationId": "avatarsGetFlag", "tags": [ "avatars" ], - "description": "Converts a given plain text to a QR code image. You can use the query parameters to change the size and style of the resulting image.\n", + "description": "You can use this endpoint to show different country flags icons to your users. The code argument receives the 2 letter country code. Use width, height and quality arguments to change the output settings. Country codes follow the [ISO 3166-1](https:\/\/en.wikipedia.org\/wiki\/ISO_3166-1) standard.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", "responses": { "200": { "description": "Image", @@ -9342,7 +9309,7 @@ "group": null, "cookies": false, "type": "location", - "demo": "avatars\/get-qr.md", + "demo": "avatars\/get-flag.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -9354,7 +9321,7 @@ ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-flag.md", "auth": { "Project": [], "ImpersonateUserId": [] @@ -9371,1273 +9338,5286 @@ ], "parameters": [ { - "name": "text", - "description": "Plain text to be converted to QR code image.", + "name": "code", + "description": "Country Code. ISO Alpha-2 country code format.", "required": true, "schema": { "type": "string", - "example": "" - }, - "in": "query" - }, - { - "name": "size", - "description": "QR code size. Pass an integer between 1 to 1000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1, - "default": 400 - }, - "in": "query" - }, - { - "name": "margin", - "description": "Margin from edge. Pass an integer between 0 to 10. Defaults to 1.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 1 - }, - "in": "query" - }, - { - "name": "download", - "description": "Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": false - }, - "in": "query" - } - ] - } - }, - "\/avatars\/screenshots": { - "get": { - "summary": "Get webpage screenshot", - "operationId": "avatarsGetScreenshot", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to capture a screenshot of any website URL. This endpoint uses a headless browser to render the webpage and capture it as an image.\n\nYou can configure the browser viewport size, theme, user agent, geolocation, permissions, and more. Capture either just the viewport or the full page scroll.\n\nWhen width and height are specified, the image is resized accordingly. If both dimensions are 0, the API provides an image at original size. If dimensions are not specified, the default viewport size is 1280x720px.", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { + "example": "af", + "title": "Flag", + "oneOf": [ + { "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-screenshot.md", - "rate-limit": 60, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-screenshot.md", - "auth": { - "Project": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "Key": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "url", - "description": "Website URL which you want to capture.", - "required": true, - "schema": { - "type": "string", - "format": "url", - "example": "https:\/\/example.com" - }, - "in": "query" - }, - { - "name": "headers", - "description": "HTTP headers to send with the browser request. Defaults to empty.", - "required": false, - "schema": { - "type": "object", - "default": [], - "example": { - "Authorization": "Bearer token123", - "X-Custom-Header": "value" - } - }, - "in": "query" - }, - { - "name": "viewportWidth", - "description": "Browser viewport width. Pass an integer between 1 to 1920. Defaults to 1280.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1920, - "default": 1280 - }, - "in": "query" - }, - { - "name": "viewportHeight", - "description": "Browser viewport height. Pass an integer between 1 to 1080. Defaults to 720.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1080, - "default": 720 - }, - "in": "query" - }, - { - "name": "scale", - "description": "Browser scale factor. Pass a number between 0.1 to 3. Defaults to 1.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": 2, - "default": 1 - }, - "in": "query" - }, - { - "name": "theme", - "description": "Browser theme. Pass \"light\" or \"dark\". Defaults to \"light\".", - "required": false, - "schema": { - "type": "string", - "example": "dark", - "enum": [ - "light", - "dark" - ], - "x-enum-name": "BrowserTheme", - "x-enum-keys": [ - "light", - "dark" - ], - "default": "light" - }, - "in": "query" - }, - { - "name": "userAgent", - "description": "Custom user agent string. Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "Mozilla\/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit\/605.1.15", - "default": "" - }, - "in": "query" - }, - { - "name": "fullpage", - "description": "Capture full page scroll. Pass 0 for viewport only, or 1 for full page. Defaults to 0.", - "required": false, - "schema": { - "type": "boolean", - "example": true, - "default": false - }, - "in": "query" - }, - { - "name": "locale", - "description": "Browser locale (e.g., \"en-US\", \"fr-FR\"). Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "en-US", - "default": "" - }, - "in": "query" - }, - { - "name": "timezone", - "description": "IANA timezone identifier (e.g., \"America\/New_York\", \"Europe\/London\"). Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "America\/New_York", - "enum": [ - "africa\/abidjan", - "africa\/accra", - "africa\/addis_ababa", - "africa\/algiers", - "africa\/asmara", - "africa\/bamako", - "africa\/bangui", - "africa\/banjul", - "africa\/bissau", - "africa\/blantyre", - "africa\/brazzaville", - "africa\/bujumbura", - "africa\/cairo", - "africa\/casablanca", - "africa\/ceuta", - "africa\/conakry", - "africa\/dakar", - "africa\/dar_es_salaam", - "africa\/djibouti", - "africa\/douala", - "africa\/el_aaiun", - "africa\/freetown", - "africa\/gaborone", - "africa\/harare", - "africa\/johannesburg", - "africa\/juba", - "africa\/kampala", - "africa\/khartoum", - "africa\/kigali", - "africa\/kinshasa", - "africa\/lagos", - "africa\/libreville", - "africa\/lome", - "africa\/luanda", - "africa\/lubumbashi", - "africa\/lusaka", - "africa\/malabo", - "africa\/maputo", - "africa\/maseru", - "africa\/mbabane", - "africa\/mogadishu", - "africa\/monrovia", - "africa\/nairobi", - "africa\/ndjamena", - "africa\/niamey", - "africa\/nouakchott", - "africa\/ouagadougou", - "africa\/porto-novo", - "africa\/sao_tome", - "africa\/tripoli", - "africa\/tunis", - "africa\/windhoek", - "america\/adak", - "america\/anchorage", - "america\/anguilla", - "america\/antigua", - "america\/araguaina", - "america\/argentina\/buenos_aires", - "america\/argentina\/catamarca", - "america\/argentina\/cordoba", - "america\/argentina\/jujuy", - "america\/argentina\/la_rioja", - "america\/argentina\/mendoza", - "america\/argentina\/rio_gallegos", - "america\/argentina\/salta", - "america\/argentina\/san_juan", - "america\/argentina\/san_luis", - "america\/argentina\/tucuman", - "america\/argentina\/ushuaia", - "america\/aruba", - "america\/asuncion", - "america\/atikokan", - "america\/bahia", - "america\/bahia_banderas", - "america\/barbados", - "america\/belem", - "america\/belize", - "america\/blanc-sablon", - "america\/boa_vista", - "america\/bogota", - "america\/boise", - "america\/cambridge_bay", - "america\/campo_grande", - "america\/cancun", - "america\/caracas", - "america\/cayenne", - "america\/cayman", - "america\/chicago", - "america\/chihuahua", - "america\/ciudad_juarez", - "america\/costa_rica", - "america\/coyhaique", - "america\/creston", - "america\/cuiaba", - "america\/curacao", - "america\/danmarkshavn", - "america\/dawson", - "america\/dawson_creek", - "america\/denver", - "america\/detroit", - "america\/dominica", - "america\/edmonton", - "america\/eirunepe", - "america\/el_salvador", - "america\/fort_nelson", - "america\/fortaleza", - "america\/glace_bay", - "america\/goose_bay", - "america\/grand_turk", - "america\/grenada", - "america\/guadeloupe", - "america\/guatemala", - "america\/guayaquil", - "america\/guyana", - "america\/halifax", - "america\/havana", - "america\/hermosillo", - "america\/indiana\/indianapolis", - "america\/indiana\/knox", - "america\/indiana\/marengo", - "america\/indiana\/petersburg", - "america\/indiana\/tell_city", - "america\/indiana\/vevay", - "america\/indiana\/vincennes", - "america\/indiana\/winamac", - "america\/inuvik", - "america\/iqaluit", - "america\/jamaica", - "america\/juneau", - "america\/kentucky\/louisville", - "america\/kentucky\/monticello", - "america\/kralendijk", - "america\/la_paz", - "america\/lima", - "america\/los_angeles", - "america\/lower_princes", - "america\/maceio", - "america\/managua", - "america\/manaus", - "america\/marigot", - "america\/martinique", - "america\/matamoros", - "america\/mazatlan", - "america\/menominee", - "america\/merida", - "america\/metlakatla", - "america\/mexico_city", - "america\/miquelon", - "america\/moncton", - "america\/monterrey", - "america\/montevideo", - "america\/montserrat", - "america\/nassau", - "america\/new_york", - "america\/nome", - "america\/noronha", - "america\/north_dakota\/beulah", - "america\/north_dakota\/center", - "america\/north_dakota\/new_salem", - "america\/nuuk", - "america\/ojinaga", - "america\/panama", - "america\/paramaribo", - "america\/phoenix", - "america\/port-au-prince", - "america\/port_of_spain", - "america\/porto_velho", - "america\/puerto_rico", - "america\/punta_arenas", - "america\/rankin_inlet", - "america\/recife", - "america\/regina", - "america\/resolute", - "america\/rio_branco", - "america\/santarem", - "america\/santiago", - "america\/santo_domingo", - "america\/sao_paulo", - "america\/scoresbysund", - "america\/sitka", - "america\/st_barthelemy", - "america\/st_johns", - "america\/st_kitts", - "america\/st_lucia", - "america\/st_thomas", - "america\/st_vincent", - "america\/swift_current", - "america\/tegucigalpa", - "america\/thule", - "america\/tijuana", - "america\/toronto", - "america\/tortola", - "america\/vancouver", - "america\/whitehorse", - "america\/winnipeg", - "america\/yakutat", - "antarctica\/casey", - "antarctica\/davis", - "antarctica\/dumontdurville", - "antarctica\/macquarie", - "antarctica\/mawson", - "antarctica\/mcmurdo", - "antarctica\/palmer", - "antarctica\/rothera", - "antarctica\/syowa", - "antarctica\/troll", - "antarctica\/vostok", - "arctic\/longyearbyen", - "asia\/aden", - "asia\/almaty", - "asia\/amman", - "asia\/anadyr", - "asia\/aqtau", - "asia\/aqtobe", - "asia\/ashgabat", - "asia\/atyrau", - "asia\/baghdad", - "asia\/bahrain", - "asia\/baku", - "asia\/bangkok", - "asia\/barnaul", - "asia\/beirut", - "asia\/bishkek", - "asia\/brunei", - "asia\/chita", - "asia\/colombo", - "asia\/damascus", - "asia\/dhaka", - "asia\/dili", - "asia\/dubai", - "asia\/dushanbe", - "asia\/famagusta", - "asia\/gaza", - "asia\/hebron", - "asia\/ho_chi_minh", - "asia\/hong_kong", - "asia\/hovd", - "asia\/irkutsk", - "asia\/jakarta", - "asia\/jayapura", - "asia\/jerusalem", - "asia\/kabul", - "asia\/kamchatka", - "asia\/karachi", - "asia\/kathmandu", - "asia\/khandyga", - "asia\/kolkata", - "asia\/krasnoyarsk", - "asia\/kuala_lumpur", - "asia\/kuching", - "asia\/kuwait", - "asia\/macau", - "asia\/magadan", - "asia\/makassar", - "asia\/manila", - "asia\/muscat", - "asia\/nicosia", - "asia\/novokuznetsk", - "asia\/novosibirsk", - "asia\/omsk", - "asia\/oral", - "asia\/phnom_penh", - "asia\/pontianak", - "asia\/pyongyang", - "asia\/qatar", - "asia\/qostanay", - "asia\/qyzylorda", - "asia\/riyadh", - "asia\/sakhalin", - "asia\/samarkand", - "asia\/seoul", - "asia\/shanghai", - "asia\/singapore", - "asia\/srednekolymsk", - "asia\/taipei", - "asia\/tashkent", - "asia\/tbilisi", - "asia\/tehran", - "asia\/thimphu", - "asia\/tokyo", - "asia\/tomsk", - "asia\/ulaanbaatar", - "asia\/urumqi", - "asia\/ust-nera", - "asia\/vientiane", - "asia\/vladivostok", - "asia\/yakutsk", - "asia\/yangon", - "asia\/yekaterinburg", - "asia\/yerevan", - "atlantic\/azores", - "atlantic\/bermuda", - "atlantic\/canary", - "atlantic\/cape_verde", - "atlantic\/faroe", - "atlantic\/madeira", - "atlantic\/reykjavik", - "atlantic\/south_georgia", - "atlantic\/st_helena", - "atlantic\/stanley", - "australia\/adelaide", - "australia\/brisbane", - "australia\/broken_hill", - "australia\/darwin", - "australia\/eucla", - "australia\/hobart", - "australia\/lindeman", - "australia\/lord_howe", - "australia\/melbourne", - "australia\/perth", - "australia\/sydney", - "europe\/amsterdam", - "europe\/andorra", - "europe\/astrakhan", - "europe\/athens", - "europe\/belgrade", - "europe\/berlin", - "europe\/bratislava", - "europe\/brussels", - "europe\/bucharest", - "europe\/budapest", - "europe\/busingen", - "europe\/chisinau", - "europe\/copenhagen", - "europe\/dublin", - "europe\/gibraltar", - "europe\/guernsey", - "europe\/helsinki", - "europe\/isle_of_man", - "europe\/istanbul", - "europe\/jersey", - "europe\/kaliningrad", - "europe\/kirov", - "europe\/kyiv", - "europe\/lisbon", - "europe\/ljubljana", - "europe\/london", - "europe\/luxembourg", - "europe\/madrid", - "europe\/malta", - "europe\/mariehamn", - "europe\/minsk", - "europe\/monaco", - "europe\/moscow", - "europe\/oslo", - "europe\/paris", - "europe\/podgorica", - "europe\/prague", - "europe\/riga", - "europe\/rome", - "europe\/samara", - "europe\/san_marino", - "europe\/sarajevo", - "europe\/saratov", - "europe\/simferopol", - "europe\/skopje", - "europe\/sofia", - "europe\/stockholm", - "europe\/tallinn", - "europe\/tirane", - "europe\/ulyanovsk", - "europe\/vaduz", - "europe\/vatican", - "europe\/vienna", - "europe\/vilnius", - "europe\/volgograd", - "europe\/warsaw", - "europe\/zagreb", - "europe\/zurich", - "indian\/antananarivo", - "indian\/chagos", - "indian\/christmas", - "indian\/cocos", - "indian\/comoro", - "indian\/kerguelen", - "indian\/mahe", - "indian\/maldives", - "indian\/mauritius", - "indian\/mayotte", - "indian\/reunion", - "pacific\/apia", - "pacific\/auckland", - "pacific\/bougainville", - "pacific\/chatham", - "pacific\/chuuk", - "pacific\/easter", - "pacific\/efate", - "pacific\/fakaofo", - "pacific\/fiji", - "pacific\/funafuti", - "pacific\/galapagos", - "pacific\/gambier", - "pacific\/guadalcanal", - "pacific\/guam", - "pacific\/honolulu", - "pacific\/kanton", - "pacific\/kiritimati", - "pacific\/kosrae", - "pacific\/kwajalein", - "pacific\/majuro", - "pacific\/marquesas", - "pacific\/midway", - "pacific\/nauru", - "pacific\/niue", - "pacific\/norfolk", - "pacific\/noumea", - "pacific\/pago_pago", - "pacific\/palau", - "pacific\/pitcairn", - "pacific\/pohnpei", - "pacific\/port_moresby", - "pacific\/rarotonga", - "pacific\/saipan", - "pacific\/tahiti", - "pacific\/tarawa", - "pacific\/tongatapu", - "pacific\/wake", - "pacific\/wallis", - "utc" - ], - "x-enum-name": "Timezone", - "x-enum-keys": [ - "africa\/abidjan", - "africa\/accra", - "africa\/addis_ababa", - "africa\/algiers", - "africa\/asmara", - "africa\/bamako", - "africa\/bangui", - "africa\/banjul", - "africa\/bissau", - "africa\/blantyre", - "africa\/brazzaville", - "africa\/bujumbura", - "africa\/cairo", - "africa\/casablanca", - "africa\/ceuta", - "africa\/conakry", - "africa\/dakar", - "africa\/dar_es_salaam", - "africa\/djibouti", - "africa\/douala", - "africa\/el_aaiun", - "africa\/freetown", - "africa\/gaborone", - "africa\/harare", - "africa\/johannesburg", - "africa\/juba", - "africa\/kampala", - "africa\/khartoum", - "africa\/kigali", - "africa\/kinshasa", - "africa\/lagos", - "africa\/libreville", - "africa\/lome", - "africa\/luanda", - "africa\/lubumbashi", - "africa\/lusaka", - "africa\/malabo", - "africa\/maputo", - "africa\/maseru", - "africa\/mbabane", - "africa\/mogadishu", - "africa\/monrovia", - "africa\/nairobi", - "africa\/ndjamena", - "africa\/niamey", - "africa\/nouakchott", - "africa\/ouagadougou", - "africa\/porto-novo", - "africa\/sao_tome", - "africa\/tripoli", - "africa\/tunis", - "africa\/windhoek", - "america\/adak", - "america\/anchorage", - "america\/anguilla", - "america\/antigua", - "america\/araguaina", - "america\/argentina\/buenos_aires", - "america\/argentina\/catamarca", - "america\/argentina\/cordoba", - "america\/argentina\/jujuy", - "america\/argentina\/la_rioja", - "america\/argentina\/mendoza", - "america\/argentina\/rio_gallegos", - "america\/argentina\/salta", - "america\/argentina\/san_juan", - "america\/argentina\/san_luis", - "america\/argentina\/tucuman", - "america\/argentina\/ushuaia", - "america\/aruba", - "america\/asuncion", - "america\/atikokan", - "america\/bahia", - "america\/bahia_banderas", - "america\/barbados", - "america\/belem", - "america\/belize", - "america\/blanc-sablon", - "america\/boa_vista", - "america\/bogota", - "america\/boise", - "america\/cambridge_bay", - "america\/campo_grande", - "america\/cancun", - "america\/caracas", - "america\/cayenne", - "america\/cayman", - "america\/chicago", - "america\/chihuahua", - "america\/ciudad_juarez", - "america\/costa_rica", - "america\/coyhaique", - "america\/creston", - "america\/cuiaba", - "america\/curacao", - "america\/danmarkshavn", - "america\/dawson", - "america\/dawson_creek", - "america\/denver", - "america\/detroit", - "america\/dominica", - "america\/edmonton", - "america\/eirunepe", - "america\/el_salvador", - "america\/fort_nelson", - "america\/fortaleza", - "america\/glace_bay", - "america\/goose_bay", - "america\/grand_turk", - "america\/grenada", - "america\/guadeloupe", - "america\/guatemala", - "america\/guayaquil", - "america\/guyana", - "america\/halifax", - "america\/havana", - "america\/hermosillo", - "america\/indiana\/indianapolis", - "america\/indiana\/knox", - "america\/indiana\/marengo", - "america\/indiana\/petersburg", - "america\/indiana\/tell_city", - "america\/indiana\/vevay", - "america\/indiana\/vincennes", - "america\/indiana\/winamac", - "america\/inuvik", - "america\/iqaluit", - "america\/jamaica", - "america\/juneau", - "america\/kentucky\/louisville", - "america\/kentucky\/monticello", - "america\/kralendijk", - "america\/la_paz", - "america\/lima", - "america\/los_angeles", - "america\/lower_princes", - "america\/maceio", - "america\/managua", - "america\/manaus", - "america\/marigot", - "america\/martinique", - "america\/matamoros", - "america\/mazatlan", - "america\/menominee", - "america\/merida", - "america\/metlakatla", - "america\/mexico_city", - "america\/miquelon", - "america\/moncton", - "america\/monterrey", - "america\/montevideo", - "america\/montserrat", - "america\/nassau", - "america\/new_york", - "america\/nome", - "america\/noronha", - "america\/north_dakota\/beulah", - "america\/north_dakota\/center", - "america\/north_dakota\/new_salem", - "america\/nuuk", - "america\/ojinaga", - "america\/panama", - "america\/paramaribo", - "america\/phoenix", - "america\/port-au-prince", - "america\/port_of_spain", - "america\/porto_velho", - "america\/puerto_rico", - "america\/punta_arenas", - "america\/rankin_inlet", - "america\/recife", - "america\/regina", - "america\/resolute", - "america\/rio_branco", - "america\/santarem", - "america\/santiago", - "america\/santo_domingo", - "america\/sao_paulo", - "america\/scoresbysund", - "america\/sitka", - "america\/st_barthelemy", - "america\/st_johns", - "america\/st_kitts", - "america\/st_lucia", - "america\/st_thomas", - "america\/st_vincent", - "america\/swift_current", - "america\/tegucigalpa", - "america\/thule", - "america\/tijuana", - "america\/toronto", - "america\/tortola", - "america\/vancouver", - "america\/whitehorse", - "america\/winnipeg", - "america\/yakutat", - "antarctica\/casey", - "antarctica\/davis", - "antarctica\/dumontdurville", - "antarctica\/macquarie", - "antarctica\/mawson", - "antarctica\/mcmurdo", - "antarctica\/palmer", - "antarctica\/rothera", - "antarctica\/syowa", - "antarctica\/troll", - "antarctica\/vostok", - "arctic\/longyearbyen", - "asia\/aden", - "asia\/almaty", - "asia\/amman", - "asia\/anadyr", - "asia\/aqtau", - "asia\/aqtobe", - "asia\/ashgabat", - "asia\/atyrau", - "asia\/baghdad", - "asia\/bahrain", - "asia\/baku", - "asia\/bangkok", - "asia\/barnaul", - "asia\/beirut", - "asia\/bishkek", - "asia\/brunei", - "asia\/chita", - "asia\/colombo", - "asia\/damascus", - "asia\/dhaka", - "asia\/dili", - "asia\/dubai", - "asia\/dushanbe", - "asia\/famagusta", - "asia\/gaza", - "asia\/hebron", - "asia\/ho_chi_minh", - "asia\/hong_kong", - "asia\/hovd", - "asia\/irkutsk", - "asia\/jakarta", - "asia\/jayapura", - "asia\/jerusalem", - "asia\/kabul", - "asia\/kamchatka", - "asia\/karachi", - "asia\/kathmandu", - "asia\/khandyga", - "asia\/kolkata", - "asia\/krasnoyarsk", - "asia\/kuala_lumpur", - "asia\/kuching", - "asia\/kuwait", - "asia\/macau", - "asia\/magadan", - "asia\/makassar", - "asia\/manila", - "asia\/muscat", - "asia\/nicosia", - "asia\/novokuznetsk", - "asia\/novosibirsk", - "asia\/omsk", - "asia\/oral", - "asia\/phnom_penh", - "asia\/pontianak", - "asia\/pyongyang", - "asia\/qatar", - "asia\/qostanay", - "asia\/qyzylorda", - "asia\/riyadh", - "asia\/sakhalin", - "asia\/samarkand", - "asia\/seoul", - "asia\/shanghai", - "asia\/singapore", - "asia\/srednekolymsk", - "asia\/taipei", - "asia\/tashkent", - "asia\/tbilisi", - "asia\/tehran", - "asia\/thimphu", - "asia\/tokyo", - "asia\/tomsk", - "asia\/ulaanbaatar", - "asia\/urumqi", - "asia\/ust-nera", - "asia\/vientiane", - "asia\/vladivostok", - "asia\/yakutsk", - "asia\/yangon", - "asia\/yekaterinburg", - "asia\/yerevan", - "atlantic\/azores", - "atlantic\/bermuda", - "atlantic\/canary", - "atlantic\/cape_verde", - "atlantic\/faroe", - "atlantic\/madeira", - "atlantic\/reykjavik", - "atlantic\/south_georgia", - "atlantic\/st_helena", - "atlantic\/stanley", - "australia\/adelaide", - "australia\/brisbane", - "australia\/broken_hill", - "australia\/darwin", - "australia\/eucla", - "australia\/hobart", - "australia\/lindeman", - "australia\/lord_howe", - "australia\/melbourne", - "australia\/perth", - "australia\/sydney", - "europe\/amsterdam", - "europe\/andorra", - "europe\/astrakhan", - "europe\/athens", - "europe\/belgrade", - "europe\/berlin", - "europe\/bratislava", - "europe\/brussels", - "europe\/bucharest", - "europe\/budapest", - "europe\/busingen", - "europe\/chisinau", - "europe\/copenhagen", - "europe\/dublin", - "europe\/gibraltar", - "europe\/guernsey", - "europe\/helsinki", - "europe\/isle_of_man", - "europe\/istanbul", - "europe\/jersey", - "europe\/kaliningrad", - "europe\/kirov", - "europe\/kyiv", - "europe\/lisbon", - "europe\/ljubljana", - "europe\/london", - "europe\/luxembourg", - "europe\/madrid", - "europe\/malta", - "europe\/mariehamn", - "europe\/minsk", - "europe\/monaco", - "europe\/moscow", - "europe\/oslo", - "europe\/paris", - "europe\/podgorica", - "europe\/prague", - "europe\/riga", - "europe\/rome", - "europe\/samara", - "europe\/san_marino", - "europe\/sarajevo", - "europe\/saratov", - "europe\/simferopol", - "europe\/skopje", - "europe\/sofia", - "europe\/stockholm", - "europe\/tallinn", - "europe\/tirane", - "europe\/ulyanovsk", - "europe\/vaduz", - "europe\/vatican", - "europe\/vienna", - "europe\/vilnius", - "europe\/volgograd", - "europe\/warsaw", - "europe\/zagreb", - "europe\/zurich", - "indian\/antananarivo", - "indian\/chagos", - "indian\/christmas", - "indian\/cocos", - "indian\/comoro", - "indian\/kerguelen", - "indian\/mahe", - "indian\/maldives", - "indian\/mauritius", - "indian\/mayotte", - "indian\/reunion", - "pacific\/apia", - "pacific\/auckland", - "pacific\/bougainville", - "pacific\/chatham", - "pacific\/chuuk", - "pacific\/easter", - "pacific\/efate", - "pacific\/fakaofo", - "pacific\/fiji", - "pacific\/funafuti", - "pacific\/galapagos", - "pacific\/gambier", - "pacific\/guadalcanal", - "pacific\/guam", - "pacific\/honolulu", - "pacific\/kanton", - "pacific\/kiritimati", - "pacific\/kosrae", - "pacific\/kwajalein", - "pacific\/majuro", - "pacific\/marquesas", - "pacific\/midway", - "pacific\/nauru", - "pacific\/niue", - "pacific\/norfolk", - "pacific\/noumea", - "pacific\/pago_pago", - "pacific\/palau", - "pacific\/pitcairn", - "pacific\/pohnpei", - "pacific\/port_moresby", - "pacific\/rarotonga", - "pacific\/saipan", - "pacific\/tahiti", - "pacific\/tarawa", - "pacific\/tongatapu", - "pacific\/wake", - "pacific\/wallis", - "utc" - ] - }, - "in": "query" - }, - { - "name": "latitude", - "description": "Geolocation latitude. Pass a number between -90 to 90. Defaults to 0.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": 37.7749, - "default": 0 - }, - "in": "query" - }, - { - "name": "longitude", - "description": "Geolocation longitude. Pass a number between -180 to 180. Defaults to 0.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": -122.4194, - "default": 0 - }, - "in": "query" - }, - { - "name": "accuracy", - "description": "Geolocation accuracy in meters. Pass a number between 0 to 100000. Defaults to 0.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": 100, - "default": 0 - }, - "in": "query" - }, - { - "name": "touch", - "description": "Enable touch support. Pass 0 for no touch, or 1 for touch enabled. Defaults to 0.", - "required": false, - "schema": { - "type": "boolean", - "example": true, - "default": false - }, - "in": "query" - }, - { - "name": "permissions", - "description": "Browser permissions to grant. Pass an array of permission names like [\"geolocation\", \"camera\", \"microphone\"]. Defaults to empty.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "enum": [ - "geolocation", - "camera", - "microphone", - "notifications", - "midi", - "push", - "clipboard-read", - "clipboard-write", - "payment-handler", - "usb", - "bluetooth", - "accelerometer", - "gyroscope", - "magnetometer", - "ambient-light-sensor", - "background-sync", - "persistent-storage", - "screen-wake-lock", - "web-share", - "xr-spatial-tracking" - ], - "x-enum-name": "BrowserPermission", - "x-enum-keys": [ - "geolocation", - "camera", - "microphone", - "notifications", - "midi", - "push", - "clipboard-read", - "clipboard-write", - "payment-handler", - "usb", - "bluetooth", - "accelerometer", - "gyroscope", - "magnetometer", - "ambient-light-sensor", - "background-sync", - "persistent-storage", - "screen-wake-lock", - "web-share", - "xr-spatial-tracking" - ] - }, - "example": [ - "geolocation", - "notifications" - ], - "default": [] - }, - "in": "query" - }, - { - "name": "sleep", - "description": "Wait time in seconds before taking the screenshot. Pass an integer between 0 to 10. Defaults to 0.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 3, - "default": 0 - }, - "in": "query" - }, - { - "name": "width", - "description": "Output image width. Pass 0 to use original width, or an integer between 1 to 2000. Defaults to 0 (original width).", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 800, - "default": 0 - }, - "in": "query" - }, - { - "name": "height", - "description": "Output image height. Pass 0 to use original height, or an integer between 1 to 2000. Defaults to 0 (original height).", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 600, - "default": 0 - }, - "in": "query" - }, - { - "name": "quality", - "description": "Screenshot quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 85, - "default": -1 - }, - "in": "query" - }, - { - "name": "output", - "description": "Output format type (jpeg, jpg, png, gif and webp).", - "required": false, - "schema": { - "type": "string", - "example": "jpeg", - "enum": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" - ], - "x-enum-name": "ImageFormat", - "x-enum-keys": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" - ] - }, - "in": "query" - } - ] - } - }, - "\/backups\/archives": { - "get": { - "summary": "List archives", - "operationId": "backupsListArchives", - "tags": [ - "backups" - ], - "description": "List all archives for a project.", - "responses": { - "200": { + "enum": [ + "af" + ], + "title": "Afghanistan" + }, + { + "type": "string", + "enum": [ + "ao" + ], + "title": "Angola" + }, + { + "type": "string", + "enum": [ + "al" + ], + "title": "Albania" + }, + { + "type": "string", + "enum": [ + "ad" + ], + "title": "Andorra" + }, + { + "type": "string", + "enum": [ + "ae" + ], + "title": "United Arab Emirates" + }, + { + "type": "string", + "enum": [ + "ar" + ], + "title": "Argentina" + }, + { + "type": "string", + "enum": [ + "am" + ], + "title": "Armenia" + }, + { + "type": "string", + "enum": [ + "ag" + ], + "title": "Antigua and Barbuda" + }, + { + "type": "string", + "enum": [ + "au" + ], + "title": "Australia" + }, + { + "type": "string", + "enum": [ + "at" + ], + "title": "Austria" + }, + { + "type": "string", + "enum": [ + "az" + ], + "title": "Azerbaijan" + }, + { + "type": "string", + "enum": [ + "bi" + ], + "title": "Burundi" + }, + { + "type": "string", + "enum": [ + "be" + ], + "title": "Belgium" + }, + { + "type": "string", + "enum": [ + "bj" + ], + "title": "Benin" + }, + { + "type": "string", + "enum": [ + "bf" + ], + "title": "Burkina Faso" + }, + { + "type": "string", + "enum": [ + "bd" + ], + "title": "Bangladesh" + }, + { + "type": "string", + "enum": [ + "bg" + ], + "title": "Bulgaria" + }, + { + "type": "string", + "enum": [ + "bh" + ], + "title": "Bahrain" + }, + { + "type": "string", + "enum": [ + "bs" + ], + "title": "Bahamas" + }, + { + "type": "string", + "enum": [ + "ba" + ], + "title": "Bosnia and Herzegovina" + }, + { + "type": "string", + "enum": [ + "by" + ], + "title": "Belarus" + }, + { + "type": "string", + "enum": [ + "bz" + ], + "title": "Belize" + }, + { + "type": "string", + "enum": [ + "bo" + ], + "title": "Bolivia" + }, + { + "type": "string", + "enum": [ + "br" + ], + "title": "Brazil" + }, + { + "type": "string", + "enum": [ + "bb" + ], + "title": "Barbados" + }, + { + "type": "string", + "enum": [ + "bn" + ], + "title": "Brunei Darussalam" + }, + { + "type": "string", + "enum": [ + "bt" + ], + "title": "Bhutan" + }, + { + "type": "string", + "enum": [ + "bw" + ], + "title": "Botswana" + }, + { + "type": "string", + "enum": [ + "cf" + ], + "title": "Central African Republic" + }, + { + "type": "string", + "enum": [ + "ca" + ], + "title": "Canada" + }, + { + "type": "string", + "enum": [ + "ch" + ], + "title": "Switzerland" + }, + { + "type": "string", + "enum": [ + "cl" + ], + "title": "Chile" + }, + { + "type": "string", + "enum": [ + "cn" + ], + "title": "China" + }, + { + "type": "string", + "enum": [ + "ci" + ], + "title": "C\u00f4te d'Ivoire" + }, + { + "type": "string", + "enum": [ + "cm" + ], + "title": "Cameroon" + }, + { + "type": "string", + "enum": [ + "cd" + ], + "title": "Democratic Republic of the Congo" + }, + { + "type": "string", + "enum": [ + "cg" + ], + "title": "Republic of the Congo" + }, + { + "type": "string", + "enum": [ + "co" + ], + "title": "Colombia" + }, + { + "type": "string", + "enum": [ + "km" + ], + "title": "Comoros" + }, + { + "type": "string", + "enum": [ + "cv" + ], + "title": "Cape Verde" + }, + { + "type": "string", + "enum": [ + "cr" + ], + "title": "Costa Rica" + }, + { + "type": "string", + "enum": [ + "cu" + ], + "title": "Cuba" + }, + { + "type": "string", + "enum": [ + "cy" + ], + "title": "Cyprus" + }, + { + "type": "string", + "enum": [ + "cz" + ], + "title": "Czech Republic" + }, + { + "type": "string", + "enum": [ + "de" + ], + "title": "Germany" + }, + { + "type": "string", + "enum": [ + "dj" + ], + "title": "Djibouti" + }, + { + "type": "string", + "enum": [ + "dm" + ], + "title": "Dominica" + }, + { + "type": "string", + "enum": [ + "dk" + ], + "title": "Denmark" + }, + { + "type": "string", + "enum": [ + "do" + ], + "title": "Dominican Republic" + }, + { + "type": "string", + "enum": [ + "dz" + ], + "title": "Algeria" + }, + { + "type": "string", + "enum": [ + "ec" + ], + "title": "Ecuador" + }, + { + "type": "string", + "enum": [ + "eg" + ], + "title": "Egypt" + }, + { + "type": "string", + "enum": [ + "er" + ], + "title": "Eritrea" + }, + { + "type": "string", + "enum": [ + "es" + ], + "title": "Spain" + }, + { + "type": "string", + "enum": [ + "ee" + ], + "title": "Estonia" + }, + { + "type": "string", + "enum": [ + "et" + ], + "title": "Ethiopia" + }, + { + "type": "string", + "enum": [ + "fi" + ], + "title": "Finland" + }, + { + "type": "string", + "enum": [ + "fj" + ], + "title": "Fiji" + }, + { + "type": "string", + "enum": [ + "fr" + ], + "title": "France" + }, + { + "type": "string", + "enum": [ + "fm" + ], + "title": "Micronesia (Federated States of)" + }, + { + "type": "string", + "enum": [ + "ga" + ], + "title": "Gabon" + }, + { + "type": "string", + "enum": [ + "gb" + ], + "title": "United Kingdom" + }, + { + "type": "string", + "enum": [ + "ge" + ], + "title": "Georgia" + }, + { + "type": "string", + "enum": [ + "gh" + ], + "title": "Ghana" + }, + { + "type": "string", + "enum": [ + "gn" + ], + "title": "Guinea" + }, + { + "type": "string", + "enum": [ + "gm" + ], + "title": "Gambia" + }, + { + "type": "string", + "enum": [ + "gw" + ], + "title": "Guinea-Bissau" + }, + { + "type": "string", + "enum": [ + "gq" + ], + "title": "Equatorial Guinea" + }, + { + "type": "string", + "enum": [ + "gr" + ], + "title": "Greece" + }, + { + "type": "string", + "enum": [ + "gd" + ], + "title": "Grenada" + }, + { + "type": "string", + "enum": [ + "gt" + ], + "title": "Guatemala" + }, + { + "type": "string", + "enum": [ + "gy" + ], + "title": "Guyana" + }, + { + "type": "string", + "enum": [ + "hn" + ], + "title": "Honduras" + }, + { + "type": "string", + "enum": [ + "hr" + ], + "title": "Croatia" + }, + { + "type": "string", + "enum": [ + "ht" + ], + "title": "Haiti" + }, + { + "type": "string", + "enum": [ + "hu" + ], + "title": "Hungary" + }, + { + "type": "string", + "enum": [ + "id" + ], + "title": "Indonesia" + }, + { + "type": "string", + "enum": [ + "in" + ], + "title": "India" + }, + { + "type": "string", + "enum": [ + "ie" + ], + "title": "Ireland" + }, + { + "type": "string", + "enum": [ + "ir" + ], + "title": "Iran (Islamic Republic of)" + }, + { + "type": "string", + "enum": [ + "iq" + ], + "title": "Iraq" + }, + { + "type": "string", + "enum": [ + "is" + ], + "title": "Iceland" + }, + { + "type": "string", + "enum": [ + "il" + ], + "title": "Israel" + }, + { + "type": "string", + "enum": [ + "it" + ], + "title": "Italy" + }, + { + "type": "string", + "enum": [ + "jm" + ], + "title": "Jamaica" + }, + { + "type": "string", + "enum": [ + "jo" + ], + "title": "Jordan" + }, + { + "type": "string", + "enum": [ + "jp" + ], + "title": "Japan" + }, + { + "type": "string", + "enum": [ + "kz" + ], + "title": "Kazakhstan" + }, + { + "type": "string", + "enum": [ + "ke" + ], + "title": "Kenya" + }, + { + "type": "string", + "enum": [ + "kg" + ], + "title": "Kyrgyzstan" + }, + { + "type": "string", + "enum": [ + "kh" + ], + "title": "Cambodia" + }, + { + "type": "string", + "enum": [ + "ki" + ], + "title": "Kiribati" + }, + { + "type": "string", + "enum": [ + "kn" + ], + "title": "Saint Kitts and Nevis" + }, + { + "type": "string", + "enum": [ + "kr" + ], + "title": "South Korea" + }, + { + "type": "string", + "enum": [ + "kw" + ], + "title": "Kuwait" + }, + { + "type": "string", + "enum": [ + "la" + ], + "title": "Lao People's Democratic Republic" + }, + { + "type": "string", + "enum": [ + "lb" + ], + "title": "Lebanon" + }, + { + "type": "string", + "enum": [ + "lr" + ], + "title": "Liberia" + }, + { + "type": "string", + "enum": [ + "ly" + ], + "title": "Libya" + }, + { + "type": "string", + "enum": [ + "lc" + ], + "title": "Saint Lucia" + }, + { + "type": "string", + "enum": [ + "li" + ], + "title": "Liechtenstein" + }, + { + "type": "string", + "enum": [ + "lk" + ], + "title": "Sri Lanka" + }, + { + "type": "string", + "enum": [ + "ls" + ], + "title": "Lesotho" + }, + { + "type": "string", + "enum": [ + "lt" + ], + "title": "Lithuania" + }, + { + "type": "string", + "enum": [ + "lu" + ], + "title": "Luxembourg" + }, + { + "type": "string", + "enum": [ + "lv" + ], + "title": "Latvia" + }, + { + "type": "string", + "enum": [ + "ma" + ], + "title": "Morocco" + }, + { + "type": "string", + "enum": [ + "mc" + ], + "title": "Monaco" + }, + { + "type": "string", + "enum": [ + "md" + ], + "title": "Moldova" + }, + { + "type": "string", + "enum": [ + "mg" + ], + "title": "Madagascar" + }, + { + "type": "string", + "enum": [ + "mv" + ], + "title": "Maldives" + }, + { + "type": "string", + "enum": [ + "mx" + ], + "title": "Mexico" + }, + { + "type": "string", + "enum": [ + "mh" + ], + "title": "Marshall Islands" + }, + { + "type": "string", + "enum": [ + "mk" + ], + "title": "North Macedonia" + }, + { + "type": "string", + "enum": [ + "ml" + ], + "title": "Mali" + }, + { + "type": "string", + "enum": [ + "mt" + ], + "title": "Malta" + }, + { + "type": "string", + "enum": [ + "mm" + ], + "title": "Myanmar" + }, + { + "type": "string", + "enum": [ + "me" + ], + "title": "Montenegro" + }, + { + "type": "string", + "enum": [ + "mn" + ], + "title": "Mongolia" + }, + { + "type": "string", + "enum": [ + "mz" + ], + "title": "Mozambique" + }, + { + "type": "string", + "enum": [ + "mr" + ], + "title": "Mauritania" + }, + { + "type": "string", + "enum": [ + "mu" + ], + "title": "Mauritius" + }, + { + "type": "string", + "enum": [ + "mw" + ], + "title": "Malawi" + }, + { + "type": "string", + "enum": [ + "my" + ], + "title": "Malaysia" + }, + { + "type": "string", + "enum": [ + "na" + ], + "title": "Namibia" + }, + { + "type": "string", + "enum": [ + "ne" + ], + "title": "Niger" + }, + { + "type": "string", + "enum": [ + "ng" + ], + "title": "Nigeria" + }, + { + "type": "string", + "enum": [ + "ni" + ], + "title": "Nicaragua" + }, + { + "type": "string", + "enum": [ + "nl" + ], + "title": "Netherlands" + }, + { + "type": "string", + "enum": [ + "no" + ], + "title": "Norway" + }, + { + "type": "string", + "enum": [ + "np" + ], + "title": "Nepal" + }, + { + "type": "string", + "enum": [ + "nr" + ], + "title": "Nauru" + }, + { + "type": "string", + "enum": [ + "nz" + ], + "title": "New Zealand" + }, + { + "type": "string", + "enum": [ + "om" + ], + "title": "Oman" + }, + { + "type": "string", + "enum": [ + "pk" + ], + "title": "Pakistan" + }, + { + "type": "string", + "enum": [ + "pa" + ], + "title": "Panama" + }, + { + "type": "string", + "enum": [ + "pe" + ], + "title": "Peru" + }, + { + "type": "string", + "enum": [ + "ph" + ], + "title": "Philippines" + }, + { + "type": "string", + "enum": [ + "pw" + ], + "title": "Palau" + }, + { + "type": "string", + "enum": [ + "pg" + ], + "title": "Papua New Guinea" + }, + { + "type": "string", + "enum": [ + "pl" + ], + "title": "Poland" + }, + { + "type": "string", + "enum": [ + "pf" + ], + "title": "French Polynesia" + }, + { + "type": "string", + "enum": [ + "kp" + ], + "title": "North Korea" + }, + { + "type": "string", + "enum": [ + "pt" + ], + "title": "Portugal" + }, + { + "type": "string", + "enum": [ + "py" + ], + "title": "Paraguay" + }, + { + "type": "string", + "enum": [ + "qa" + ], + "title": "Qatar" + }, + { + "type": "string", + "enum": [ + "ro" + ], + "title": "Romania" + }, + { + "type": "string", + "enum": [ + "ru" + ], + "title": "Russia" + }, + { + "type": "string", + "enum": [ + "rw" + ], + "title": "Rwanda" + }, + { + "type": "string", + "enum": [ + "sa" + ], + "title": "Saudi Arabia" + }, + { + "type": "string", + "enum": [ + "sd" + ], + "title": "Sudan" + }, + { + "type": "string", + "enum": [ + "sn" + ], + "title": "Senegal" + }, + { + "type": "string", + "enum": [ + "sg" + ], + "title": "Singapore" + }, + { + "type": "string", + "enum": [ + "sb" + ], + "title": "Solomon Islands" + }, + { + "type": "string", + "enum": [ + "sl" + ], + "title": "Sierra Leone" + }, + { + "type": "string", + "enum": [ + "sv" + ], + "title": "El Salvador" + }, + { + "type": "string", + "enum": [ + "sm" + ], + "title": "San Marino" + }, + { + "type": "string", + "enum": [ + "so" + ], + "title": "Somalia" + }, + { + "type": "string", + "enum": [ + "rs" + ], + "title": "Serbia" + }, + { + "type": "string", + "enum": [ + "ss" + ], + "title": "South Sudan" + }, + { + "type": "string", + "enum": [ + "st" + ], + "title": "Sao Tome and Principe" + }, + { + "type": "string", + "enum": [ + "sr" + ], + "title": "Suriname" + }, + { + "type": "string", + "enum": [ + "sk" + ], + "title": "Slovakia" + }, + { + "type": "string", + "enum": [ + "si" + ], + "title": "Slovenia" + }, + { + "type": "string", + "enum": [ + "se" + ], + "title": "Sweden" + }, + { + "type": "string", + "enum": [ + "sz" + ], + "title": "Eswatini" + }, + { + "type": "string", + "enum": [ + "sc" + ], + "title": "Seychelles" + }, + { + "type": "string", + "enum": [ + "sy" + ], + "title": "Syria" + }, + { + "type": "string", + "enum": [ + "td" + ], + "title": "Chad" + }, + { + "type": "string", + "enum": [ + "tg" + ], + "title": "Togo" + }, + { + "type": "string", + "enum": [ + "th" + ], + "title": "Thailand" + }, + { + "type": "string", + "enum": [ + "tj" + ], + "title": "Tajikistan" + }, + { + "type": "string", + "enum": [ + "tm" + ], + "title": "Turkmenistan" + }, + { + "type": "string", + "enum": [ + "tl" + ], + "title": "Timor-Leste" + }, + { + "type": "string", + "enum": [ + "to" + ], + "title": "Tonga" + }, + { + "type": "string", + "enum": [ + "tt" + ], + "title": "Trinidad and Tobago" + }, + { + "type": "string", + "enum": [ + "tn" + ], + "title": "Tunisia" + }, + { + "type": "string", + "enum": [ + "tr" + ], + "title": "Turkey" + }, + { + "type": "string", + "enum": [ + "tv" + ], + "title": "Tuvalu" + }, + { + "type": "string", + "enum": [ + "tz" + ], + "title": "Tanzania" + }, + { + "type": "string", + "enum": [ + "ug" + ], + "title": "Uganda" + }, + { + "type": "string", + "enum": [ + "ua" + ], + "title": "Ukraine" + }, + { + "type": "string", + "enum": [ + "uy" + ], + "title": "Uruguay" + }, + { + "type": "string", + "enum": [ + "us" + ], + "title": "United States" + }, + { + "type": "string", + "enum": [ + "uz" + ], + "title": "Uzbekistan" + }, + { + "type": "string", + "enum": [ + "va" + ], + "title": "Vatican City" + }, + { + "type": "string", + "enum": [ + "vc" + ], + "title": "Saint Vincent and the Grenadines" + }, + { + "type": "string", + "enum": [ + "ve" + ], + "title": "Venezuela" + }, + { + "type": "string", + "enum": [ + "vn" + ], + "title": "Vietnam" + }, + { + "type": "string", + "enum": [ + "vu" + ], + "title": "Vanuatu" + }, + { + "type": "string", + "enum": [ + "ws" + ], + "title": "Samoa" + }, + { + "type": "string", + "enum": [ + "ye" + ], + "title": "Yemen" + }, + { + "type": "string", + "enum": [ + "za" + ], + "title": "South Africa" + }, + { + "type": "string", + "enum": [ + "zm" + ], + "title": "Zambia" + }, + { + "type": "string", + "enum": [ + "zw" + ], + "title": "Zimbabwe" + } + ] + }, + "in": "path" + }, + { + "name": "width", + "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "height", + "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "quality", + "description": "Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": -1, + "default": -1 + }, + "in": "query" + } + ] + } + }, + "\/avatars\/image": { + "get": { + "summary": "Get image from URL", + "operationId": "avatarsGetImage", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to fetch a remote image URL and crop it to any image size you want. This endpoint is very useful if you need to crop and display remote images in your app or in case you want to make sure a 3rd party image is properly served using a TLS protocol.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 400x400px.\n\nThis endpoint does not follow HTTP redirects.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/*": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-image.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md", + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "url", + "description": "Image URL which you want to crop.", + "required": true, + "schema": { + "type": "string", + "format": "url", + "example": "https:\/\/example.com" + }, + "in": "query" + }, + { + "name": "width", + "description": "Resize preview image width, Pass an integer between 0 to 2000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 400 + }, + "in": "query" + }, + { + "name": "height", + "description": "Resize preview image height, Pass an integer between 0 to 2000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 400 + }, + "in": "query" + } + ] + } + }, + "\/avatars\/initials": { + "get": { + "summary": "Get user initials", + "operationId": "avatarsGetInitials", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to show your user initials avatar icon on your website or app. By default, this route will try to print your logged-in user name or email initials. You can also overwrite the user name if you pass the 'name' parameter. If no name is given and no user is logged, an empty avatar will be returned.\n\nYou can use the color and background params to change the avatar colors. By default, a random theme will be selected. The random theme will persist for the user's initials when reloading the same theme will always return for the same initials.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-initials.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md", + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "name", + "description": "Full Name. When empty, current user name or email will be used. Max length: 128 chars.", + "required": false, + "schema": { + "type": "string", + "example": "", + "default": "" + }, + "in": "query" + }, + { + "name": "width", + "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 500 + }, + "in": "query" + }, + { + "name": "height", + "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 500 + }, + "in": "query" + }, + { + "name": "background", + "description": "Changes background color. By default a random color will be picked and stay will persistent to the given name.", + "required": false, + "schema": { + "type": "string", + "default": "" + }, + "in": "query" + } + ] + } + }, + "\/avatars\/photo": { + "get": { + "summary": "Get user photo", + "operationId": "avatarsGetPhoto", + "tags": [ + "avatars" + ], + "description": "Returns the best available profile photo for the currently authenticated user. The endpoint tries each source in priority order and returns the first successful result: Gravatar, Libavatar, Appwrite Initials, built-in static fallback file.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/*": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-photo.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "width", + "description": "Output image width in pixels. Pass an integer between 0 and 2000. Defaults to 256.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 256 + }, + "in": "query" + }, + { + "name": "height", + "description": "Output image height in pixels. Pass an integer between 0 and 2000. Defaults to 256.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 256 + }, + "in": "query" + }, + { + "name": "quality", + "description": "Output image quality between 0 and 100. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "output", + "description": "Output image format. Defaults to 'png'.", + "required": false, + "schema": { + "type": "string", + "example": "png", + "default": "png" + }, + "in": "query" + }, + { + "name": "rating", + "description": "Maximum image rating to fetch from Gravatar\/Libravatar. Defaults to 'g'.", + "required": false, + "schema": { + "type": "string", + "example": "g", + "default": "g" + }, + "in": "query" + } + ] + } + }, + "\/avatars\/qr": { + "get": { + "summary": "Get QR code", + "operationId": "avatarsGetQR", + "tags": [ + "avatars" + ], + "description": "Converts a given plain text to a QR code image. You can use the query parameters to change the size and style of the resulting image.\n", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-qr.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md", + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "text", + "description": "Plain text to be converted to QR code image.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "query" + }, + { + "name": "size", + "description": "QR code size. Pass an integer between 1 to 1000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1, + "default": 400 + }, + "in": "query" + }, + { + "name": "margin", + "description": "Margin from edge. Pass an integer between 0 to 10. Defaults to 1.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 1 + }, + "in": "query" + }, + { + "name": "download", + "description": "Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": false + }, + "in": "query" + } + ] + } + }, + "\/avatars\/screenshots": { + "get": { + "summary": "Get webpage screenshot", + "operationId": "avatarsGetScreenshot", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to capture a screenshot of any website URL. This endpoint uses a headless browser to render the webpage and capture it as an image.\n\nYou can configure the browser viewport size, theme, user agent, geolocation, permissions, and more. Capture either just the viewport or the full page scroll.\n\nWhen width and height are specified, the image is resized accordingly. If both dimensions are 0, the API provides an image at original size. If dimensions are not specified, the default viewport size is 1280x720px.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-screenshot.md", + "rate-limit": 60, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-screenshot.md", + "auth": { + "Project": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "url", + "description": "Website URL which you want to capture.", + "required": true, + "schema": { + "type": "string", + "format": "url", + "example": "https:\/\/example.com" + }, + "in": "query" + }, + { + "name": "headers", + "description": "HTTP headers to send with the browser request. Defaults to empty.", + "required": false, + "schema": { + "type": "object", + "default": [], + "example": { + "Authorization": "Bearer token123", + "X-Custom-Header": "value" + } + }, + "in": "query" + }, + { + "name": "viewportWidth", + "description": "Browser viewport width. Pass an integer between 1 to 1920. Defaults to 1280.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1920, + "default": 1280 + }, + "in": "query" + }, + { + "name": "viewportHeight", + "description": "Browser viewport height. Pass an integer between 1 to 1080. Defaults to 720.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1080, + "default": 720 + }, + "in": "query" + }, + { + "name": "scale", + "description": "Browser scale factor. Pass a number between 0.1 to 3. Defaults to 1.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": 2, + "default": 1 + }, + "in": "query" + }, + { + "name": "theme", + "description": "Browser theme. Pass \"light\" or \"dark\". Defaults to \"light\".", + "required": false, + "schema": { + "type": "string", + "example": "dark", + "title": "BrowserTheme", + "oneOf": [ + { + "type": "string", + "enum": [ + "light" + ], + "title": "light" + }, + { + "type": "string", + "enum": [ + "dark" + ], + "title": "dark" + } + ], + "default": "light" + }, + "in": "query" + }, + { + "name": "userAgent", + "description": "Custom user agent string. Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "Mozilla\/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit\/605.1.15", + "default": "" + }, + "in": "query" + }, + { + "name": "fullpage", + "description": "Capture full page scroll. Pass 0 for viewport only, or 1 for full page. Defaults to 0.", + "required": false, + "schema": { + "type": "boolean", + "example": true, + "default": false + }, + "in": "query" + }, + { + "name": "locale", + "description": "Browser locale (e.g., \"en-US\", \"fr-FR\"). Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "en-US", + "default": "" + }, + "in": "query" + }, + { + "name": "timezone", + "description": "IANA timezone identifier (e.g., \"America\/New_York\", \"Europe\/London\"). Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "America\/New_York", + "title": "Timezone", + "oneOf": [ + { + "type": "string", + "enum": [ + "africa\/abidjan" + ], + "title": "africa\/abidjan" + }, + { + "type": "string", + "enum": [ + "africa\/accra" + ], + "title": "africa\/accra" + }, + { + "type": "string", + "enum": [ + "africa\/addis_ababa" + ], + "title": "africa\/addis_ababa" + }, + { + "type": "string", + "enum": [ + "africa\/algiers" + ], + "title": "africa\/algiers" + }, + { + "type": "string", + "enum": [ + "africa\/asmara" + ], + "title": "africa\/asmara" + }, + { + "type": "string", + "enum": [ + "africa\/bamako" + ], + "title": "africa\/bamako" + }, + { + "type": "string", + "enum": [ + "africa\/bangui" + ], + "title": "africa\/bangui" + }, + { + "type": "string", + "enum": [ + "africa\/banjul" + ], + "title": "africa\/banjul" + }, + { + "type": "string", + "enum": [ + "africa\/bissau" + ], + "title": "africa\/bissau" + }, + { + "type": "string", + "enum": [ + "africa\/blantyre" + ], + "title": "africa\/blantyre" + }, + { + "type": "string", + "enum": [ + "africa\/brazzaville" + ], + "title": "africa\/brazzaville" + }, + { + "type": "string", + "enum": [ + "africa\/bujumbura" + ], + "title": "africa\/bujumbura" + }, + { + "type": "string", + "enum": [ + "africa\/cairo" + ], + "title": "africa\/cairo" + }, + { + "type": "string", + "enum": [ + "africa\/casablanca" + ], + "title": "africa\/casablanca" + }, + { + "type": "string", + "enum": [ + "africa\/ceuta" + ], + "title": "africa\/ceuta" + }, + { + "type": "string", + "enum": [ + "africa\/conakry" + ], + "title": "africa\/conakry" + }, + { + "type": "string", + "enum": [ + "africa\/dakar" + ], + "title": "africa\/dakar" + }, + { + "type": "string", + "enum": [ + "africa\/dar_es_salaam" + ], + "title": "africa\/dar_es_salaam" + }, + { + "type": "string", + "enum": [ + "africa\/djibouti" + ], + "title": "africa\/djibouti" + }, + { + "type": "string", + "enum": [ + "africa\/douala" + ], + "title": "africa\/douala" + }, + { + "type": "string", + "enum": [ + "africa\/el_aaiun" + ], + "title": "africa\/el_aaiun" + }, + { + "type": "string", + "enum": [ + "africa\/freetown" + ], + "title": "africa\/freetown" + }, + { + "type": "string", + "enum": [ + "africa\/gaborone" + ], + "title": "africa\/gaborone" + }, + { + "type": "string", + "enum": [ + "africa\/harare" + ], + "title": "africa\/harare" + }, + { + "type": "string", + "enum": [ + "africa\/johannesburg" + ], + "title": "africa\/johannesburg" + }, + { + "type": "string", + "enum": [ + "africa\/juba" + ], + "title": "africa\/juba" + }, + { + "type": "string", + "enum": [ + "africa\/kampala" + ], + "title": "africa\/kampala" + }, + { + "type": "string", + "enum": [ + "africa\/khartoum" + ], + "title": "africa\/khartoum" + }, + { + "type": "string", + "enum": [ + "africa\/kigali" + ], + "title": "africa\/kigali" + }, + { + "type": "string", + "enum": [ + "africa\/kinshasa" + ], + "title": "africa\/kinshasa" + }, + { + "type": "string", + "enum": [ + "africa\/lagos" + ], + "title": "africa\/lagos" + }, + { + "type": "string", + "enum": [ + "africa\/libreville" + ], + "title": "africa\/libreville" + }, + { + "type": "string", + "enum": [ + "africa\/lome" + ], + "title": "africa\/lome" + }, + { + "type": "string", + "enum": [ + "africa\/luanda" + ], + "title": "africa\/luanda" + }, + { + "type": "string", + "enum": [ + "africa\/lubumbashi" + ], + "title": "africa\/lubumbashi" + }, + { + "type": "string", + "enum": [ + "africa\/lusaka" + ], + "title": "africa\/lusaka" + }, + { + "type": "string", + "enum": [ + "africa\/malabo" + ], + "title": "africa\/malabo" + }, + { + "type": "string", + "enum": [ + "africa\/maputo" + ], + "title": "africa\/maputo" + }, + { + "type": "string", + "enum": [ + "africa\/maseru" + ], + "title": "africa\/maseru" + }, + { + "type": "string", + "enum": [ + "africa\/mbabane" + ], + "title": "africa\/mbabane" + }, + { + "type": "string", + "enum": [ + "africa\/mogadishu" + ], + "title": "africa\/mogadishu" + }, + { + "type": "string", + "enum": [ + "africa\/monrovia" + ], + "title": "africa\/monrovia" + }, + { + "type": "string", + "enum": [ + "africa\/nairobi" + ], + "title": "africa\/nairobi" + }, + { + "type": "string", + "enum": [ + "africa\/ndjamena" + ], + "title": "africa\/ndjamena" + }, + { + "type": "string", + "enum": [ + "africa\/niamey" + ], + "title": "africa\/niamey" + }, + { + "type": "string", + "enum": [ + "africa\/nouakchott" + ], + "title": "africa\/nouakchott" + }, + { + "type": "string", + "enum": [ + "africa\/ouagadougou" + ], + "title": "africa\/ouagadougou" + }, + { + "type": "string", + "enum": [ + "africa\/porto-novo" + ], + "title": "africa\/porto-novo" + }, + { + "type": "string", + "enum": [ + "africa\/sao_tome" + ], + "title": "africa\/sao_tome" + }, + { + "type": "string", + "enum": [ + "africa\/tripoli" + ], + "title": "africa\/tripoli" + }, + { + "type": "string", + "enum": [ + "africa\/tunis" + ], + "title": "africa\/tunis" + }, + { + "type": "string", + "enum": [ + "africa\/windhoek" + ], + "title": "africa\/windhoek" + }, + { + "type": "string", + "enum": [ + "america\/adak" + ], + "title": "america\/adak" + }, + { + "type": "string", + "enum": [ + "america\/anchorage" + ], + "title": "america\/anchorage" + }, + { + "type": "string", + "enum": [ + "america\/anguilla" + ], + "title": "america\/anguilla" + }, + { + "type": "string", + "enum": [ + "america\/antigua" + ], + "title": "america\/antigua" + }, + { + "type": "string", + "enum": [ + "america\/araguaina" + ], + "title": "america\/araguaina" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/buenos_aires" + ], + "title": "america\/argentina\/buenos_aires" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/catamarca" + ], + "title": "america\/argentina\/catamarca" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/cordoba" + ], + "title": "america\/argentina\/cordoba" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/jujuy" + ], + "title": "america\/argentina\/jujuy" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/la_rioja" + ], + "title": "america\/argentina\/la_rioja" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/mendoza" + ], + "title": "america\/argentina\/mendoza" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/rio_gallegos" + ], + "title": "america\/argentina\/rio_gallegos" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/salta" + ], + "title": "america\/argentina\/salta" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/san_juan" + ], + "title": "america\/argentina\/san_juan" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/san_luis" + ], + "title": "america\/argentina\/san_luis" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/tucuman" + ], + "title": "america\/argentina\/tucuman" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/ushuaia" + ], + "title": "america\/argentina\/ushuaia" + }, + { + "type": "string", + "enum": [ + "america\/aruba" + ], + "title": "america\/aruba" + }, + { + "type": "string", + "enum": [ + "america\/asuncion" + ], + "title": "america\/asuncion" + }, + { + "type": "string", + "enum": [ + "america\/atikokan" + ], + "title": "america\/atikokan" + }, + { + "type": "string", + "enum": [ + "america\/bahia" + ], + "title": "america\/bahia" + }, + { + "type": "string", + "enum": [ + "america\/bahia_banderas" + ], + "title": "america\/bahia_banderas" + }, + { + "type": "string", + "enum": [ + "america\/barbados" + ], + "title": "america\/barbados" + }, + { + "type": "string", + "enum": [ + "america\/belem" + ], + "title": "america\/belem" + }, + { + "type": "string", + "enum": [ + "america\/belize" + ], + "title": "america\/belize" + }, + { + "type": "string", + "enum": [ + "america\/blanc-sablon" + ], + "title": "america\/blanc-sablon" + }, + { + "type": "string", + "enum": [ + "america\/boa_vista" + ], + "title": "america\/boa_vista" + }, + { + "type": "string", + "enum": [ + "america\/bogota" + ], + "title": "america\/bogota" + }, + { + "type": "string", + "enum": [ + "america\/boise" + ], + "title": "america\/boise" + }, + { + "type": "string", + "enum": [ + "america\/cambridge_bay" + ], + "title": "america\/cambridge_bay" + }, + { + "type": "string", + "enum": [ + "america\/campo_grande" + ], + "title": "america\/campo_grande" + }, + { + "type": "string", + "enum": [ + "america\/cancun" + ], + "title": "america\/cancun" + }, + { + "type": "string", + "enum": [ + "america\/caracas" + ], + "title": "america\/caracas" + }, + { + "type": "string", + "enum": [ + "america\/cayenne" + ], + "title": "america\/cayenne" + }, + { + "type": "string", + "enum": [ + "america\/cayman" + ], + "title": "america\/cayman" + }, + { + "type": "string", + "enum": [ + "america\/chicago" + ], + "title": "america\/chicago" + }, + { + "type": "string", + "enum": [ + "america\/chihuahua" + ], + "title": "america\/chihuahua" + }, + { + "type": "string", + "enum": [ + "america\/ciudad_juarez" + ], + "title": "america\/ciudad_juarez" + }, + { + "type": "string", + "enum": [ + "america\/costa_rica" + ], + "title": "america\/costa_rica" + }, + { + "type": "string", + "enum": [ + "america\/coyhaique" + ], + "title": "america\/coyhaique" + }, + { + "type": "string", + "enum": [ + "america\/creston" + ], + "title": "america\/creston" + }, + { + "type": "string", + "enum": [ + "america\/cuiaba" + ], + "title": "america\/cuiaba" + }, + { + "type": "string", + "enum": [ + "america\/curacao" + ], + "title": "america\/curacao" + }, + { + "type": "string", + "enum": [ + "america\/danmarkshavn" + ], + "title": "america\/danmarkshavn" + }, + { + "type": "string", + "enum": [ + "america\/dawson" + ], + "title": "america\/dawson" + }, + { + "type": "string", + "enum": [ + "america\/dawson_creek" + ], + "title": "america\/dawson_creek" + }, + { + "type": "string", + "enum": [ + "america\/denver" + ], + "title": "america\/denver" + }, + { + "type": "string", + "enum": [ + "america\/detroit" + ], + "title": "america\/detroit" + }, + { + "type": "string", + "enum": [ + "america\/dominica" + ], + "title": "america\/dominica" + }, + { + "type": "string", + "enum": [ + "america\/edmonton" + ], + "title": "america\/edmonton" + }, + { + "type": "string", + "enum": [ + "america\/eirunepe" + ], + "title": "america\/eirunepe" + }, + { + "type": "string", + "enum": [ + "america\/el_salvador" + ], + "title": "america\/el_salvador" + }, + { + "type": "string", + "enum": [ + "america\/fort_nelson" + ], + "title": "america\/fort_nelson" + }, + { + "type": "string", + "enum": [ + "america\/fortaleza" + ], + "title": "america\/fortaleza" + }, + { + "type": "string", + "enum": [ + "america\/glace_bay" + ], + "title": "america\/glace_bay" + }, + { + "type": "string", + "enum": [ + "america\/goose_bay" + ], + "title": "america\/goose_bay" + }, + { + "type": "string", + "enum": [ + "america\/grand_turk" + ], + "title": "america\/grand_turk" + }, + { + "type": "string", + "enum": [ + "america\/grenada" + ], + "title": "america\/grenada" + }, + { + "type": "string", + "enum": [ + "america\/guadeloupe" + ], + "title": "america\/guadeloupe" + }, + { + "type": "string", + "enum": [ + "america\/guatemala" + ], + "title": "america\/guatemala" + }, + { + "type": "string", + "enum": [ + "america\/guayaquil" + ], + "title": "america\/guayaquil" + }, + { + "type": "string", + "enum": [ + "america\/guyana" + ], + "title": "america\/guyana" + }, + { + "type": "string", + "enum": [ + "america\/halifax" + ], + "title": "america\/halifax" + }, + { + "type": "string", + "enum": [ + "america\/havana" + ], + "title": "america\/havana" + }, + { + "type": "string", + "enum": [ + "america\/hermosillo" + ], + "title": "america\/hermosillo" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/indianapolis" + ], + "title": "america\/indiana\/indianapolis" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/knox" + ], + "title": "america\/indiana\/knox" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/marengo" + ], + "title": "america\/indiana\/marengo" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/petersburg" + ], + "title": "america\/indiana\/petersburg" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/tell_city" + ], + "title": "america\/indiana\/tell_city" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/vevay" + ], + "title": "america\/indiana\/vevay" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/vincennes" + ], + "title": "america\/indiana\/vincennes" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/winamac" + ], + "title": "america\/indiana\/winamac" + }, + { + "type": "string", + "enum": [ + "america\/inuvik" + ], + "title": "america\/inuvik" + }, + { + "type": "string", + "enum": [ + "america\/iqaluit" + ], + "title": "america\/iqaluit" + }, + { + "type": "string", + "enum": [ + "america\/jamaica" + ], + "title": "america\/jamaica" + }, + { + "type": "string", + "enum": [ + "america\/juneau" + ], + "title": "america\/juneau" + }, + { + "type": "string", + "enum": [ + "america\/kentucky\/louisville" + ], + "title": "america\/kentucky\/louisville" + }, + { + "type": "string", + "enum": [ + "america\/kentucky\/monticello" + ], + "title": "america\/kentucky\/monticello" + }, + { + "type": "string", + "enum": [ + "america\/kralendijk" + ], + "title": "america\/kralendijk" + }, + { + "type": "string", + "enum": [ + "america\/la_paz" + ], + "title": "america\/la_paz" + }, + { + "type": "string", + "enum": [ + "america\/lima" + ], + "title": "america\/lima" + }, + { + "type": "string", + "enum": [ + "america\/los_angeles" + ], + "title": "america\/los_angeles" + }, + { + "type": "string", + "enum": [ + "america\/lower_princes" + ], + "title": "america\/lower_princes" + }, + { + "type": "string", + "enum": [ + "america\/maceio" + ], + "title": "america\/maceio" + }, + { + "type": "string", + "enum": [ + "america\/managua" + ], + "title": "america\/managua" + }, + { + "type": "string", + "enum": [ + "america\/manaus" + ], + "title": "america\/manaus" + }, + { + "type": "string", + "enum": [ + "america\/marigot" + ], + "title": "america\/marigot" + }, + { + "type": "string", + "enum": [ + "america\/martinique" + ], + "title": "america\/martinique" + }, + { + "type": "string", + "enum": [ + "america\/matamoros" + ], + "title": "america\/matamoros" + }, + { + "type": "string", + "enum": [ + "america\/mazatlan" + ], + "title": "america\/mazatlan" + }, + { + "type": "string", + "enum": [ + "america\/menominee" + ], + "title": "america\/menominee" + }, + { + "type": "string", + "enum": [ + "america\/merida" + ], + "title": "america\/merida" + }, + { + "type": "string", + "enum": [ + "america\/metlakatla" + ], + "title": "america\/metlakatla" + }, + { + "type": "string", + "enum": [ + "america\/mexico_city" + ], + "title": "america\/mexico_city" + }, + { + "type": "string", + "enum": [ + "america\/miquelon" + ], + "title": "america\/miquelon" + }, + { + "type": "string", + "enum": [ + "america\/moncton" + ], + "title": "america\/moncton" + }, + { + "type": "string", + "enum": [ + "america\/monterrey" + ], + "title": "america\/monterrey" + }, + { + "type": "string", + "enum": [ + "america\/montevideo" + ], + "title": "america\/montevideo" + }, + { + "type": "string", + "enum": [ + "america\/montserrat" + ], + "title": "america\/montserrat" + }, + { + "type": "string", + "enum": [ + "america\/nassau" + ], + "title": "america\/nassau" + }, + { + "type": "string", + "enum": [ + "america\/new_york" + ], + "title": "america\/new_york" + }, + { + "type": "string", + "enum": [ + "america\/nome" + ], + "title": "america\/nome" + }, + { + "type": "string", + "enum": [ + "america\/noronha" + ], + "title": "america\/noronha" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/beulah" + ], + "title": "america\/north_dakota\/beulah" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/center" + ], + "title": "america\/north_dakota\/center" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/new_salem" + ], + "title": "america\/north_dakota\/new_salem" + }, + { + "type": "string", + "enum": [ + "america\/nuuk" + ], + "title": "america\/nuuk" + }, + { + "type": "string", + "enum": [ + "america\/ojinaga" + ], + "title": "america\/ojinaga" + }, + { + "type": "string", + "enum": [ + "america\/panama" + ], + "title": "america\/panama" + }, + { + "type": "string", + "enum": [ + "america\/paramaribo" + ], + "title": "america\/paramaribo" + }, + { + "type": "string", + "enum": [ + "america\/phoenix" + ], + "title": "america\/phoenix" + }, + { + "type": "string", + "enum": [ + "america\/port-au-prince" + ], + "title": "america\/port-au-prince" + }, + { + "type": "string", + "enum": [ + "america\/port_of_spain" + ], + "title": "america\/port_of_spain" + }, + { + "type": "string", + "enum": [ + "america\/porto_velho" + ], + "title": "america\/porto_velho" + }, + { + "type": "string", + "enum": [ + "america\/puerto_rico" + ], + "title": "america\/puerto_rico" + }, + { + "type": "string", + "enum": [ + "america\/punta_arenas" + ], + "title": "america\/punta_arenas" + }, + { + "type": "string", + "enum": [ + "america\/rankin_inlet" + ], + "title": "america\/rankin_inlet" + }, + { + "type": "string", + "enum": [ + "america\/recife" + ], + "title": "america\/recife" + }, + { + "type": "string", + "enum": [ + "america\/regina" + ], + "title": "america\/regina" + }, + { + "type": "string", + "enum": [ + "america\/resolute" + ], + "title": "america\/resolute" + }, + { + "type": "string", + "enum": [ + "america\/rio_branco" + ], + "title": "america\/rio_branco" + }, + { + "type": "string", + "enum": [ + "america\/santarem" + ], + "title": "america\/santarem" + }, + { + "type": "string", + "enum": [ + "america\/santiago" + ], + "title": "america\/santiago" + }, + { + "type": "string", + "enum": [ + "america\/santo_domingo" + ], + "title": "america\/santo_domingo" + }, + { + "type": "string", + "enum": [ + "america\/sao_paulo" + ], + "title": "america\/sao_paulo" + }, + { + "type": "string", + "enum": [ + "america\/scoresbysund" + ], + "title": "america\/scoresbysund" + }, + { + "type": "string", + "enum": [ + "america\/sitka" + ], + "title": "america\/sitka" + }, + { + "type": "string", + "enum": [ + "america\/st_barthelemy" + ], + "title": "america\/st_barthelemy" + }, + { + "type": "string", + "enum": [ + "america\/st_johns" + ], + "title": "america\/st_johns" + }, + { + "type": "string", + "enum": [ + "america\/st_kitts" + ], + "title": "america\/st_kitts" + }, + { + "type": "string", + "enum": [ + "america\/st_lucia" + ], + "title": "america\/st_lucia" + }, + { + "type": "string", + "enum": [ + "america\/st_thomas" + ], + "title": "america\/st_thomas" + }, + { + "type": "string", + "enum": [ + "america\/st_vincent" + ], + "title": "america\/st_vincent" + }, + { + "type": "string", + "enum": [ + "america\/swift_current" + ], + "title": "america\/swift_current" + }, + { + "type": "string", + "enum": [ + "america\/tegucigalpa" + ], + "title": "america\/tegucigalpa" + }, + { + "type": "string", + "enum": [ + "america\/thule" + ], + "title": "america\/thule" + }, + { + "type": "string", + "enum": [ + "america\/tijuana" + ], + "title": "america\/tijuana" + }, + { + "type": "string", + "enum": [ + "america\/toronto" + ], + "title": "america\/toronto" + }, + { + "type": "string", + "enum": [ + "america\/tortola" + ], + "title": "america\/tortola" + }, + { + "type": "string", + "enum": [ + "america\/vancouver" + ], + "title": "america\/vancouver" + }, + { + "type": "string", + "enum": [ + "america\/whitehorse" + ], + "title": "america\/whitehorse" + }, + { + "type": "string", + "enum": [ + "america\/winnipeg" + ], + "title": "america\/winnipeg" + }, + { + "type": "string", + "enum": [ + "america\/yakutat" + ], + "title": "america\/yakutat" + }, + { + "type": "string", + "enum": [ + "antarctica\/casey" + ], + "title": "antarctica\/casey" + }, + { + "type": "string", + "enum": [ + "antarctica\/davis" + ], + "title": "antarctica\/davis" + }, + { + "type": "string", + "enum": [ + "antarctica\/dumontdurville" + ], + "title": "antarctica\/dumontdurville" + }, + { + "type": "string", + "enum": [ + "antarctica\/macquarie" + ], + "title": "antarctica\/macquarie" + }, + { + "type": "string", + "enum": [ + "antarctica\/mawson" + ], + "title": "antarctica\/mawson" + }, + { + "type": "string", + "enum": [ + "antarctica\/mcmurdo" + ], + "title": "antarctica\/mcmurdo" + }, + { + "type": "string", + "enum": [ + "antarctica\/palmer" + ], + "title": "antarctica\/palmer" + }, + { + "type": "string", + "enum": [ + "antarctica\/rothera" + ], + "title": "antarctica\/rothera" + }, + { + "type": "string", + "enum": [ + "antarctica\/syowa" + ], + "title": "antarctica\/syowa" + }, + { + "type": "string", + "enum": [ + "antarctica\/troll" + ], + "title": "antarctica\/troll" + }, + { + "type": "string", + "enum": [ + "antarctica\/vostok" + ], + "title": "antarctica\/vostok" + }, + { + "type": "string", + "enum": [ + "arctic\/longyearbyen" + ], + "title": "arctic\/longyearbyen" + }, + { + "type": "string", + "enum": [ + "asia\/aden" + ], + "title": "asia\/aden" + }, + { + "type": "string", + "enum": [ + "asia\/almaty" + ], + "title": "asia\/almaty" + }, + { + "type": "string", + "enum": [ + "asia\/amman" + ], + "title": "asia\/amman" + }, + { + "type": "string", + "enum": [ + "asia\/anadyr" + ], + "title": "asia\/anadyr" + }, + { + "type": "string", + "enum": [ + "asia\/aqtau" + ], + "title": "asia\/aqtau" + }, + { + "type": "string", + "enum": [ + "asia\/aqtobe" + ], + "title": "asia\/aqtobe" + }, + { + "type": "string", + "enum": [ + "asia\/ashgabat" + ], + "title": "asia\/ashgabat" + }, + { + "type": "string", + "enum": [ + "asia\/atyrau" + ], + "title": "asia\/atyrau" + }, + { + "type": "string", + "enum": [ + "asia\/baghdad" + ], + "title": "asia\/baghdad" + }, + { + "type": "string", + "enum": [ + "asia\/bahrain" + ], + "title": "asia\/bahrain" + }, + { + "type": "string", + "enum": [ + "asia\/baku" + ], + "title": "asia\/baku" + }, + { + "type": "string", + "enum": [ + "asia\/bangkok" + ], + "title": "asia\/bangkok" + }, + { + "type": "string", + "enum": [ + "asia\/barnaul" + ], + "title": "asia\/barnaul" + }, + { + "type": "string", + "enum": [ + "asia\/beirut" + ], + "title": "asia\/beirut" + }, + { + "type": "string", + "enum": [ + "asia\/bishkek" + ], + "title": "asia\/bishkek" + }, + { + "type": "string", + "enum": [ + "asia\/brunei" + ], + "title": "asia\/brunei" + }, + { + "type": "string", + "enum": [ + "asia\/chita" + ], + "title": "asia\/chita" + }, + { + "type": "string", + "enum": [ + "asia\/colombo" + ], + "title": "asia\/colombo" + }, + { + "type": "string", + "enum": [ + "asia\/damascus" + ], + "title": "asia\/damascus" + }, + { + "type": "string", + "enum": [ + "asia\/dhaka" + ], + "title": "asia\/dhaka" + }, + { + "type": "string", + "enum": [ + "asia\/dili" + ], + "title": "asia\/dili" + }, + { + "type": "string", + "enum": [ + "asia\/dubai" + ], + "title": "asia\/dubai" + }, + { + "type": "string", + "enum": [ + "asia\/dushanbe" + ], + "title": "asia\/dushanbe" + }, + { + "type": "string", + "enum": [ + "asia\/famagusta" + ], + "title": "asia\/famagusta" + }, + { + "type": "string", + "enum": [ + "asia\/gaza" + ], + "title": "asia\/gaza" + }, + { + "type": "string", + "enum": [ + "asia\/hebron" + ], + "title": "asia\/hebron" + }, + { + "type": "string", + "enum": [ + "asia\/ho_chi_minh" + ], + "title": "asia\/ho_chi_minh" + }, + { + "type": "string", + "enum": [ + "asia\/hong_kong" + ], + "title": "asia\/hong_kong" + }, + { + "type": "string", + "enum": [ + "asia\/hovd" + ], + "title": "asia\/hovd" + }, + { + "type": "string", + "enum": [ + "asia\/irkutsk" + ], + "title": "asia\/irkutsk" + }, + { + "type": "string", + "enum": [ + "asia\/jakarta" + ], + "title": "asia\/jakarta" + }, + { + "type": "string", + "enum": [ + "asia\/jayapura" + ], + "title": "asia\/jayapura" + }, + { + "type": "string", + "enum": [ + "asia\/jerusalem" + ], + "title": "asia\/jerusalem" + }, + { + "type": "string", + "enum": [ + "asia\/kabul" + ], + "title": "asia\/kabul" + }, + { + "type": "string", + "enum": [ + "asia\/kamchatka" + ], + "title": "asia\/kamchatka" + }, + { + "type": "string", + "enum": [ + "asia\/karachi" + ], + "title": "asia\/karachi" + }, + { + "type": "string", + "enum": [ + "asia\/kathmandu" + ], + "title": "asia\/kathmandu" + }, + { + "type": "string", + "enum": [ + "asia\/khandyga" + ], + "title": "asia\/khandyga" + }, + { + "type": "string", + "enum": [ + "asia\/kolkata" + ], + "title": "asia\/kolkata" + }, + { + "type": "string", + "enum": [ + "asia\/krasnoyarsk" + ], + "title": "asia\/krasnoyarsk" + }, + { + "type": "string", + "enum": [ + "asia\/kuala_lumpur" + ], + "title": "asia\/kuala_lumpur" + }, + { + "type": "string", + "enum": [ + "asia\/kuching" + ], + "title": "asia\/kuching" + }, + { + "type": "string", + "enum": [ + "asia\/kuwait" + ], + "title": "asia\/kuwait" + }, + { + "type": "string", + "enum": [ + "asia\/macau" + ], + "title": "asia\/macau" + }, + { + "type": "string", + "enum": [ + "asia\/magadan" + ], + "title": "asia\/magadan" + }, + { + "type": "string", + "enum": [ + "asia\/makassar" + ], + "title": "asia\/makassar" + }, + { + "type": "string", + "enum": [ + "asia\/manila" + ], + "title": "asia\/manila" + }, + { + "type": "string", + "enum": [ + "asia\/muscat" + ], + "title": "asia\/muscat" + }, + { + "type": "string", + "enum": [ + "asia\/nicosia" + ], + "title": "asia\/nicosia" + }, + { + "type": "string", + "enum": [ + "asia\/novokuznetsk" + ], + "title": "asia\/novokuznetsk" + }, + { + "type": "string", + "enum": [ + "asia\/novosibirsk" + ], + "title": "asia\/novosibirsk" + }, + { + "type": "string", + "enum": [ + "asia\/omsk" + ], + "title": "asia\/omsk" + }, + { + "type": "string", + "enum": [ + "asia\/oral" + ], + "title": "asia\/oral" + }, + { + "type": "string", + "enum": [ + "asia\/phnom_penh" + ], + "title": "asia\/phnom_penh" + }, + { + "type": "string", + "enum": [ + "asia\/pontianak" + ], + "title": "asia\/pontianak" + }, + { + "type": "string", + "enum": [ + "asia\/pyongyang" + ], + "title": "asia\/pyongyang" + }, + { + "type": "string", + "enum": [ + "asia\/qatar" + ], + "title": "asia\/qatar" + }, + { + "type": "string", + "enum": [ + "asia\/qostanay" + ], + "title": "asia\/qostanay" + }, + { + "type": "string", + "enum": [ + "asia\/qyzylorda" + ], + "title": "asia\/qyzylorda" + }, + { + "type": "string", + "enum": [ + "asia\/riyadh" + ], + "title": "asia\/riyadh" + }, + { + "type": "string", + "enum": [ + "asia\/sakhalin" + ], + "title": "asia\/sakhalin" + }, + { + "type": "string", + "enum": [ + "asia\/samarkand" + ], + "title": "asia\/samarkand" + }, + { + "type": "string", + "enum": [ + "asia\/seoul" + ], + "title": "asia\/seoul" + }, + { + "type": "string", + "enum": [ + "asia\/shanghai" + ], + "title": "asia\/shanghai" + }, + { + "type": "string", + "enum": [ + "asia\/singapore" + ], + "title": "asia\/singapore" + }, + { + "type": "string", + "enum": [ + "asia\/srednekolymsk" + ], + "title": "asia\/srednekolymsk" + }, + { + "type": "string", + "enum": [ + "asia\/taipei" + ], + "title": "asia\/taipei" + }, + { + "type": "string", + "enum": [ + "asia\/tashkent" + ], + "title": "asia\/tashkent" + }, + { + "type": "string", + "enum": [ + "asia\/tbilisi" + ], + "title": "asia\/tbilisi" + }, + { + "type": "string", + "enum": [ + "asia\/tehran" + ], + "title": "asia\/tehran" + }, + { + "type": "string", + "enum": [ + "asia\/thimphu" + ], + "title": "asia\/thimphu" + }, + { + "type": "string", + "enum": [ + "asia\/tokyo" + ], + "title": "asia\/tokyo" + }, + { + "type": "string", + "enum": [ + "asia\/tomsk" + ], + "title": "asia\/tomsk" + }, + { + "type": "string", + "enum": [ + "asia\/ulaanbaatar" + ], + "title": "asia\/ulaanbaatar" + }, + { + "type": "string", + "enum": [ + "asia\/urumqi" + ], + "title": "asia\/urumqi" + }, + { + "type": "string", + "enum": [ + "asia\/ust-nera" + ], + "title": "asia\/ust-nera" + }, + { + "type": "string", + "enum": [ + "asia\/vientiane" + ], + "title": "asia\/vientiane" + }, + { + "type": "string", + "enum": [ + "asia\/vladivostok" + ], + "title": "asia\/vladivostok" + }, + { + "type": "string", + "enum": [ + "asia\/yakutsk" + ], + "title": "asia\/yakutsk" + }, + { + "type": "string", + "enum": [ + "asia\/yangon" + ], + "title": "asia\/yangon" + }, + { + "type": "string", + "enum": [ + "asia\/yekaterinburg" + ], + "title": "asia\/yekaterinburg" + }, + { + "type": "string", + "enum": [ + "asia\/yerevan" + ], + "title": "asia\/yerevan" + }, + { + "type": "string", + "enum": [ + "atlantic\/azores" + ], + "title": "atlantic\/azores" + }, + { + "type": "string", + "enum": [ + "atlantic\/bermuda" + ], + "title": "atlantic\/bermuda" + }, + { + "type": "string", + "enum": [ + "atlantic\/canary" + ], + "title": "atlantic\/canary" + }, + { + "type": "string", + "enum": [ + "atlantic\/cape_verde" + ], + "title": "atlantic\/cape_verde" + }, + { + "type": "string", + "enum": [ + "atlantic\/faroe" + ], + "title": "atlantic\/faroe" + }, + { + "type": "string", + "enum": [ + "atlantic\/madeira" + ], + "title": "atlantic\/madeira" + }, + { + "type": "string", + "enum": [ + "atlantic\/reykjavik" + ], + "title": "atlantic\/reykjavik" + }, + { + "type": "string", + "enum": [ + "atlantic\/south_georgia" + ], + "title": "atlantic\/south_georgia" + }, + { + "type": "string", + "enum": [ + "atlantic\/st_helena" + ], + "title": "atlantic\/st_helena" + }, + { + "type": "string", + "enum": [ + "atlantic\/stanley" + ], + "title": "atlantic\/stanley" + }, + { + "type": "string", + "enum": [ + "australia\/adelaide" + ], + "title": "australia\/adelaide" + }, + { + "type": "string", + "enum": [ + "australia\/brisbane" + ], + "title": "australia\/brisbane" + }, + { + "type": "string", + "enum": [ + "australia\/broken_hill" + ], + "title": "australia\/broken_hill" + }, + { + "type": "string", + "enum": [ + "australia\/darwin" + ], + "title": "australia\/darwin" + }, + { + "type": "string", + "enum": [ + "australia\/eucla" + ], + "title": "australia\/eucla" + }, + { + "type": "string", + "enum": [ + "australia\/hobart" + ], + "title": "australia\/hobart" + }, + { + "type": "string", + "enum": [ + "australia\/lindeman" + ], + "title": "australia\/lindeman" + }, + { + "type": "string", + "enum": [ + "australia\/lord_howe" + ], + "title": "australia\/lord_howe" + }, + { + "type": "string", + "enum": [ + "australia\/melbourne" + ], + "title": "australia\/melbourne" + }, + { + "type": "string", + "enum": [ + "australia\/perth" + ], + "title": "australia\/perth" + }, + { + "type": "string", + "enum": [ + "australia\/sydney" + ], + "title": "australia\/sydney" + }, + { + "type": "string", + "enum": [ + "europe\/amsterdam" + ], + "title": "europe\/amsterdam" + }, + { + "type": "string", + "enum": [ + "europe\/andorra" + ], + "title": "europe\/andorra" + }, + { + "type": "string", + "enum": [ + "europe\/astrakhan" + ], + "title": "europe\/astrakhan" + }, + { + "type": "string", + "enum": [ + "europe\/athens" + ], + "title": "europe\/athens" + }, + { + "type": "string", + "enum": [ + "europe\/belgrade" + ], + "title": "europe\/belgrade" + }, + { + "type": "string", + "enum": [ + "europe\/berlin" + ], + "title": "europe\/berlin" + }, + { + "type": "string", + "enum": [ + "europe\/bratislava" + ], + "title": "europe\/bratislava" + }, + { + "type": "string", + "enum": [ + "europe\/brussels" + ], + "title": "europe\/brussels" + }, + { + "type": "string", + "enum": [ + "europe\/bucharest" + ], + "title": "europe\/bucharest" + }, + { + "type": "string", + "enum": [ + "europe\/budapest" + ], + "title": "europe\/budapest" + }, + { + "type": "string", + "enum": [ + "europe\/busingen" + ], + "title": "europe\/busingen" + }, + { + "type": "string", + "enum": [ + "europe\/chisinau" + ], + "title": "europe\/chisinau" + }, + { + "type": "string", + "enum": [ + "europe\/copenhagen" + ], + "title": "europe\/copenhagen" + }, + { + "type": "string", + "enum": [ + "europe\/dublin" + ], + "title": "europe\/dublin" + }, + { + "type": "string", + "enum": [ + "europe\/gibraltar" + ], + "title": "europe\/gibraltar" + }, + { + "type": "string", + "enum": [ + "europe\/guernsey" + ], + "title": "europe\/guernsey" + }, + { + "type": "string", + "enum": [ + "europe\/helsinki" + ], + "title": "europe\/helsinki" + }, + { + "type": "string", + "enum": [ + "europe\/isle_of_man" + ], + "title": "europe\/isle_of_man" + }, + { + "type": "string", + "enum": [ + "europe\/istanbul" + ], + "title": "europe\/istanbul" + }, + { + "type": "string", + "enum": [ + "europe\/jersey" + ], + "title": "europe\/jersey" + }, + { + "type": "string", + "enum": [ + "europe\/kaliningrad" + ], + "title": "europe\/kaliningrad" + }, + { + "type": "string", + "enum": [ + "europe\/kirov" + ], + "title": "europe\/kirov" + }, + { + "type": "string", + "enum": [ + "europe\/kyiv" + ], + "title": "europe\/kyiv" + }, + { + "type": "string", + "enum": [ + "europe\/lisbon" + ], + "title": "europe\/lisbon" + }, + { + "type": "string", + "enum": [ + "europe\/ljubljana" + ], + "title": "europe\/ljubljana" + }, + { + "type": "string", + "enum": [ + "europe\/london" + ], + "title": "europe\/london" + }, + { + "type": "string", + "enum": [ + "europe\/luxembourg" + ], + "title": "europe\/luxembourg" + }, + { + "type": "string", + "enum": [ + "europe\/madrid" + ], + "title": "europe\/madrid" + }, + { + "type": "string", + "enum": [ + "europe\/malta" + ], + "title": "europe\/malta" + }, + { + "type": "string", + "enum": [ + "europe\/mariehamn" + ], + "title": "europe\/mariehamn" + }, + { + "type": "string", + "enum": [ + "europe\/minsk" + ], + "title": "europe\/minsk" + }, + { + "type": "string", + "enum": [ + "europe\/monaco" + ], + "title": "europe\/monaco" + }, + { + "type": "string", + "enum": [ + "europe\/moscow" + ], + "title": "europe\/moscow" + }, + { + "type": "string", + "enum": [ + "europe\/oslo" + ], + "title": "europe\/oslo" + }, + { + "type": "string", + "enum": [ + "europe\/paris" + ], + "title": "europe\/paris" + }, + { + "type": "string", + "enum": [ + "europe\/podgorica" + ], + "title": "europe\/podgorica" + }, + { + "type": "string", + "enum": [ + "europe\/prague" + ], + "title": "europe\/prague" + }, + { + "type": "string", + "enum": [ + "europe\/riga" + ], + "title": "europe\/riga" + }, + { + "type": "string", + "enum": [ + "europe\/rome" + ], + "title": "europe\/rome" + }, + { + "type": "string", + "enum": [ + "europe\/samara" + ], + "title": "europe\/samara" + }, + { + "type": "string", + "enum": [ + "europe\/san_marino" + ], + "title": "europe\/san_marino" + }, + { + "type": "string", + "enum": [ + "europe\/sarajevo" + ], + "title": "europe\/sarajevo" + }, + { + "type": "string", + "enum": [ + "europe\/saratov" + ], + "title": "europe\/saratov" + }, + { + "type": "string", + "enum": [ + "europe\/simferopol" + ], + "title": "europe\/simferopol" + }, + { + "type": "string", + "enum": [ + "europe\/skopje" + ], + "title": "europe\/skopje" + }, + { + "type": "string", + "enum": [ + "europe\/sofia" + ], + "title": "europe\/sofia" + }, + { + "type": "string", + "enum": [ + "europe\/stockholm" + ], + "title": "europe\/stockholm" + }, + { + "type": "string", + "enum": [ + "europe\/tallinn" + ], + "title": "europe\/tallinn" + }, + { + "type": "string", + "enum": [ + "europe\/tirane" + ], + "title": "europe\/tirane" + }, + { + "type": "string", + "enum": [ + "europe\/ulyanovsk" + ], + "title": "europe\/ulyanovsk" + }, + { + "type": "string", + "enum": [ + "europe\/vaduz" + ], + "title": "europe\/vaduz" + }, + { + "type": "string", + "enum": [ + "europe\/vatican" + ], + "title": "europe\/vatican" + }, + { + "type": "string", + "enum": [ + "europe\/vienna" + ], + "title": "europe\/vienna" + }, + { + "type": "string", + "enum": [ + "europe\/vilnius" + ], + "title": "europe\/vilnius" + }, + { + "type": "string", + "enum": [ + "europe\/volgograd" + ], + "title": "europe\/volgograd" + }, + { + "type": "string", + "enum": [ + "europe\/warsaw" + ], + "title": "europe\/warsaw" + }, + { + "type": "string", + "enum": [ + "europe\/zagreb" + ], + "title": "europe\/zagreb" + }, + { + "type": "string", + "enum": [ + "europe\/zurich" + ], + "title": "europe\/zurich" + }, + { + "type": "string", + "enum": [ + "indian\/antananarivo" + ], + "title": "indian\/antananarivo" + }, + { + "type": "string", + "enum": [ + "indian\/chagos" + ], + "title": "indian\/chagos" + }, + { + "type": "string", + "enum": [ + "indian\/christmas" + ], + "title": "indian\/christmas" + }, + { + "type": "string", + "enum": [ + "indian\/cocos" + ], + "title": "indian\/cocos" + }, + { + "type": "string", + "enum": [ + "indian\/comoro" + ], + "title": "indian\/comoro" + }, + { + "type": "string", + "enum": [ + "indian\/kerguelen" + ], + "title": "indian\/kerguelen" + }, + { + "type": "string", + "enum": [ + "indian\/mahe" + ], + "title": "indian\/mahe" + }, + { + "type": "string", + "enum": [ + "indian\/maldives" + ], + "title": "indian\/maldives" + }, + { + "type": "string", + "enum": [ + "indian\/mauritius" + ], + "title": "indian\/mauritius" + }, + { + "type": "string", + "enum": [ + "indian\/mayotte" + ], + "title": "indian\/mayotte" + }, + { + "type": "string", + "enum": [ + "indian\/reunion" + ], + "title": "indian\/reunion" + }, + { + "type": "string", + "enum": [ + "pacific\/apia" + ], + "title": "pacific\/apia" + }, + { + "type": "string", + "enum": [ + "pacific\/auckland" + ], + "title": "pacific\/auckland" + }, + { + "type": "string", + "enum": [ + "pacific\/bougainville" + ], + "title": "pacific\/bougainville" + }, + { + "type": "string", + "enum": [ + "pacific\/chatham" + ], + "title": "pacific\/chatham" + }, + { + "type": "string", + "enum": [ + "pacific\/chuuk" + ], + "title": "pacific\/chuuk" + }, + { + "type": "string", + "enum": [ + "pacific\/easter" + ], + "title": "pacific\/easter" + }, + { + "type": "string", + "enum": [ + "pacific\/efate" + ], + "title": "pacific\/efate" + }, + { + "type": "string", + "enum": [ + "pacific\/fakaofo" + ], + "title": "pacific\/fakaofo" + }, + { + "type": "string", + "enum": [ + "pacific\/fiji" + ], + "title": "pacific\/fiji" + }, + { + "type": "string", + "enum": [ + "pacific\/funafuti" + ], + "title": "pacific\/funafuti" + }, + { + "type": "string", + "enum": [ + "pacific\/galapagos" + ], + "title": "pacific\/galapagos" + }, + { + "type": "string", + "enum": [ + "pacific\/gambier" + ], + "title": "pacific\/gambier" + }, + { + "type": "string", + "enum": [ + "pacific\/guadalcanal" + ], + "title": "pacific\/guadalcanal" + }, + { + "type": "string", + "enum": [ + "pacific\/guam" + ], + "title": "pacific\/guam" + }, + { + "type": "string", + "enum": [ + "pacific\/honolulu" + ], + "title": "pacific\/honolulu" + }, + { + "type": "string", + "enum": [ + "pacific\/kanton" + ], + "title": "pacific\/kanton" + }, + { + "type": "string", + "enum": [ + "pacific\/kiritimati" + ], + "title": "pacific\/kiritimati" + }, + { + "type": "string", + "enum": [ + "pacific\/kosrae" + ], + "title": "pacific\/kosrae" + }, + { + "type": "string", + "enum": [ + "pacific\/kwajalein" + ], + "title": "pacific\/kwajalein" + }, + { + "type": "string", + "enum": [ + "pacific\/majuro" + ], + "title": "pacific\/majuro" + }, + { + "type": "string", + "enum": [ + "pacific\/marquesas" + ], + "title": "pacific\/marquesas" + }, + { + "type": "string", + "enum": [ + "pacific\/midway" + ], + "title": "pacific\/midway" + }, + { + "type": "string", + "enum": [ + "pacific\/nauru" + ], + "title": "pacific\/nauru" + }, + { + "type": "string", + "enum": [ + "pacific\/niue" + ], + "title": "pacific\/niue" + }, + { + "type": "string", + "enum": [ + "pacific\/norfolk" + ], + "title": "pacific\/norfolk" + }, + { + "type": "string", + "enum": [ + "pacific\/noumea" + ], + "title": "pacific\/noumea" + }, + { + "type": "string", + "enum": [ + "pacific\/pago_pago" + ], + "title": "pacific\/pago_pago" + }, + { + "type": "string", + "enum": [ + "pacific\/palau" + ], + "title": "pacific\/palau" + }, + { + "type": "string", + "enum": [ + "pacific\/pitcairn" + ], + "title": "pacific\/pitcairn" + }, + { + "type": "string", + "enum": [ + "pacific\/pohnpei" + ], + "title": "pacific\/pohnpei" + }, + { + "type": "string", + "enum": [ + "pacific\/port_moresby" + ], + "title": "pacific\/port_moresby" + }, + { + "type": "string", + "enum": [ + "pacific\/rarotonga" + ], + "title": "pacific\/rarotonga" + }, + { + "type": "string", + "enum": [ + "pacific\/saipan" + ], + "title": "pacific\/saipan" + }, + { + "type": "string", + "enum": [ + "pacific\/tahiti" + ], + "title": "pacific\/tahiti" + }, + { + "type": "string", + "enum": [ + "pacific\/tarawa" + ], + "title": "pacific\/tarawa" + }, + { + "type": "string", + "enum": [ + "pacific\/tongatapu" + ], + "title": "pacific\/tongatapu" + }, + { + "type": "string", + "enum": [ + "pacific\/wake" + ], + "title": "pacific\/wake" + }, + { + "type": "string", + "enum": [ + "pacific\/wallis" + ], + "title": "pacific\/wallis" + }, + { + "type": "string", + "enum": [ + "utc" + ], + "title": "utc" + } + ], + "default": "" + }, + "in": "query" + }, + { + "name": "latitude", + "description": "Geolocation latitude. Pass a number between -90 to 90. Defaults to 0.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": 37.7749, + "default": 0 + }, + "in": "query" + }, + { + "name": "longitude", + "description": "Geolocation longitude. Pass a number between -180 to 180. Defaults to 0.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": -122.4194, + "default": 0 + }, + "in": "query" + }, + { + "name": "accuracy", + "description": "Geolocation accuracy in meters. Pass a number between 0 to 100000. Defaults to 0.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": 100, + "default": 0 + }, + "in": "query" + }, + { + "name": "touch", + "description": "Enable touch support. Pass 0 for no touch, or 1 for touch enabled. Defaults to 0.", + "required": false, + "schema": { + "type": "boolean", + "example": true, + "default": false + }, + "in": "query" + }, + { + "name": "permissions", + "description": "Browser permissions to grant. Pass an array of permission names like [\"geolocation\", \"camera\", \"microphone\"]. Defaults to empty.", + "required": false, + "schema": { + "type": "array", + "items": { + "title": "BrowserPermission", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "geolocation" + ], + "title": "geolocation" + }, + { + "type": "string", + "enum": [ + "camera" + ], + "title": "camera" + }, + { + "type": "string", + "enum": [ + "microphone" + ], + "title": "microphone" + }, + { + "type": "string", + "enum": [ + "notifications" + ], + "title": "notifications" + }, + { + "type": "string", + "enum": [ + "midi" + ], + "title": "midi" + }, + { + "type": "string", + "enum": [ + "push" + ], + "title": "push" + }, + { + "type": "string", + "enum": [ + "clipboard-read" + ], + "title": "clipboard-read" + }, + { + "type": "string", + "enum": [ + "clipboard-write" + ], + "title": "clipboard-write" + }, + { + "type": "string", + "enum": [ + "payment-handler" + ], + "title": "payment-handler" + }, + { + "type": "string", + "enum": [ + "usb" + ], + "title": "usb" + }, + { + "type": "string", + "enum": [ + "bluetooth" + ], + "title": "bluetooth" + }, + { + "type": "string", + "enum": [ + "accelerometer" + ], + "title": "accelerometer" + }, + { + "type": "string", + "enum": [ + "gyroscope" + ], + "title": "gyroscope" + }, + { + "type": "string", + "enum": [ + "magnetometer" + ], + "title": "magnetometer" + }, + { + "type": "string", + "enum": [ + "ambient-light-sensor" + ], + "title": "ambient-light-sensor" + }, + { + "type": "string", + "enum": [ + "background-sync" + ], + "title": "background-sync" + }, + { + "type": "string", + "enum": [ + "persistent-storage" + ], + "title": "persistent-storage" + }, + { + "type": "string", + "enum": [ + "screen-wake-lock" + ], + "title": "screen-wake-lock" + }, + { + "type": "string", + "enum": [ + "web-share" + ], + "title": "web-share" + }, + { + "type": "string", + "enum": [ + "xr-spatial-tracking" + ], + "title": "xr-spatial-tracking" + } + ] + }, + "example": [ + "geolocation", + "notifications" + ], + "default": [] + }, + "in": "query" + }, + { + "name": "sleep", + "description": "Wait time in seconds before taking the screenshot. Pass an integer between 0 to 10. Defaults to 0.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 3, + "default": 0 + }, + "in": "query" + }, + { + "name": "width", + "description": "Output image width. Pass 0 to use original width, or an integer between 1 to 2000. Defaults to 0 (original width).", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 800, + "default": 0 + }, + "in": "query" + }, + { + "name": "height", + "description": "Output image height. Pass 0 to use original height, or an integer between 1 to 2000. Defaults to 0 (original height).", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 600, + "default": 0 + }, + "in": "query" + }, + { + "name": "quality", + "description": "Screenshot quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 85, + "default": -1 + }, + "in": "query" + }, + { + "name": "output", + "description": "Output format type (jpeg, jpg, png, gif and webp).", + "required": false, + "schema": { + "type": "string", + "example": "jpeg", + "title": "ImageFormat", + "oneOf": [ + { + "type": "string", + "enum": [ + "jpg" + ], + "title": "jpg" + }, + { + "type": "string", + "enum": [ + "jpeg" + ], + "title": "jpeg" + }, + { + "type": "string", + "enum": [ + "png" + ], + "title": "png" + }, + { + "type": "string", + "enum": [ + "webp" + ], + "title": "webp" + }, + { + "type": "string", + "enum": [ + "heic" + ], + "title": "heic" + }, + { + "type": "string", + "enum": [ + "avif" + ], + "title": "avif" + }, + { + "type": "string", + "enum": [ + "gif" + ], + "title": "gif" + } + ], + "default": "" + }, + "in": "query" + } + ] + } + }, + "\/backups\/archives": { + "get": { + "summary": "List archives", + "operationId": "backupsListArchives", + "tags": [ + "backups" + ], + "description": "List all archives for a project.", + "responses": { + "200": { "description": "Backup archive list", "content": { "application\/json": { @@ -10744,34 +14724,67 @@ "type": "object", "properties": { "services": { - "type": "array", "description": "Array of services to backup", + "type": "array", "items": { + "title": "BackupServices", "type": "string", - "enum": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" - ], - "x-enum-name": "BackupServices", - "x-enum-keys": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" + "oneOf": [ + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases" + ], + "title": "dedicatedDatabases" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + } ] } }, "resourceId": { - "type": "string", "description": "Resource ID. When set, only this single resource will be backed up.", + "type": "string", "example": "", "nullable": true } @@ -11026,66 +15039,99 @@ "type": "object", "properties": { "policyId": { - "type": "string", "description": "Policy 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "default": "", "example": "" }, "services": { - "type": "array", "description": "Array of services to backup", + "type": "array", "items": { + "title": "BackupServices", "type": "string", - "enum": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" - ], - "x-enum-name": "BackupServices", - "x-enum-keys": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" + "oneOf": [ + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases" + ], + "title": "dedicatedDatabases" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + } ] } }, "resourceId": { - "type": "string", "description": "Resource ID. When set, only this single resource will be backed up.", + "type": "string", "example": "", "nullable": true }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When set to 'disabled', no backups will be taken", + "type": "boolean", "default": true, "example": false }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion", + "type": "integer", "example": 1, "format": "int32" }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" } }, "required": [ @@ -11231,25 +15277,25 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "", "nullable": true }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "schedule": { - "type": "string", - "description": "Cron expression" + "description": "Cron expression", + "type": "string" }, "enabled": { - "type": "boolean", "description": "Is Backup enabled? When set to 'disabled', No backup will be taken", + "type": "boolean", "example": false, "nullable": true } @@ -11375,39 +15421,72 @@ "type": "object", "properties": { "archiveId": { - "type": "string", "description": "Backup archive ID to restore", + "type": "string", "example": "" }, "services": { - "type": "array", "description": "Array of services to restore", + "type": "array", "items": { + "title": "BackupServices", "type": "string", - "enum": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" - ], - "x-enum-name": "BackupServices", - "x-enum-keys": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" + "oneOf": [ + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases" + ], + "title": "dedicatedDatabases" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + } ] } }, "newResourceId": { - "type": "string", "description": "Destination resource ID. Omit to restore the archived resource in place, or pass a different ID to restore alongside it as a new resource. 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.", + "type": "string", "default": "", "example": "", "x-appwrite": { @@ -11415,8 +15494,8 @@ } }, "newResourceName": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "default": "", "example": "" } @@ -11608,8 +15687,8 @@ "type": "object", "properties": { "prompt": { - "type": "string", "description": "Prompt. A string containing questions asked to the AI assistant.", + "type": "string", "example": "" } }, @@ -11923,14 +16002,22 @@ "schema": { "type": "string", "example": "appwrite", - "enum": [ - "appwrite", - "imagine" - ], - "x-enum-name": "Platform", - "x-enum-keys": [ - "appwrite", - "imagine" + "title": "Platform", + "oneOf": [ + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "imagine" + ], + "title": "imagine" + } ], "default": "appwrite" }, @@ -12265,34 +16352,218 @@ "schema": { "type": "string", "example": "rules", - "enum": [ - "rules" - ], - "x-enum-name": "ConsoleResourceType", - "x-enum-keys": [ - "rules" + "title": "ConsoleResourceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "rules" + ], + "title": "rules" + } ] }, "in": "query" } - ] + ] + } + }, + "\/console\/scopes\/organization": { + "get": { + "summary": "List organization scopes", + "operationId": "consoleListOrganizationScopes", + "tags": [ + "console" + ], + "description": "List all scopes available for organization API keys, along with a description for each scope.", + "responses": { + "200": { + "description": "Console Key Scopes List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/consoleKeyScopeList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "console", + "cookies": false, + "type": "", + "demo": "console\/list-organization-scopes.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "public", + "platforms": [ + "console" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [] + } + ] + } + }, + "\/console\/scopes\/project": { + "get": { + "summary": "List project scopes", + "operationId": "consoleListProjectScopes", + "tags": [ + "console" + ], + "description": "List all scopes available for project API keys, along with a description for each scope.", + "responses": { + "200": { + "description": "Console Key Scopes List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/consoleKeyScopeList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "console", + "cookies": false, + "type": "", + "demo": "console\/list-project-scopes.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "public", + "platforms": [ + "console" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [] + } + ] + } + }, + "\/console\/sources": { + "post": { + "summary": "Create source", + "operationId": "consoleCreateSource", + "tags": [ + "console" + ], + "description": "Create a new source.", + "responses": { + "201": { + "description": "Any", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/any" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "", + "demo": "console\/create-source.md", + "rate-limit": 50, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "public", + "platforms": [ + "console" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/console\/create-source.md", + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "ref": { + "description": "Ref param", + "type": "string", + "example": "", + "nullable": true + }, + "referrer": { + "description": "Referrer", + "type": "string", + "example": "https:\/\/example.com", + "format": "url", + "nullable": true + }, + "utmSource": { + "description": "Utm source", + "type": "string", + "example": "", + "nullable": true + }, + "utmCampaign": { + "description": "Utm campaign", + "type": "string", + "example": "", + "nullable": true + }, + "utmMedium": { + "description": "Utm medium", + "type": "string", + "example": "", + "nullable": true + } + } + } + } + } + } } }, - "\/console\/scopes\/organization": { + "\/console\/suggestions\/columns": { "get": { - "summary": "List organization scopes", - "operationId": "consoleListOrganizationScopes", + "summary": "Get column suggestions with size limits for a table, using database context and an optional user provided context", + "operationId": "consoleSuggestColumns", "tags": [ "console" ], - "description": "List all scopes available for organization API keys, along with a description for each scope.", + "description": "Suggests column names and their size limits based on the provided table name. The API will also analyze other tables in the same database to provide context-aware suggestions, ensuring consistency across schema design. Users may optionally provide custom context to further refine the suggestions.", "responses": { "200": { - "description": "Console Key Scopes List", + "description": "Columns List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/consoleKeyScopeList" + "$ref": "#\/components\/schemas\/columnList" } } } @@ -12300,19 +16571,20 @@ }, "deprecated": false, "x-appwrite": { - "group": "console", + "group": null, "cookies": false, "type": "", - "demo": "console\/list-organization-scopes.md", - "rate-limit": 0, + "demo": "console\/suggest-columns.md", + "rate-limit": 10, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "public", + "scope": "databases.read", "platforms": [ "console" ], "packaging": false, "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/console\/suggest-columns.md", "auth": { "Project": [] } @@ -12321,24 +16593,80 @@ { "Project": [] } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "query" + }, + { + "name": "tableId", + "description": "Table ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "query" + }, + { + "name": "context", + "description": "Optional user provided context to refine suggestions.", + "required": false, + "schema": { + "type": "string", + "example": "" + }, + "in": "query" + }, + { + "name": "min", + "description": "Minimum number of suggestions to generate.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1, + "default": 3 + }, + "in": "query" + }, + { + "name": "max", + "description": "Maximum number of suggestions to generate.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1, + "default": 7 + }, + "in": "query" + } ] } }, - "\/console\/scopes\/project": { + "\/console\/suggestions\/indexes": { "get": { - "summary": "List project scopes", - "operationId": "consoleListProjectScopes", + "summary": "Get index suggestions for table columns, using database context", + "operationId": "consoleSuggestIndexes", "tags": [ "console" ], - "description": "List all scopes available for project API keys, along with a description for each scope.", + "description": "Suggests database indexes for table columns based on the provided table structure and existing columns. The API will also analyze the table's column types, names, and patterns to recommend optimal indexes that improve query performance for common database operations like filtering, sorting, and searching.", "responses": { "200": { - "description": "Console Key Scopes List", + "description": "Column Indexes List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/consoleKeyScopeList" + "$ref": "#\/components\/schemas\/columnIndexList" } } } @@ -12346,19 +16674,20 @@ }, "deprecated": false, "x-appwrite": { - "group": "console", + "group": null, "cookies": false, "type": "", - "demo": "console\/list-project-scopes.md", - "rate-limit": 0, + "demo": "console\/suggest-indexes.md", + "rate-limit": 10, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "public", + "scope": "databases.read", "platforms": [ "console" ], "packaging": false, "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/console\/suggest-indexes.md", "auth": { "Project": [] } @@ -12367,19 +16696,65 @@ { "Project": [] } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "query" + }, + { + "name": "tableId", + "description": "Table ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "query" + }, + { + "name": "min", + "description": "Minimum number of suggestions to generate.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1, + "default": 1 + }, + "in": "query" + }, + { + "name": "max", + "description": "Maximum number of suggestions to generate.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1, + "default": 4 + }, + "in": "query" + } ] } }, - "\/console\/sources": { - "post": { - "summary": "Create source", - "operationId": "consoleCreateSource", + "\/console\/suggestions\/queries": { + "get": { + "summary": "Get query suggestions for a list resource from free-text intent", + "operationId": "consoleSuggestQueries", "tags": [ "console" ], - "description": "Create a new source.", + "description": "Suggest valid Appwrite query JSON objects for a supported list resource from free-text user intent. The endpoint picks a validator based on `resource` \u2014 for system resources it uses the static validator and its allowed attributes, and for user-owned table rows it loads the table schema and validates against those attributes at request time. The returned queries are guaranteed to parse and pass the relevant queries validator.\n", "responses": { - "201": { + "200": { "description": "Any", "content": { "application\/json": { @@ -12395,17 +16770,17 @@ "group": null, "cookies": false, "type": "", - "demo": "console\/create-source.md", - "rate-limit": 50, + "demo": "console\/suggest-queries.md", + "rate-limit": 10, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "public", + "scope": "databases.read", "platforms": [ "console" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/console\/create-source.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/console\/suggest-queries.md", "auth": { "Project": [] } @@ -12415,203 +16790,713 @@ "Project": [] } ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "ref": { - "type": "string", - "description": "Ref param", - "example": "", - "nullable": true - }, - "referrer": { - "type": "string", - "description": "Referrer", - "example": "https:\/\/example.com", - "format": "url", - "nullable": true - }, - "utmSource": { - "type": "string", - "description": "Utm source", - "example": "", - "nullable": true - }, - "utmCampaign": { - "type": "string", - "description": "Utm campaign", - "example": "", - "nullable": true - }, - "utmMedium": { - "type": "string", - "description": "Utm medium", - "example": "", - "nullable": true - } - } - } - } - } - } - } - }, - "\/console\/suggestions\/columns": { - "get": { - "summary": "Get column suggestions with size limits for a table, using database context and an optional user provided context", - "operationId": "consoleSuggestColumns", - "tags": [ - "console" - ], - "description": "Suggests column names and their size limits based on the provided table name. The API will also analyze other tables in the same database to provide context-aware suggestions, ensuring consistency across schema design. Users may optionally provide custom context to further refine the suggestions.", - "responses": { - "200": { - "description": "Columns List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/columnList" + "parameters": [ + { + "name": "resource", + "description": "Resource to generate queries for.", + "required": true, + "schema": { + "type": "string", + "example": "activities", + "title": "QuerySuggestionResource", + "oneOf": [ + { + "type": "string", + "enum": [ + "activities" + ], + "title": "activities" + }, + { + "type": "string", + "enum": [ + "activityevents" + ], + "title": "activity_events" + }, + { + "type": "string", + "enum": [ + "archives" + ], + "title": "archives" + }, + { + "type": "string", + "enum": [ + "credits" + ], + "title": "credits" + }, + { + "type": "string", + "enum": [ + "dnsrecords" + ], + "title": "dns_records" + }, + { + "type": "string", + "enum": [ + "domains" + ], + "title": "domains" + }, + { + "type": "string", + "enum": [ + "invoices" + ], + "title": "invoices" + }, + { + "type": "string", + "enum": [ + "paymentmethods" + ], + "title": "payment_methods" + }, + { + "type": "string", + "enum": [ + "policies" + ], + "title": "policies" + }, + { + "type": "string", + "enum": [ + "projects" + ], + "title": "projects" + }, + { + "type": "string", + "enum": [ + "restorations" + ], + "title": "restorations" + }, + { + "type": "string", + "enum": [ + "teamaggregations" + ], + "title": "team_aggregations" + }, + { + "type": "string", + "enum": [ + "teams" + ], + "title": "teams" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tables" + ], + "title": "tables" + }, + { + "type": "string", + "enum": [ + "rows" + ], + "title": "rows" + }, + { + "type": "string", + "enum": [ + "schedules" + ], + "title": "schedules" + }, + { + "type": "string", + "enum": [ + "platforms" + ], + "title": "platforms" + }, + { + "type": "string", + "enum": [ + "keys" + ], + "title": "keys" + }, + { + "type": "string", + "enum": [ + "devkeys" + ], + "title": "dev_keys" + }, + { + "type": "string", + "enum": [ + "webhooks" + ], + "title": "webhooks" + }, + { + "type": "string", + "enum": [ + "notifications" + ], + "title": "notifications" + }, + { + "type": "string", + "enum": [ + "certificates" + ], + "title": "certificates" + }, + { + "type": "string", + "enum": [ + "realtime" + ], + "title": "realtime" + }, + { + "type": "string", + "enum": [ + "rules" + ], + "title": "rules" + }, + { + "type": "string", + "enum": [ + "installations" + ], + "title": "installations" + }, + { + "type": "string", + "enum": [ + "repositories" + ], + "title": "repositories" + }, + { + "type": "string", + "enum": [ + "vcscomments" + ], + "title": "vcs_comments" + }, + { + "type": "string", + "enum": [ + "vcscommentlocks" + ], + "title": "vcs_comment_locks" + }, + { + "type": "string", + "enum": [ + "reports" + ], + "title": "reports" + }, + { + "type": "string", + "enum": [ + "insights" + ], + "title": "insights" + }, + { + "type": "string", + "enum": [ + "users" + ], + "title": "users" + }, + { + "type": "string", + "enum": [ + "cache" + ], + "title": "cache" + }, + { + "type": "string", + "enum": [ + "tokens" + ], + "title": "tokens" + }, + { + "type": "string", + "enum": [ + "authenticators" + ], + "title": "authenticators" + }, + { + "type": "string", + "enum": [ + "challenges" + ], + "title": "challenges" + }, + { + "type": "string", + "enum": [ + "sessions" + ], + "title": "sessions" + }, + { + "type": "string", + "enum": [ + "identities" + ], + "title": "identities" + }, + { + "type": "string", + "enum": [ + "memberships" + ], + "title": "memberships" + }, + { + "type": "string", + "enum": [ + "buckets" + ], + "title": "buckets" + }, + { + "type": "string", + "enum": [ + "providers" + ], + "title": "providers" + }, + { + "type": "string", + "enum": [ + "messages" + ], + "title": "messages" + }, + { + "type": "string", + "enum": [ + "topics" + ], + "title": "topics" + }, + { + "type": "string", + "enum": [ + "subscribers" + ], + "title": "subscribers" + }, + { + "type": "string", + "enum": [ + "targets" + ], + "title": "targets" + }, + { + "type": "string", + "enum": [ + "presencelogs" + ], + "title": "presence_logs" + }, + { + "type": "string", + "enum": [ + "companies" + ], + "title": "companies" + }, + { + "type": "string", + "enum": [ + "billingaddresses" + ], + "title": "billing_addresses" + }, + { + "type": "string", + "enum": [ + "billingaggregations" + ], + "title": "billing_aggregations" + }, + { + "type": "string", + "enum": [ + "billingaggregationresources" + ], + "title": "billing_aggregation_resources" + }, + { + "type": "string", + "enum": [ + "billingteamprojectaggregations" + ], + "title": "billing_team_project_aggregations" + }, + { + "type": "string", + "enum": [ + "billingteamaggregations_v2" + ], + "title": "billing_team_aggregations_v2" + }, + { + "type": "string", + "enum": [ + "billingteamaggregationresources" + ], + "title": "billing_team_aggregation_resources" + }, + { + "type": "string", + "enum": [ + "billinginvoices_v2" + ], + "title": "billing_invoices_v2" + }, + { + "type": "string", + "enum": [ + "billingaddons" + ], + "title": "billing_addons" + }, + { + "type": "string", + "enum": [ + "alerts" + ], + "title": "alerts" + }, + { + "type": "string", + "enum": [ + "payments" + ], + "title": "payments" + }, + { + "type": "string", + "enum": [ + "billingdiscounts" + ], + "title": "billing_discounts" + }, + { + "type": "string", + "enum": [ + "sources" + ], + "title": "sources" + }, + { + "type": "string", + "enum": [ + "deals" + ], + "title": "deals" + }, + { + "type": "string", + "enum": [ + "blocks" + ], + "title": "blocks" + }, + { + "type": "string", + "enum": [ + "threats" + ], + "title": "threats" + }, + { + "type": "string", + "enum": [ + "feedbacks" + ], + "title": "feedbacks" + }, + { + "type": "string", + "enum": [ + "disputes" + ], + "title": "disputes" + }, + { + "type": "string", + "enum": [ + "wafrules" + ], + "title": "waf_rules" + }, + { + "type": "string", + "enum": [ + "sh_installations" + ], + "title": "sh_installations" + }, + { + "type": "string", + "enum": [ + "migrationdatabases" + ], + "title": "migration_databases" + }, + { + "type": "string", + "enum": [ + "migrationprojects" + ], + "title": "migration_projects" + }, + { + "type": "string", + "enum": [ + "affiliatelinks" + ], + "title": "affiliate_links" + }, + { + "type": "string", + "enum": [ + "affiliatereferrals" + ], + "title": "affiliate_referrals" + }, + { + "type": "string", + "enum": [ + "affiliaterewards" + ], + "title": "affiliate_rewards" + }, + { + "type": "string", + "enum": [ + "apps" + ], + "title": "apps" + }, + { + "type": "string", + "enum": [ + "appsecrets" + ], + "title": "app_secrets" + }, + { + "type": "string", + "enum": [ + "appinstallations" + ], + "title": "app_installations" + }, + { + "type": "string", + "enum": [ + "appkeys" + ], + "title": "app_keys" + }, + { + "type": "string", + "enum": [ + "oauth2grants" + ], + "title": "oauth2_grants" + }, + { + "type": "string", + "enum": [ + "oauth2consents" + ], + "title": "oauth2_consents" + }, + { + "type": "string", + "enum": [ + "oauth2tokens" + ], + "title": "oauth2_tokens" + }, + { + "type": "string", + "enum": [ + "attributes" + ], + "title": "attributes" + }, + { + "type": "string", + "enum": [ + "indexes" + ], + "title": "indexes" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + }, + { + "type": "string", + "enum": [ + "deployments" + ], + "title": "deployments" + }, + { + "type": "string", + "enum": [ + "executions" + ], + "title": "executions" + }, + { + "type": "string", + "enum": [ + "variables" + ], + "title": "variables" + }, + { + "type": "string", + "enum": [ + "migrations" + ], + "title": "migrations" + }, + { + "type": "string", + "enum": [ + "resourcetokens" + ], + "title": "resource_tokens" + }, + { + "type": "string", + "enum": [ + "transactions" + ], + "title": "transactions" + }, + { + "type": "string", + "enum": [ + "transactionlogs" + ], + "title": "transaction_logs" + }, + { + "type": "string", + "enum": [ + "stats" + ], + "title": "stats" + }, + { + "type": "string", + "enum": [ + "dedicateddatabases" + ], + "title": "dedicated_databases" + }, + { + "type": "string", + "enum": [ + "dedicateddatabaseconfigs" + ], + "title": "dedicated_database_configs" + }, + { + "type": "string", + "enum": [ + "dedicateddatabaseruntimes" + ], + "title": "dedicated_database_runtimes" + }, + { + "type": "string", + "enum": [ + "dedicateddatabaseoperations" + ], + "title": "dedicated_database_operations" + }, + { + "type": "string", + "enum": [ + "dedicateddatabasebackups" + ], + "title": "dedicated_database_backups" + }, + { + "type": "string", + "enum": [ + "dedicateddatabaserestorations" + ], + "title": "dedicated_database_restorations" + }, + { + "type": "string", + "enum": [ + "dedicateddatabasebranches" + ], + "title": "dedicated_database_branches" } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "", - "demo": "console\/suggest-columns.md", - "rate-limit": 10, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/console\/suggest-columns.md", - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "" + ] }, "in": "query" }, { - "name": "tableId", - "description": "Table ID.", + "name": "input", + "description": "Natural language query intent used to generate filters\/sorting\/pagination.", "required": true, "schema": { "type": "string", - "example": "" - }, - "in": "query" - }, - { - "name": "context", - "description": "Optional user provided context to refine suggestions.", - "required": false, - "schema": { - "type": "string", - "example": "" - }, - "in": "query" - }, - { - "name": "min", - "description": "Minimum number of suggestions to generate.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1, - "default": 3 + "example": "" }, "in": "query" }, - { - "name": "max", - "description": "Maximum number of suggestions to generate.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1, - "default": 7 - }, - "in": "query" - } - ] - } - }, - "\/console\/suggestions\/indexes": { - "get": { - "summary": "Get index suggestions for table columns, using database context", - "operationId": "consoleSuggestIndexes", - "tags": [ - "console" - ], - "description": "Suggests database indexes for table columns based on the provided table structure and existing columns. The API will also analyze the table's column types, names, and patterns to recommend optimal indexes that improve query performance for common database operations like filtering, sorting, and searching.", - "responses": { - "200": { - "description": "Column Indexes List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/columnIndexList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "", - "demo": "console\/suggest-indexes.md", - "rate-limit": 10, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/console\/suggest-indexes.md", - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ { "name": "databaseId", - "description": "Database ID.", - "required": true, + "description": "Database ID. Required when resource is `tables` or `rows`.", + "required": false, "schema": { "type": "string", "example": "" @@ -12620,56 +17505,32 @@ }, { "name": "tableId", - "description": "Table ID.", - "required": true, + "description": "Table ID. Required when resource is `rows`.", + "required": false, "schema": { "type": "string", "example": "" }, "in": "query" - }, - { - "name": "min", - "description": "Minimum number of suggestions to generate.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1, - "default": 1 - }, - "in": "query" - }, - { - "name": "max", - "description": "Maximum number of suggestions to generate.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1, - "default": 4 - }, - "in": "query" } ] } }, - "\/console\/suggestions\/queries": { + "\/console\/templates\/email\/{templateId}": { "get": { - "summary": "Get query suggestions for a list resource from free-text intent", - "operationId": "consoleSuggestQueries", + "summary": "Get email template", + "operationId": "consoleGetEmailTemplate", "tags": [ "console" ], - "description": "Suggest valid Appwrite query JSON objects for a supported list resource from free-text user intent. The endpoint picks a validator based on `resource` \u2014 for system resources it uses the static validator and its allowed attributes, and for user-owned table rows it loads the table schema and validates against those attributes at request time. The returned queries are guaranteed to parse and pass the relevant queries validator.\n", + "description": "Get the Appwrite built-in default email template for the specified type and locale. Always returns the unmodified default, ignoring any custom project overrides.", "responses": { "200": { - "description": "Any", + "description": "EmailTemplate", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/any" + "$ref": "#\/components\/schemas\/emailTemplate" } } } @@ -12680,17 +17541,16 @@ "group": null, "cookies": false, "type": "", - "demo": "console\/suggest-queries.md", - "rate-limit": 10, + "demo": "console\/get-email-template.md", + "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", + "scope": "public", "platforms": [ "console" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/console\/suggest-queries.md", "auth": { "Project": [] } @@ -12702,595 +17562,995 @@ ], "parameters": [ { - "name": "resource", - "description": "Resource to generate queries for.", + "name": "templateId", + "description": "Email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", "required": true, "schema": { "type": "string", - "example": "activities", - "enum": [ - "activities", - "activityevents", - "archives", - "credits", - "dnsrecords", - "domains", - "invoices", - "paymentmethods", - "policies", - "projects", - "restorations", - "teamaggregations", - "teams", - "databases", - "tables", - "rows", - "schedules", - "platforms", - "keys", - "devkeys", - "webhooks", - "notifications", - "certificates", - "realtime", - "rules", - "installations", - "repositories", - "vcscomments", - "vcscommentlocks", - "reports", - "insights", - "users", - "cache", - "tokens", - "authenticators", - "challenges", - "sessions", - "identities", - "memberships", - "buckets", - "providers", - "messages", - "topics", - "subscribers", - "targets", - "presencelogs", - "companies", - "billingaddresses", - "billingaggregations", - "billingaggregationresources", - "billingteamprojectaggregations", - "billingteamaggregations_v2", - "billingteamaggregationresources", - "billinginvoices_v2", - "billingaddons", - "alerts", - "payments", - "billingdiscounts", - "sources", - "deals", - "blocks", - "threats", - "feedbacks", - "disputes", - "wafrules", - "sh_installations", - "migrationdatabases", - "migrationprojects", - "affiliatelinks", - "affiliatereferrals", - "affiliaterewards", - "apps", - "appsecrets", - "appinstallations", - "appkeys", - "oauth2grants", - "oauth2consents", - "oauth2tokens", - "attributes", - "indexes", - "functions", - "sites", - "deployments", - "executions", - "variables", - "migrations", - "resourcetokens", - "transactions", - "transactionlogs", - "stats", - "dedicateddatabases", - "dedicateddatabaseconfigs", - "dedicateddatabaseruntimes", - "dedicateddatabaseoperations", - "dedicateddatabasebackups", - "dedicateddatabaserestorations", - "dedicateddatabasebranches" - ], - "x-enum-name": "QuerySuggestionResource", - "x-enum-keys": [ - "activities", - "activity_events", - "archives", - "credits", - "dns_records", - "domains", - "invoices", - "payment_methods", - "policies", - "projects", - "restorations", - "team_aggregations", - "teams", - "databases", - "tables", - "rows", - "schedules", - "platforms", - "keys", - "dev_keys", - "webhooks", - "notifications", - "certificates", - "realtime", - "rules", - "installations", - "repositories", - "vcs_comments", - "vcs_comment_locks", - "reports", - "insights", - "users", - "cache", - "tokens", - "authenticators", - "challenges", - "sessions", - "identities", - "memberships", - "buckets", - "providers", - "messages", - "topics", - "subscribers", - "targets", - "presence_logs", - "companies", - "billing_addresses", - "billing_aggregations", - "billing_aggregation_resources", - "billing_team_project_aggregations", - "billing_team_aggregations_v2", - "billing_team_aggregation_resources", - "billing_invoices_v2", - "billing_addons", - "alerts", - "payments", - "billing_discounts", - "sources", - "deals", - "blocks", - "threats", - "feedbacks", - "disputes", - "waf_rules", - "sh_installations", - "migration_databases", - "migration_projects", - "affiliate_links", - "affiliate_referrals", - "affiliate_rewards", - "apps", - "app_secrets", - "app_installations", - "app_keys", - "oauth2_grants", - "oauth2_consents", - "oauth2_tokens", - "attributes", - "indexes", - "functions", - "sites", - "deployments", - "executions", - "variables", - "migrations", - "resource_tokens", - "transactions", - "transaction_logs", - "stats", - "dedicated_databases", - "dedicated_database_configs", - "dedicated_database_runtimes", - "dedicated_database_operations", - "dedicated_database_backups", - "dedicated_database_restorations", - "dedicated_database_branches" + "example": "verification", + "title": "ProjectEmailTemplateId", + "oneOf": [ + { + "type": "string", + "enum": [ + "verification" + ], + "title": "verification" + }, + { + "type": "string", + "enum": [ + "magicSession" + ], + "title": "magicSession" + }, + { + "type": "string", + "enum": [ + "recovery" + ], + "title": "recovery" + }, + { + "type": "string", + "enum": [ + "invitation" + ], + "title": "invitation" + }, + { + "type": "string", + "enum": [ + "mfaChallenge" + ], + "title": "mfaChallenge" + }, + { + "type": "string", + "enum": [ + "sessionAlert" + ], + "title": "sessionAlert" + }, + { + "type": "string", + "enum": [ + "otpSession" + ], + "title": "otpSession" + } ] }, - "in": "query" - }, - { - "name": "input", - "description": "Natural language query intent used to generate filters\/sorting\/pagination.", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "query" - }, - { - "name": "databaseId", - "description": "Database ID. Required when resource is `tables` or `rows`.", - "required": false, - "schema": { - "type": "string", - "example": "" - }, - "in": "query" + "in": "path" }, { - "name": "tableId", - "description": "Table ID. Required when resource is `rows`.", + "name": "locale", + "description": "Template locale. If left empty, the fallback locale (en) will be used.", "required": false, "schema": { "type": "string", - "example": "" - }, - "in": "query" - } - ] - } - }, - "\/console\/templates\/email\/{templateId}": { - "get": { - "summary": "Get email template", - "operationId": "consoleGetEmailTemplate", - "tags": [ - "console" - ], - "description": "Get the Appwrite built-in default email template for the specified type and locale. Always returns the unmodified default, ignoring any custom project overrides.", - "responses": { - "200": { - "description": "EmailTemplate", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/emailTemplate" + "example": "af", + "title": "ProjectEmailTemplateLocale", + "oneOf": [ + { + "type": "string", + "enum": [ + "af" + ], + "title": "af" + }, + { + "type": "string", + "enum": [ + "ar-ae" + ], + "title": "ar-ae" + }, + { + "type": "string", + "enum": [ + "ar-bh" + ], + "title": "ar-bh" + }, + { + "type": "string", + "enum": [ + "ar-dz" + ], + "title": "ar-dz" + }, + { + "type": "string", + "enum": [ + "ar-eg" + ], + "title": "ar-eg" + }, + { + "type": "string", + "enum": [ + "ar-iq" + ], + "title": "ar-iq" + }, + { + "type": "string", + "enum": [ + "ar-jo" + ], + "title": "ar-jo" + }, + { + "type": "string", + "enum": [ + "ar-kw" + ], + "title": "ar-kw" + }, + { + "type": "string", + "enum": [ + "ar-lb" + ], + "title": "ar-lb" + }, + { + "type": "string", + "enum": [ + "ar-ly" + ], + "title": "ar-ly" + }, + { + "type": "string", + "enum": [ + "ar-ma" + ], + "title": "ar-ma" + }, + { + "type": "string", + "enum": [ + "ar-om" + ], + "title": "ar-om" + }, + { + "type": "string", + "enum": [ + "ar-qa" + ], + "title": "ar-qa" + }, + { + "type": "string", + "enum": [ + "ar-sa" + ], + "title": "ar-sa" + }, + { + "type": "string", + "enum": [ + "ar-sy" + ], + "title": "ar-sy" + }, + { + "type": "string", + "enum": [ + "ar-tn" + ], + "title": "ar-tn" + }, + { + "type": "string", + "enum": [ + "ar-ye" + ], + "title": "ar-ye" + }, + { + "type": "string", + "enum": [ + "as" + ], + "title": "as" + }, + { + "type": "string", + "enum": [ + "az" + ], + "title": "az" + }, + { + "type": "string", + "enum": [ + "be" + ], + "title": "be" + }, + { + "type": "string", + "enum": [ + "bg" + ], + "title": "bg" + }, + { + "type": "string", + "enum": [ + "bh" + ], + "title": "bh" + }, + { + "type": "string", + "enum": [ + "bn" + ], + "title": "bn" + }, + { + "type": "string", + "enum": [ + "bs" + ], + "title": "bs" + }, + { + "type": "string", + "enum": [ + "ca" + ], + "title": "ca" + }, + { + "type": "string", + "enum": [ + "cs" + ], + "title": "cs" + }, + { + "type": "string", + "enum": [ + "cy" + ], + "title": "cy" + }, + { + "type": "string", + "enum": [ + "da" + ], + "title": "da" + }, + { + "type": "string", + "enum": [ + "de" + ], + "title": "de" + }, + { + "type": "string", + "enum": [ + "de-at" + ], + "title": "de-at" + }, + { + "type": "string", + "enum": [ + "de-ch" + ], + "title": "de-ch" + }, + { + "type": "string", + "enum": [ + "de-li" + ], + "title": "de-li" + }, + { + "type": "string", + "enum": [ + "de-lu" + ], + "title": "de-lu" + }, + { + "type": "string", + "enum": [ + "el" + ], + "title": "el" + }, + { + "type": "string", + "enum": [ + "en" + ], + "title": "en" + }, + { + "type": "string", + "enum": [ + "en-au" + ], + "title": "en-au" + }, + { + "type": "string", + "enum": [ + "en-bz" + ], + "title": "en-bz" + }, + { + "type": "string", + "enum": [ + "en-ca" + ], + "title": "en-ca" + }, + { + "type": "string", + "enum": [ + "en-gb" + ], + "title": "en-gb" + }, + { + "type": "string", + "enum": [ + "en-ie" + ], + "title": "en-ie" + }, + { + "type": "string", + "enum": [ + "en-jm" + ], + "title": "en-jm" + }, + { + "type": "string", + "enum": [ + "en-nz" + ], + "title": "en-nz" + }, + { + "type": "string", + "enum": [ + "en-tt" + ], + "title": "en-tt" + }, + { + "type": "string", + "enum": [ + "en-us" + ], + "title": "en-us" + }, + { + "type": "string", + "enum": [ + "en-za" + ], + "title": "en-za" + }, + { + "type": "string", + "enum": [ + "eo" + ], + "title": "eo" + }, + { + "type": "string", + "enum": [ + "es" + ], + "title": "es" + }, + { + "type": "string", + "enum": [ + "es-ar" + ], + "title": "es-ar" + }, + { + "type": "string", + "enum": [ + "es-bo" + ], + "title": "es-bo" + }, + { + "type": "string", + "enum": [ + "es-cl" + ], + "title": "es-cl" + }, + { + "type": "string", + "enum": [ + "es-co" + ], + "title": "es-co" + }, + { + "type": "string", + "enum": [ + "es-cr" + ], + "title": "es-cr" + }, + { + "type": "string", + "enum": [ + "es-do" + ], + "title": "es-do" + }, + { + "type": "string", + "enum": [ + "es-ec" + ], + "title": "es-ec" + }, + { + "type": "string", + "enum": [ + "es-gt" + ], + "title": "es-gt" + }, + { + "type": "string", + "enum": [ + "es-hn" + ], + "title": "es-hn" + }, + { + "type": "string", + "enum": [ + "es-mx" + ], + "title": "es-mx" + }, + { + "type": "string", + "enum": [ + "es-ni" + ], + "title": "es-ni" + }, + { + "type": "string", + "enum": [ + "es-pa" + ], + "title": "es-pa" + }, + { + "type": "string", + "enum": [ + "es-pe" + ], + "title": "es-pe" + }, + { + "type": "string", + "enum": [ + "es-pr" + ], + "title": "es-pr" + }, + { + "type": "string", + "enum": [ + "es-py" + ], + "title": "es-py" + }, + { + "type": "string", + "enum": [ + "es-sv" + ], + "title": "es-sv" + }, + { + "type": "string", + "enum": [ + "es-uy" + ], + "title": "es-uy" + }, + { + "type": "string", + "enum": [ + "es-ve" + ], + "title": "es-ve" + }, + { + "type": "string", + "enum": [ + "et" + ], + "title": "et" + }, + { + "type": "string", + "enum": [ + "eu" + ], + "title": "eu" + }, + { + "type": "string", + "enum": [ + "fa" + ], + "title": "fa" + }, + { + "type": "string", + "enum": [ + "fi" + ], + "title": "fi" + }, + { + "type": "string", + "enum": [ + "fo" + ], + "title": "fo" + }, + { + "type": "string", + "enum": [ + "fr" + ], + "title": "fr" + }, + { + "type": "string", + "enum": [ + "fr-be" + ], + "title": "fr-be" + }, + { + "type": "string", + "enum": [ + "fr-ca" + ], + "title": "fr-ca" + }, + { + "type": "string", + "enum": [ + "fr-ch" + ], + "title": "fr-ch" + }, + { + "type": "string", + "enum": [ + "fr-lu" + ], + "title": "fr-lu" + }, + { + "type": "string", + "enum": [ + "ga" + ], + "title": "ga" + }, + { + "type": "string", + "enum": [ + "gd" + ], + "title": "gd" + }, + { + "type": "string", + "enum": [ + "he" + ], + "title": "he" + }, + { + "type": "string", + "enum": [ + "hi" + ], + "title": "hi" + }, + { + "type": "string", + "enum": [ + "hr" + ], + "title": "hr" + }, + { + "type": "string", + "enum": [ + "hu" + ], + "title": "hu" + }, + { + "type": "string", + "enum": [ + "id" + ], + "title": "id" + }, + { + "type": "string", + "enum": [ + "is" + ], + "title": "is" + }, + { + "type": "string", + "enum": [ + "it" + ], + "title": "it" + }, + { + "type": "string", + "enum": [ + "it-ch" + ], + "title": "it-ch" + }, + { + "type": "string", + "enum": [ + "ja" + ], + "title": "ja" + }, + { + "type": "string", + "enum": [ + "ji" + ], + "title": "ji" + }, + { + "type": "string", + "enum": [ + "ko" + ], + "title": "ko" + }, + { + "type": "string", + "enum": [ + "ku" + ], + "title": "ku" + }, + { + "type": "string", + "enum": [ + "lt" + ], + "title": "lt" + }, + { + "type": "string", + "enum": [ + "lv" + ], + "title": "lv" + }, + { + "type": "string", + "enum": [ + "mk" + ], + "title": "mk" + }, + { + "type": "string", + "enum": [ + "ml" + ], + "title": "ml" + }, + { + "type": "string", + "enum": [ + "ms" + ], + "title": "ms" + }, + { + "type": "string", + "enum": [ + "mt" + ], + "title": "mt" + }, + { + "type": "string", + "enum": [ + "nb" + ], + "title": "nb" + }, + { + "type": "string", + "enum": [ + "ne" + ], + "title": "ne" + }, + { + "type": "string", + "enum": [ + "nl" + ], + "title": "nl" + }, + { + "type": "string", + "enum": [ + "nl-be" + ], + "title": "nl-be" + }, + { + "type": "string", + "enum": [ + "nn" + ], + "title": "nn" + }, + { + "type": "string", + "enum": [ + "no" + ], + "title": "no" + }, + { + "type": "string", + "enum": [ + "pa" + ], + "title": "pa" + }, + { + "type": "string", + "enum": [ + "pl" + ], + "title": "pl" + }, + { + "type": "string", + "enum": [ + "pt" + ], + "title": "pt" + }, + { + "type": "string", + "enum": [ + "pt-br" + ], + "title": "pt-br" + }, + { + "type": "string", + "enum": [ + "rm" + ], + "title": "rm" + }, + { + "type": "string", + "enum": [ + "ro" + ], + "title": "ro" + }, + { + "type": "string", + "enum": [ + "ro-md" + ], + "title": "ro-md" + }, + { + "type": "string", + "enum": [ + "ru" + ], + "title": "ru" + }, + { + "type": "string", + "enum": [ + "ru-md" + ], + "title": "ru-md" + }, + { + "type": "string", + "enum": [ + "sb" + ], + "title": "sb" + }, + { + "type": "string", + "enum": [ + "sk" + ], + "title": "sk" + }, + { + "type": "string", + "enum": [ + "sl" + ], + "title": "sl" + }, + { + "type": "string", + "enum": [ + "sq" + ], + "title": "sq" + }, + { + "type": "string", + "enum": [ + "sr" + ], + "title": "sr" + }, + { + "type": "string", + "enum": [ + "sv" + ], + "title": "sv" + }, + { + "type": "string", + "enum": [ + "sv-fi" + ], + "title": "sv-fi" + }, + { + "type": "string", + "enum": [ + "th" + ], + "title": "th" + }, + { + "type": "string", + "enum": [ + "tn" + ], + "title": "tn" + }, + { + "type": "string", + "enum": [ + "tr" + ], + "title": "tr" + }, + { + "type": "string", + "enum": [ + "ts" + ], + "title": "ts" + }, + { + "type": "string", + "enum": [ + "ua" + ], + "title": "ua" + }, + { + "type": "string", + "enum": [ + "ur" + ], + "title": "ur" + }, + { + "type": "string", + "enum": [ + "ve" + ], + "title": "ve" + }, + { + "type": "string", + "enum": [ + "vi" + ], + "title": "vi" + }, + { + "type": "string", + "enum": [ + "xh" + ], + "title": "xh" + }, + { + "type": "string", + "enum": [ + "zh-cn" + ], + "title": "zh-cn" + }, + { + "type": "string", + "enum": [ + "zh-hk" + ], + "title": "zh-hk" + }, + { + "type": "string", + "enum": [ + "zh-sg" + ], + "title": "zh-sg" + }, + { + "type": "string", + "enum": [ + "zh-tw" + ], + "title": "zh-tw" + }, + { + "type": "string", + "enum": [ + "zu" + ], + "title": "zu" } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "", - "demo": "console\/get-email-template.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "public", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "templateId", - "description": "Email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", - "required": true, - "schema": { - "type": "string", - "example": "verification", - "enum": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ], - "x-enum-name": "ProjectEmailTemplateId", - "x-enum-keys": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ] - }, - "in": "path" - }, - { - "name": "locale", - "description": "Template locale. If left empty, the fallback locale (en) will be used.", - "required": false, - "schema": { - "type": "string", - "example": "af", - "enum": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" ], - "x-enum-name": "ProjectEmailTemplateLocale", - "x-enum-keys": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" - ] + "default": "" }, "in": "query" } @@ -13550,21 +18810,21 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "" }, "enabled": { - "type": "boolean", "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false } @@ -13709,8 +18969,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -13861,14 +19121,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -14011,8 +19271,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -14229,13 +19489,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "" }, "enabled": { - "type": "boolean", "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false } @@ -14498,21 +19758,21 @@ "type": "object", "properties": { "collectionId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -14522,28 +19782,28 @@ "nullable": true }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "attributes": { - "type": "array", "description": "Array of attribute definitions to create. Each attribute should contain: key (string), type (string: string, varchar, text, mediumtext, longtext, integer, bigint, double, boolean, datetime, point, linestring, polygon, email, url, ip, enum), size (integer, required for string and varchar types), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.", + "type": "array", "default": [], "items": { "type": "object" } }, "indexes": { - "type": "array", "description": "Array of index definitions to create. Each index should contain: key (string), type (string: key, fulltext, unique, spatial), attributes (array of attribute keys), orders (array of ASC\/DESC, optional), and lengths (array of integers, optional).", + "type": "array", "default": [], "items": { "type": "object" @@ -14713,13 +19973,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -14729,20 +19989,20 @@ "nullable": true }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "purge": { - "type": "boolean", "description": "When true, purge all cached list responses for this collection as part of the update. Use this to force readers to see fresh data immediately instead of waiting for the cache TTL to expire.", + "type": "boolean", "default": false, "example": false } @@ -14998,35 +20258,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when attribute is required.", + "type": "integer", "format": "int64", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -15130,31 +20390,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when attribute is required.", + "type": "integer", "format": "int64", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -15248,23 +20508,23 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "boolean", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "boolean", "example": false, "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -15368,19 +20628,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "boolean", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "boolean", "example": false, "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -15474,24 +20734,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for the attribute in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Cannot be set when attribute is required.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -15595,20 +20855,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -15702,24 +20962,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -15823,20 +21083,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -15930,30 +21190,30 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "elements": { - "type": "array", "description": "Array of enum values.", + "type": "array", "items": { "type": "string" } }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -16058,26 +21318,26 @@ "type": "object", "properties": { "elements": { - "type": "array", "description": "Updated list of enum values.", + "type": "array", "items": { "type": "string" } }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -16172,35 +21432,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "number", "description": "Minimum value.", + "type": "number", "format": "float", "nullable": true }, "max": { - "type": "number", "description": "Maximum value.", + "type": "number", "format": "float", "nullable": true }, "default": { - "type": "number", "description": "Default value. Cannot be set when required.", + "type": "number", "format": "float", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -16304,31 +21564,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "number", "description": "Minimum value.", + "type": "number", "format": "float", "nullable": true }, "max": { - "type": "number", "description": "Maximum value.", + "type": "number", "format": "float", "nullable": true }, "default": { - "type": "number", "description": "Default value. Cannot be set when required.", + "type": "number", "format": "float", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -16422,35 +21682,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when attribute is required.", + "type": "integer", "format": "int64", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -16554,31 +21814,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when attribute is required.", + "type": "integer", "format": "int64", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -16672,22 +21932,22 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value. Cannot be set when attribute is required.", + "type": "string", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -16791,18 +22051,18 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value. Cannot be set when attribute is required.", + "type": "string", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -16896,17 +22156,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ 1, @@ -17030,13 +22290,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ 1, @@ -17061,8 +22321,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -17155,29 +22415,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -17281,19 +22541,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -17387,29 +22647,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -17513,19 +22773,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -17619,17 +22879,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ 1, 2 @@ -17740,13 +23000,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ 1, 2 @@ -17758,8 +23018,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -17852,17 +23112,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ [ @@ -17995,13 +23255,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ [ @@ -18035,8 +23295,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -18129,59 +23389,90 @@ "type": "object", "properties": { "relatedCollectionId": { - "type": "string", "description": "Related Collection ID.", + "type": "string", "example": "" }, "type": { - "type": "string", "description": "Relationship type. Possible values are: oneToOne, oneToMany, manyToOne, manyToMany.", + "type": "string", "example": "oneToOne", - "enum": [ - "oneToOne", - "manyToOne", - "manyToMany", - "oneToMany" - ], - "x-enum-name": "RelationshipType", - "x-enum-keys": [ - "oneToOne", - "manyToOne", - "manyToMany", - "oneToMany" + "title": "RelationshipType", + "oneOf": [ + { + "type": "string", + "enum": [ + "oneToOne" + ], + "title": "oneToOne" + }, + { + "type": "string", + "enum": [ + "manyToOne" + ], + "title": "manyToOne" + }, + { + "type": "string", + "enum": [ + "manyToMany" + ], + "title": "manyToMany" + }, + { + "type": "string", + "enum": [ + "oneToMany" + ], + "title": "oneToMany" + } ] }, "twoWay": { - "type": "boolean", "description": "Is Two Way?", + "type": "boolean", "default": false, "example": false }, "key": { - "type": "string", "description": "Attribute Key.", + "type": "string", "nullable": true }, "twoWayKey": { - "type": "string", "description": "Two Way Attribute Key.", + "type": "string", "nullable": true }, "onDelete": { - "type": "string", "description": "Delete constraint. Possible values are: cascade, restrict, setNull.", + "type": "string", "default": "restrict", "example": "cascade", - "enum": [ - "cascade", - "restrict", - "setNull" - ], - "x-enum-name": "RelationMutate", - "x-enum-keys": [ - "cascade", - "restrict", - "setNull" + "title": "RelationMutate", + "oneOf": [ + { + "type": "string", + "enum": [ + "cascade" + ], + "title": "cascade" + }, + { + "type": "string", + "enum": [ + "restrict" + ], + "title": "restrict" + }, + { + "type": "string", + "enum": [ + "setNull" + ], + "title": "setNull" + } ] } }, @@ -18284,24 +23575,37 @@ "type": "object", "properties": { "onDelete": { - "type": "string", "description": "Delete constraint. Possible values are: cascade, restrict, setNull.", + "type": "string", "example": "cascade", - "enum": [ - "cascade", - "restrict", - "setNull" - ], - "x-enum-name": "RelationMutate", - "x-enum-keys": [ - "cascade", - "restrict", - "setNull" + "title": "RelationMutate", + "oneOf": [ + { + "type": "string", + "enum": [ + "cascade" + ], + "title": "cascade" + }, + { + "type": "string", + "enum": [ + "restrict" + ], + "title": "restrict" + }, + { + "type": "string", + "enum": [ + "setNull" + ], + "title": "setNull" + } ] }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } } @@ -18391,35 +23695,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "size": { - "type": "integer", "description": "Attribute size for text attributes, in number of characters.", + "type": "integer", "example": 1, "format": "int32" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -18524,26 +23828,26 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "size": { - "type": "integer", "description": "Maximum size of the string attribute.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -18637,29 +23941,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -18763,19 +24067,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -18869,24 +24173,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -18990,266 +24294,266 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", - "example": false - }, - "default": { - "type": "string", - "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", - "example": "https:\/\/example.com", - "format": "url", - "nullable": true - }, - "newKey": { - "type": "string", - "description": "New Attribute Key.", - "nullable": true - } - }, - "required": [ - "required", - "default" - ] - } - } - } - } - } - }, - "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar": { - "post": { - "summary": "Create varchar attribute", - "operationId": "databasesCreateVarcharAttribute", - "tags": [ - "databases" - ], - "description": "Create a varchar attribute.\n", - "responses": { - "202": { - "description": "AttributeVarchar", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/attributeVarchar" - } - } - } - } - }, - "deprecated": true, - "x-appwrite": { - "group": "attributes", - "cookies": false, - "type": "", - "demo": "databases\/create-varchar-attribute.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-varchar-attribute.md", - "deprecated": { - "since": "1.8.0", - "replaceWith": "tablesDB.createVarcharColumn" - }, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Attribute Key." - }, - "size": { - "type": "integer", - "description": "Attribute size for varchar attributes, in number of characters. Maximum size is 16381.", - "example": 1, - "format": "int32" - }, - "required": { "type": "boolean", - "description": "Is attribute required?", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", - "example": "", - "nullable": true - }, - "array": { - "type": "boolean", - "description": "Is attribute an array?", - "default": false, - "example": false - }, - "encrypt": { - "type": "boolean", - "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", - "default": false, - "example": false - } - }, - "required": [ - "key", - "size", - "required" - ] - } - } - } - } - } - }, - "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar\/{key}": { - "patch": { - "summary": "Update varchar attribute", - "operationId": "databasesUpdateVarcharAttribute", - "tags": [ - "databases" - ], - "description": "Update a varchar attribute. Changing the `default` value will not update already existing documents.\n", - "responses": { - "200": { - "description": "AttributeVarchar", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/attributeVarchar" - } - } - } - } - }, - "deprecated": true, - "x-appwrite": { - "group": "attributes", - "cookies": false, - "type": "", - "demo": "databases\/update-varchar-attribute.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-varchar-attribute.md", - "deprecated": { - "since": "1.8.0", - "replaceWith": "tablesDB.updateVarcharColumn" - }, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "path" - }, - { - "name": "key", - "description": "Attribute Key.", - "required": true, - "schema": { - "type": "string" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "required": { - "type": "boolean", - "description": "Is attribute required?", - "example": false - }, - "default": { "type": "string", - "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "example": "https:\/\/example.com", + "format": "url", + "nullable": true + }, + "newKey": { + "description": "New Attribute Key.", + "type": "string", + "nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar": { + "post": { + "summary": "Create varchar attribute", + "operationId": "databasesCreateVarcharAttribute", + "tags": [ + "databases" + ], + "description": "Create a varchar attribute.\n", + "responses": { + "202": { + "description": "AttributeVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeVarchar" + } + } + } + } + }, + "deprecated": true, + "x-appwrite": { + "group": "attributes", + "cookies": false, + "type": "", + "demo": "databases\/create-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-varchar-attribute.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "tablesDB.createVarcharColumn" + }, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "description": "Attribute Key.", + "type": "string" + }, + "size": { + "description": "Attribute size for varchar attributes, in number of characters. Maximum size is 16381.", + "type": "integer", + "example": 1, + "format": "int32" + }, + "required": { + "description": "Is attribute required?", + "type": "boolean", + "example": false + }, + "default": { + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", + "example": "", + "nullable": true + }, + "array": { + "description": "Is attribute an array?", + "type": "boolean", + "default": false, + "example": false + }, + "encrypt": { + "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", + "default": false, + "example": false + } + }, + "required": [ + "key", + "size", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/varchar\/{key}": { + "patch": { + "summary": "Update varchar attribute", + "operationId": "databasesUpdateVarcharAttribute", + "tags": [ + "databases" + ], + "description": "Update a varchar attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeVarchar", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeVarchar" + } + } + } + } + }, + "deprecated": true, + "x-appwrite": { + "group": "attributes", + "cookies": false, + "type": "", + "demo": "databases\/update-varchar-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-varchar-attribute.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "tablesDB.updateVarcharColumn" + }, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "required": { + "description": "Is attribute required?", + "type": "boolean", + "example": false + }, + "default": { + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "", "nullable": true }, "size": { - "type": "integer", "description": "Maximum size of the varchar attribute.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -19778,16 +25082,16 @@ "type": "object", "properties": { "documentId": { - "type": "string", "description": "Document 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Document data as JSON object.", + "type": "object", "default": {}, "example": { "username": "walter.obrien", @@ -19798,8 +25102,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -19809,16 +25113,16 @@ "nullable": true }, "documents": { - "type": "array", "description": "Array of documents data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -19945,15 +25249,15 @@ "type": "object", "properties": { "documents": { - "type": "array", "description": "Array of document data as JSON objects. May contain partial documents.", + "type": "array", "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -20045,8 +25349,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -20057,16 +25361,16 @@ } }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -20414,8 +25718,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include all required attributes of the document to be created or updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -20426,8 +25730,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -20437,8 +25741,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -20540,8 +25844,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -20552,8 +25856,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -20563,8 +25867,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -20766,20 +26070,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "min": { - "type": "number", "description": "Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -20892,20 +26196,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "max": { - "type": "number", "description": "Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "", "nullable": true } @@ -21093,54 +26397,80 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Index Key." + "description": "Index Key.", + "type": "string" }, "type": { - "type": "string", "description": "Index type.", + "type": "string", "example": "key", - "enum": [ - "key", - "fulltext", - "unique", - "spatial" - ], - "x-enum-name": "DatabasesIndexType", - "x-enum-keys": [ - "key", - "fulltext", - "unique", - "spatial" + "title": "DatabasesIndexType", + "oneOf": [ + { + "type": "string", + "enum": [ + "key" + ], + "title": "key" + }, + { + "type": "string", + "enum": [ + "fulltext" + ], + "title": "fulltext" + }, + { + "type": "string", + "enum": [ + "unique" + ], + "title": "unique" + }, + { + "type": "string", + "enum": [ + "spatial" + ], + "title": "spatial" + } ] }, "attributes": { - "type": "array", "description": "Array of attributes to index. Maximum of 100 attributes are allowed, each 32 characters long.", + "type": "array", "items": { "type": "string" } }, "orders": { - "type": "array", "description": "Array of index orders. Maximum of 100 orders are allowed.", + "type": "array", "default": [], "items": { + "title": "OrderBy", "type": "string", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "OrderBy", - "x-enum-keys": [ - "asc", - "desc" + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ] } }, "lengths": { - "type": "array", "description": "Length of index. Maximum of 100", + "type": "array", "default": [], "items": { "type": "integer" @@ -21444,40 +26774,40 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "" }, "enabled": { - "type": "boolean", "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Defaults to `serverless`, which creates the database on the shared pool. Any other value provisions a dedicated database on that specification.", + "type": "string", "default": "serverless", "example": "serverless" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Requires a dedicated `specification`; must be 0 for a serverless database. High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Requires a dedicated `specification`; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -21662,8 +26992,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -21806,14 +27136,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -22004,32 +27334,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "" }, "enabled": { - "type": "boolean", "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Resizing between dedicated specifications changes cpu, memory, storage and the connection ceiling via a rolling cutover with zero downtime. Moving a `serverless` database onto a dedicated specification is a data migration, not a resize.", + "type": "string", "example": "serverless", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification. High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -22255,21 +27585,21 @@ "type": "object", "properties": { "collectionId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -22279,28 +27609,28 @@ "nullable": true }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "attributes": { - "type": "array", "description": "Array of attribute definitions to create. Each attribute should contain: key (string), type (string: string, varchar, text, mediumtext, longtext, integer, bigint, double, boolean, datetime, point, linestring, polygon, email, url, ip, enum), size (integer, required for string and varchar types), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.", + "type": "array", "default": [], "items": { "type": "object" } }, "indexes": { - "type": "array", "description": "Array of index definitions to create. Each index should contain: key (string), type (string: key, fulltext, unique, spatial), attributes (array of attribute keys), orders (array of ASC\/DESC, optional), and lengths (array of integers, optional).", + "type": "array", "default": [], "items": { "type": "object" @@ -22462,13 +27792,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -22477,20 +27807,20 @@ } }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "purge": { - "type": "boolean", "description": "When true, purge all cached list responses for this collection as part of the update. Use this to force readers to see fresh data immediately instead of waiting for the cache TTL to expire.", + "type": "boolean", "default": false, "example": false } @@ -22822,16 +28152,16 @@ "type": "object", "properties": { "documentId": { - "type": "string", "description": "Document 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Document data as JSON object.", + "type": "object", "default": {}, "example": { "username": "walter.obrien", @@ -22842,8 +28172,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -22852,16 +28182,16 @@ } }, "documents": { - "type": "array", "description": "Array of documents data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } }, @@ -22979,15 +28309,15 @@ "type": "object", "properties": { "documents": { - "type": "array", "description": "Array of document data as JSON objects. May contain partial documents.", + "type": "array", "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } }, @@ -23074,22 +28404,22 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", "default": [], "example": {} }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -23417,14 +28747,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include all required fields of the document to be created or updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -23433,8 +28763,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -23531,14 +28861,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only fields and value pairs to be updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -23547,8 +28877,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -23741,19 +29071,19 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to decrement the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "min": { - "type": "number", "description": "Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", "format": "float" }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -23861,19 +29191,19 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "max": { - "type": "number", "description": "Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.", + "type": "number", "format": "float" }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "" } } @@ -24052,52 +29382,73 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Index Key." + "description": "Index Key.", + "type": "string" }, "type": { - "type": "string", "description": "Index type.", + "type": "string", "example": "key", - "enum": [ - "key", - "fulltext", - "unique" - ], - "x-enum-name": "DocumentsDBIndexType", - "x-enum-keys": [ - "key", - "fulltext", - "unique" + "title": "DocumentsDBIndexType", + "oneOf": [ + { + "type": "string", + "enum": [ + "key" + ], + "title": "key" + }, + { + "type": "string", + "enum": [ + "fulltext" + ], + "title": "fulltext" + }, + { + "type": "string", + "enum": [ + "unique" + ], + "title": "unique" + } ] }, "attributes": { - "type": "array", "description": "Array of attributes to index. Maximum of 100 attributes are allowed, each 32 characters long.", + "type": "array", "items": { "type": "string" } }, "orders": { - "type": "array", "description": "Array of index orders. Maximum of 100 orders are allowed.", + "type": "array", "default": [], "items": { + "title": "OrderBy", "type": "string", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "OrderBy", - "x-enum-keys": [ - "asc", - "desc" + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ] } }, "lengths": { - "type": "array", "description": "Length of index. Maximum of 100", + "type": "array", "default": [], "items": { "type": "integer" @@ -24331,8 +29682,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "", "nullable": true } @@ -24678,13 +30029,13 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "Team unique ID.", + "type": "string", "example": "" }, "domain": { - "type": "string", - "description": "Domain name (e.g. \"example.com\")." + "description": "Domain name (e.g. \"example.com\").", + "type": "string" } }, "required": [ @@ -24769,18 +30120,36 @@ "schema": { "type": "string", "example": "new", - "enum": [ - "new", - "transfer", - "renewal", - "trade" - ], - "x-enum-name": "DomainRegistrationType", - "x-enum-keys": [ - "new", - "transfer", - "renewal", - "trade" + "title": "DomainRegistrationType", + "oneOf": [ + { + "type": "string", + "enum": [ + "new" + ], + "title": "new" + }, + { + "type": "string", + "enum": [ + "transfer" + ], + "title": "transfer" + }, + { + "type": "string", + "enum": [ + "renewal" + ], + "title": "renewal" + }, + { + "type": "string", + "enum": [ + "trade" + ], + "title": "trade" + } ], "default": "new" }, @@ -24840,69 +30209,69 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Fully qualified domain name to purchase (for example, example.com)." + "description": "Fully qualified domain name to purchase (for example, example.com).", + "type": "string" }, "organizationId": { - "type": "string", "description": "Team ID that will own the domain.", + "type": "string", "example": "" }, "firstName": { - "type": "string", "description": "Registrant first name used for domain registration.", + "type": "string", "example": "" }, "lastName": { - "type": "string", "description": "Registrant last name used for domain registration.", + "type": "string", "example": "" }, "email": { - "type": "string", "description": "Registrant email address for registration and notices.", + "type": "string", "example": "email@example.com", "format": "email" }, "phone": { - "type": "string", "description": "Registrant phone number in E.164 format (for example, +15555551234).", + "type": "string", "example": "+12065550100", "format": "phone" }, "billingAddressId": { - "type": "string", "description": "Billing address ID used for registration contact details.", + "type": "string", "example": "" }, "addressLine3": { - "type": "string", "description": "Additional address line for the registrant (line 3).", + "type": "string", "default": "", "example": "" }, "companyName": { - "type": "string", "description": "Company or organization name for the registrant.", + "type": "string", "default": "", "example": "" }, "periodYears": { - "type": "integer", "description": "Registration term in years (1-10).", + "type": "integer", "default": 1, "example": 1, "format": "int32" }, "autoRenewal": { - "type": "boolean", "description": "Whether the domain should renew automatically after purchase.", + "type": "boolean", "default": true, "example": false }, "paymentMethodId": { - "type": "string", "description": "Payment method ID to authorize and capture the purchase.", + "type": "string", "example": "" } }, @@ -24985,8 +30354,8 @@ "type": "object", "properties": { "organizationId": { - "type": "string", "description": "Team ID that owns the domain.", + "type": "string", "example": "" } }, @@ -25084,14 +30453,22 @@ "schema": { "type": "string", "example": "premium", - "enum": [ - "premium", - "suggestion" - ], - "x-enum-name": "DomainSuggestionType", - "x-enum-keys": [ - "premium", - "suggestion" + "title": "DomainSuggestionType", + "oneOf": [ + { + "type": "string", + "enum": [ + "premium" + ], + "title": "premium" + }, + { + "type": "string", + "enum": [ + "suggestion" + ], + "title": "suggestion" + } ] }, "in": "query" @@ -25170,28 +30547,28 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name to transfer in." + "description": "Domain name to transfer in.", + "type": "string" }, "organizationId": { - "type": "string", "description": "Organization ID that this domain will belong to.", + "type": "string", "example": "" }, "authCode": { - "type": "string", "description": "Authorization code for the domain transfer.", + "type": "string", "example": "" }, "autoRenewal": { - "type": "boolean", "description": "Whether the domain should renew automatically after transfer.", + "type": "boolean", "default": true, "example": false }, "paymentMethodId": { - "type": "string", "description": "Payment method ID to authorize and capture the transfer.", + "type": "string", "example": "" } }, @@ -25270,8 +30647,8 @@ "type": "object", "properties": { "organizationId": { - "type": "string", "description": "Team ID that owns the domain.", + "type": "string", "example": "" } }, @@ -25335,13 +30712,13 @@ "type": "object", "properties": { "domainId": { - "type": "string", "description": "Domain unique ID.", + "type": "string", "example": "" }, "organizationId": { - "type": "string", "description": "Organization ID that this domain belongs to.", + "type": "string", "example": "" } }, @@ -25528,8 +30905,8 @@ "type": "object", "properties": { "autoRenewal": { - "type": "boolean", "description": "Whether the domain should renew automatically.", + "type": "boolean", "example": false } }, @@ -25605,8 +30982,8 @@ "type": "object", "properties": { "nameservers": { - "type": "array", "description": "Nameservers to set for the domain. Defaults to Appwrite nameservers when omitted.", + "type": "array", "default": [], "items": { "type": "string" @@ -26495,22 +31872,22 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", - "description": "IPv4 address for this A record." + "description": "IPv4 address for this A record.", + "type": "string" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment explaining what this record is for.", + "type": "string", "default": "", "example": "" } @@ -26599,22 +31976,22 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", - "description": "IPv4 address for this A record." + "description": "IPv4 address for this A record.", + "type": "string" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment explaining what this record is for.", + "type": "string", "default": "", "example": "" } @@ -26693,22 +32070,22 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", - "description": "IPv6 address for this AAAA record." + "description": "IPv6 address for this AAAA record.", + "type": "string" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment explaining what this record is for.", + "type": "string", "default": "", "example": "" } @@ -26797,22 +32174,22 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", - "description": "IPv6 address for this AAAA record." + "description": "IPv6 address for this AAAA record.", + "type": "string" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -26891,23 +32268,23 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name." + "description": "Record name.", + "type": "string" }, "value": { - "type": "string", "description": "Target domain for this ALIAS record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -26996,23 +32373,23 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name." + "description": "Record name.", + "type": "string" }, "value": { - "type": "string", "description": "Target domain for this ALIAS record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -27091,22 +32468,22 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name." + "description": "Record name.", + "type": "string" }, "value": { - "type": "string", - "description": "CAA value (e.g. issuer domain)." + "description": "CAA value (e.g. issuer domain).", + "type": "string" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -27195,22 +32572,22 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name." + "description": "Record name.", + "type": "string" }, "value": { - "type": "string", - "description": "CAA value (e.g. issuer domain)." + "description": "CAA value (e.g. issuer domain).", + "type": "string" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -27289,223 +32666,223 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." - }, - "value": { - "type": "string", - "description": "Canonical target for this CNAME record.", - "example": "" - }, - "ttl": { - "type": "integer", - "description": "Time to live, in seconds. Must be greater than 0.", - "example": 1, - "format": "int32" - }, - "comment": { - "type": "string", - "description": "A comment for this record.", - "default": "", - "example": "" - } - }, - "required": [ - "name", - "value", - "ttl" - ] - } - } - } - } - } - }, - "\/domains\/{domainId}\/records\/cname\/{recordId}": { - "put": { - "summary": "Update an existing CNAME record for the given domain.", - "operationId": "domainsUpdateRecordCNAME", - "tags": [ - "domains" - ], - "description": "Update an existing CNAME record for the given domain.", - "responses": { - "200": { - "description": "DNSRecord", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/dnsRecord" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "", - "demo": "domains\/update-record-cname.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "domains.write", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "domainId", - "description": "Domain unique ID.", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "path" - }, - { - "name": "recordId", - "description": "DNS record unique ID.", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Record name (subdomain)." - }, - "value": { - "type": "string", - "description": "Canonical target for this CNAME record.", - "example": "" - }, - "ttl": { - "type": "integer", - "description": "Time to live, in seconds. Must be greater than 0.", - "example": 1, - "format": "int32" - }, - "comment": { - "type": "string", - "description": "A comment for this record.", - "default": "", - "example": "" - } - }, - "required": [ - "name", - "value", - "ttl" - ] - } - } - } - } - } - }, - "\/domains\/{domainId}\/records\/https": { - "post": { - "summary": "Create a new HTTPS record for the given domain.", - "operationId": "domainsCreateRecordHTTPS", - "tags": [ - "domains" - ], - "description": "Create a new HTTPS record for the given domain. This record is used to configure HTTPS \nsettings for your domain, enabling secure communication over SSL\/TLS.", - "responses": { - "201": { - "description": "DNSRecord", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/dnsRecord" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "", - "demo": "domains\/create-record-https.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "domains.write", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "domainId", - "description": "Domain unique ID.", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { + "description": "Canonical target for this CNAME record.", "type": "string", - "description": "Target for the HTTPS record.", "example": "" }, "ttl": { + "description": "Time to live, in seconds. Must be greater than 0.", "type": "integer", + "example": 1, + "format": "int32" + }, + "comment": { + "description": "A comment for this record.", + "type": "string", + "default": "", + "example": "" + } + }, + "required": [ + "name", + "value", + "ttl" + ] + } + } + } + } + } + }, + "\/domains\/{domainId}\/records\/cname\/{recordId}": { + "put": { + "summary": "Update an existing CNAME record for the given domain.", + "operationId": "domainsUpdateRecordCNAME", + "tags": [ + "domains" + ], + "description": "Update an existing CNAME record for the given domain.", + "responses": { + "200": { + "description": "DNSRecord", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/dnsRecord" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "", + "demo": "domains\/update-record-cname.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "domains.write", + "platforms": [ + "console" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [] + } + ], + "parameters": [ + { + "name": "domainId", + "description": "Domain unique ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "path" + }, + { + "name": "recordId", + "description": "DNS record unique ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "description": "Record name (subdomain).", + "type": "string" + }, + "value": { + "description": "Canonical target for this CNAME record.", + "type": "string", + "example": "" + }, + "ttl": { "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { + "description": "A comment for this record.", + "type": "string", + "default": "", + "example": "" + } + }, + "required": [ + "name", + "value", + "ttl" + ] + } + } + } + } + } + }, + "\/domains\/{domainId}\/records\/https": { + "post": { + "summary": "Create a new HTTPS record for the given domain.", + "operationId": "domainsCreateRecordHTTPS", + "tags": [ + "domains" + ], + "description": "Create a new HTTPS record for the given domain. This record is used to configure HTTPS \nsettings for your domain, enabling secure communication over SSL\/TLS.", + "responses": { + "201": { + "description": "DNSRecord", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/dnsRecord" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "", + "demo": "domains\/create-record-https.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "domains.write", + "platforms": [ + "console" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [] + } + ], + "parameters": [ + { + "name": "domainId", + "description": "Domain unique ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "description": "Record name (subdomain).", + "type": "string" + }, + "value": { + "description": "Target for the HTTPS record.", "type": "string", + "example": "" + }, + "ttl": { + "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", + "example": 1, + "format": "int32" + }, + "comment": { "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -27594,23 +32971,23 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", "description": "Target for the HTTPS record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -27689,28 +33066,28 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", "description": "Mail server domain for this MX record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "priority": { - "type": "integer", "description": "MX priority.", + "type": "integer", "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -27800,28 +33177,28 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", "description": "Mail server domain for this MX record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "priority": { - "type": "integer", "description": "MX priority.", + "type": "integer", "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -27901,23 +33278,23 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", "description": "Nameserver target for this NS record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -28006,23 +33383,23 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain)." + "description": "Record name (subdomain).", + "type": "string" }, "value": { - "type": "string", "description": "Nameserver target for this NS record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -28101,38 +33478,38 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (service name)." + "description": "Record name (service name).", + "type": "string" }, "value": { - "type": "string", "description": "Target hostname for this SRV record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "priority": { - "type": "integer", "description": "Record priority.", + "type": "integer", "format": "int32" }, "weight": { - "type": "integer", "description": "Record weight.", + "type": "integer", "format": "int32" }, "port": { - "type": "integer", "description": "Port number for the service.", + "type": "integer", "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -28224,38 +33601,38 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (service name)." + "description": "Record name (service name).", + "type": "string" }, "value": { - "type": "string", "description": "Target hostname for this SRV record.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "priority": { - "type": "integer", "description": "Record priority.", + "type": "integer", "format": "int32" }, "weight": { - "type": "integer", "description": "Record weight.", + "type": "integer", "format": "int32" }, "port": { - "type": "integer", "description": "Port number for the service.", + "type": "integer", "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -28337,24 +33714,24 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain) for the TXT record." + "description": "Record name (subdomain) for the TXT record.", + "type": "string" }, "value": { - "type": "string", "description": "TXT record value.", + "type": "string", "default": "", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -28442,23 +33819,23 @@ "type": "object", "properties": { "name": { - "type": "string", - "description": "Record name (subdomain) for the TXT record." + "description": "Record name (subdomain) for the TXT record.", + "type": "string" }, "value": { - "type": "string", "description": "TXT record value.", + "type": "string", "example": "" }, "ttl": { - "type": "integer", "description": "Time to live, in seconds. Must be greater than 0.", + "type": "integer", "example": 1, "format": "int32" }, "comment": { - "type": "string", "description": "A comment for this record.", + "type": "string", "default": "", "example": "" } @@ -28667,8 +34044,8 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "New team unique ID.", + "type": "string", "example": "" } }, @@ -28789,27 +34166,321 @@ "description": "Domain unique ID.", "required": true, "schema": { - "type": "string", - "example": "" + "type": "string", + "example": "" + }, + "in": "path" + } + ] + }, + "put": { + "summary": "Update the DNS zone for the given domain using the provided zone file content. All parsed records are imported and then the main domain document is returned.", + "operationId": "domainsUpdateZone", + "tags": [ + "domains" + ], + "description": "Update the DNS zone for the given domain using the provided zone file content.\nAll parsed records are imported and then the main domain document is returned.", + "responses": { + "201": { + "description": "Domain", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/domain" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "", + "demo": "domains\/update-zone.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "domains.write", + "platforms": [ + "console" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [] + } + ], + "parameters": [ + { + "name": "domainId", + "description": "Domain unique ID.", + "required": true, + "schema": { + "type": "string", + "example": "" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "content": { + "description": "DNS zone file content as a string.", + "type": "string", + "example": "" + } + }, + "required": [ + "content" + ] + } + } + } + } + } + }, + "\/embeddings\/text": { + "post": { + "summary": "Create text embeddings", + "operationId": "embeddingsCreateTextEmbeddings", + "tags": [ + "embeddings" + ], + "description": "Generate vector embeddings for an array of text using the selected embedding model. Use the returned vectors to power semantic search and similarity queries against your vector collections.\n", + "responses": { + "200": { + "description": "Embedding list", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/embeddingList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "embeddings", + "cookies": false, + "type": "", + "demo": "embeddings\/create-text-embeddings.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "embeddings.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/embeddings\/create-text-embeddings.md", + "methods": [ + { + "name": "createTextEmbeddings", + "namespace": "embeddings", + "desc": "Create Text Embedding", + "auth": { + "Project": [] + }, + "parameters": [ + "texts", + "model" + ], + "required": [ + "texts" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/embeddingList" + } + ], + "description": "Generate vector embeddings for an array of text using the selected embedding model. Use the returned vectors to power semantic search and similarity queries against your vector collections.\n", + "demo": "embeddings\/create-text-embeddings.md", + "public": true + } + ], + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [], + "JWT": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "texts": { + "description": "Array of text to generate embeddings.", + "type": "array", + "items": { + "type": "string" + } + }, + "model": { + "description": "The embedding model to use for generating vector embeddings.", + "type": "string", + "default": "nomic-embed-text", + "example": "nomic-embed-text", + "title": "EmbeddingModel", + "oneOf": [ + { + "type": "string", + "enum": [ + "nomic-embed-text" + ], + "title": "nomic-embed-text" + }, + { + "type": "string", + "enum": [ + "embedding-gemma" + ], + "title": "embedding-gemma" + }, + { + "type": "string", + "enum": [ + "all-minilm" + ], + "title": "all-minilm" + }, + { + "type": "string", + "enum": [ + "bge-small" + ], + "title": "bge-small" + } + ] + } + }, + "required": [ + "texts" + ] + } + } + } + } + } + }, + "\/functions": { + "get": { + "summary": "List functions", + "operationId": "functionsList", + "tags": [ + "functions" + ], + "description": "Get a list of all the project's functions. You can use the query params to filter your results.", + "responses": { + "200": { + "description": "Functions List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/functionList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "functions", + "cookies": false, + "type": "", + "demo": "functions\/list.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "functions.read", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "queries", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, enabled, runtime, deploymentId, schedule, scheduleNext, schedulePrevious, timeout, entrypoint, commands, installationId", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "default": [] + }, + "in": "query" + }, + { + "name": "search", + "description": "Search term to filter your list results. Max length: 256 chars.", + "required": false, + "schema": { + "type": "string", + "example": "", + "default": "" + }, + "in": "query" + }, + { + "name": "total", + "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": true }, - "in": "path" + "in": "query" } ] }, - "put": { - "summary": "Update the DNS zone for the given domain using the provided zone file content. All parsed records are imported and then the main domain document is returned.", - "operationId": "domainsUpdateZone", + "post": { + "summary": "Create function", + "operationId": "functionsCreate", "tags": [ - "domains" + "functions" ], - "description": "Update the DNS zone for the given domain using the provided zone file content.\nAll parsed records are imported and then the main domain document is returned.", + "description": "Create a new function. You can pass a list of [permissions](https:\/\/appwrite.io\/docs\/permissions) to allow different project users or team with access to execute the function using the client API.", "responses": { "201": { - "description": "Domain", + "description": "Function", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/domain" + "$ref": "#\/components\/schemas\/function" } } } @@ -28817,16 +34488,17 @@ }, "deprecated": false, "x-appwrite": { - "group": null, + "group": "functions", "cookies": false, "type": "", - "demo": "domains\/update-zone.md", + "demo": "functions\/create.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "domains.write", + "scope": "functions.write", "platforms": [ - "console" + "console", + "server" ], "packaging": false, "public": true, @@ -28836,19 +34508,8 @@ }, "security": [ { - "Project": [] - } - ], - "parameters": [ - { - "name": "domainId", - "description": "Domain unique ID.", - "required": true, - "schema": { - "type": "string", - "example": "" - }, - "in": "path" + "Project": [], + "Key": [] } ], "requestBody": { @@ -28857,14 +34518,1561 @@ "schema": { "type": "object", "properties": { - "content": { + "functionId": { + "description": "Function 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.", + "type": "string", + "example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } + }, + "name": { + "description": "Function name. Max length: 128 chars.", + "type": "string", + "example": "" + }, + "runtime": { + "description": "Execution runtime.", + "type": "string", + "example": "node-14.5", + "title": "Runtime", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { + "type": "string", + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" + }, + { + "type": "string", + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" + }, + { + "type": "string", + "enum": [ + "dart-3.12" + ], + "title": "dart-3.12" + }, + { + "type": "string", + "enum": [ + "dotnet-6.0" + ], + "title": "dotnet-6.0" + }, + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" + }, + { + "type": "string", + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" + }, + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" + }, + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" + }, + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" + }, + { + "type": "string", + "enum": [ + "java-17.0" + ], + "title": "java-17.0" + }, + { + "type": "string", + "enum": [ + "java-18.0" + ], + "title": "java-18.0" + }, + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" + }, + { + "type": "string", + "enum": [ + "java-22" + ], + "title": "java-22" + }, + { + "type": "string", + "enum": [ + "java-25" + ], + "title": "java-25" + }, + { + "type": "string", + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" + }, + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" + }, + { + "type": "string", + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" + }, + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" + }, + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" + }, + { + "type": "string", + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" + }, + { + "type": "string", + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" + }, + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" + } + ] + }, + "execute": { + "description": "An array of role strings with execution permissions. By default no user is granted with any execute permissions. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", + "type": "array", + "default": [], + "example": [ + "any" + ], + "items": { + "type": "string" + } + }, + "events": { + "description": "Events list. Maximum of 100 events are allowed.", + "type": "array", + "default": [], + "items": { + "type": "string" + } + }, + "schedule": { + "description": "Schedule CRON syntax.", + "type": "string", + "default": "" + }, + "timeout": { + "description": "Function maximum execution time in seconds.", + "type": "integer", + "default": 15, + "example": 1, + "format": "int32" + }, + "enabled": { + "description": "Is function enabled? When set to 'disabled', users cannot access the function but Server SDKs with and API key can still access the function. No data is lost when this is toggled.", + "type": "boolean", + "default": true, + "example": false + }, + "logging": { + "description": "When disabled, executions will exclude logs and errors, and will be slightly faster.", + "type": "boolean", + "default": true, + "example": false + }, + "entrypoint": { + "description": "Entrypoint File. This path is relative to the \"providerRootDirectory\".", + "type": "string", + "default": "", + "example": "" + }, + "commands": { + "description": "Build Commands.", + "type": "string", + "default": "", + "example": "" + }, + "scopes": { + "description": "List of scopes allowed for API key auto-generated for every execution. Maximum of 200 scopes are allowed.", + "type": "array", + "default": [], + "items": { + "title": "ProjectKeyScopes", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } + ] + } + }, + "installationId": { + "description": "Appwrite Installation ID for VCS (Version Control System) deployment.", "type": "string", - "description": "DNS zone file content as a string.", - "example": "" + "default": "", + "example": "" + }, + "providerRepositoryId": { + "description": "Repository ID of the repo linked to the function.", + "type": "string", + "default": "", + "example": "" + }, + "providerBranch": { + "description": "Production branch for the repo linked to the function.", + "type": "string", + "default": "", + "example": "" + }, + "providerSilentMode": { + "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the function? In silent mode, comments will not be made on commits and pull requests.", + "type": "boolean", + "default": false, + "example": false + }, + "providerRootDirectory": { + "description": "Path to function code in the linked repo.", + "type": "string", + "default": "", + "example": "" + }, + "providerBranches": { + "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", + "type": "array", + "default": [], + "items": { + "type": "string" + } + }, + "providerPaths": { + "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", + "type": "array", + "default": [], + "items": { + "type": "string" + } + }, + "buildSpecification": { + "description": "Build specification for the function deployments.", + "type": "string", + "default": {} + }, + "runtimeSpecification": { + "description": "Runtime specification for the function executions.", + "type": "string", + "default": {} + }, + "deploymentRetention": { + "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", + "type": "integer", + "default": 0, + "example": 0, + "format": "int32" } }, "required": [ - "content" + "functionId", + "name", + "runtime" ] } } @@ -28872,21 +36080,21 @@ } } }, - "\/embeddings\/text": { - "post": { - "summary": "Create text embeddings", - "operationId": "embeddingsCreateTextEmbeddings", + "\/functions\/runtimes": { + "get": { + "summary": "List runtimes", + "operationId": "functionsListRuntimes", "tags": [ - "embeddings" + "functions" ], - "description": "Generate vector embeddings for an array of text using the selected embedding model. Use the returned vectors to power semantic search and similarity queries against your vector collections.\n", + "description": "Get a list of all runtimes that are currently active on your instance.", "responses": { "200": { - "description": "Embedding list", + "description": "Runtimes List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/embeddingList" + "$ref": "#\/components\/schemas\/runtimeList" } } } @@ -28894,47 +36102,20 @@ }, "deprecated": false, "x-appwrite": { - "group": "embeddings", + "group": "runtimes", "cookies": false, "type": "", - "demo": "embeddings\/create-text-embeddings.md", - "rate-limit": 120, - "rate-time": 60, - "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", - "scope": "embeddings.write", + "demo": "functions\/list-runtimes.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "public", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/embeddings\/create-text-embeddings.md", - "methods": [ - { - "name": "createTextEmbeddings", - "namespace": "embeddings", - "desc": "Create Text Embedding", - "auth": { - "Project": [] - }, - "parameters": [ - "texts", - "model" - ], - "required": [ - "texts" - ], - "responses": [ - { - "code": 200, - "model": "#\/components\/schemas\/embeddingList" - } - ], - "description": "Generate vector embeddings for an array of text using the selected embedding model. Use the returned vectors to power semantic search and similarity queries against your vector collections.\n", - "demo": "embeddings\/create-text-embeddings.md", - "public": true - } - ], "auth": { "Project": [] } @@ -28942,67 +36123,26 @@ "security": [ { "Project": [], - "Key": [], - "JWT": [] - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "texts": { - "type": "array", - "description": "Array of text to generate embeddings.", - "items": { - "type": "string" - } - }, - "model": { - "type": "string", - "description": "The embedding model to use for generating vector embeddings.", - "default": "nomic-embed-text", - "example": "nomic-embed-text", - "enum": [ - "nomic-embed-text", - "embedding-gemma", - "all-minilm", - "bge-small" - ], - "x-enum-name": "EmbeddingModel", - "x-enum-keys": [ - "nomic-embed-text", - "embedding-gemma", - "all-minilm", - "bge-small" - ] - } - }, - "required": [ - "texts" - ] - } - } + "Key": [] } - } + ] } }, - "\/functions": { + "\/functions\/specifications": { "get": { - "summary": "List functions", - "operationId": "functionsList", + "summary": "List specifications", + "operationId": "functionsListSpecifications", "tags": [ "functions" ], - "description": "Get a list of all the project's functions. You can use the query params to filter your results.", + "description": "List allowed function specifications for this instance.", "responses": { "200": { - "description": "Functions List", + "description": "Specifications List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/functionList" + "$ref": "#\/components\/schemas\/specificationList" } } } @@ -29010,17 +36150,17 @@ }, "deprecated": false, "x-appwrite": { - "group": "functions", + "group": "runtimes", "cookies": false, "type": "", - "demo": "functions\/list.md", + "demo": "functions\/list-specifications.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", "scope": "functions.read", "platforms": [ - "console", - "server" + "server", + "console" ], "packaging": false, "public": true, @@ -29036,56 +36176,34 @@ ], "parameters": [ { - "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, enabled, runtime, deploymentId, schedule, scheduleNext, schedulePrevious, timeout, entrypoint, commands, installationId", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - }, - "default": [] - }, - "in": "query" - }, - { - "name": "search", - "description": "Search term to filter your list results. Max length: 256 chars.", + "name": "type", + "description": "Specification type to list. Can be one of: runtimes, builds. Defaults to runtimes.", "required": false, "schema": { "type": "string", - "example": "", - "default": "" - }, - "in": "query" - }, - { - "name": "total", - "description": "When set to false, the total count returned will be 0 and will not be calculated.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": true + "example": "runtimes", + "default": "runtimes" }, "in": "query" } ] - }, - "post": { - "summary": "Create function", - "operationId": "functionsCreate", + } + }, + "\/functions\/templates": { + "get": { + "summary": "List templates", + "operationId": "functionsListTemplates", "tags": [ "functions" ], - "description": "Create a new function. You can pass a list of [permissions](https:\/\/appwrite.io\/docs\/permissions) to allow different project users or team with access to execute the function using the client API.", + "description": "List available function templates. You can use template details in [createFunction](\/docs\/references\/cloud\/server-nodejs\/functions#create) method.", "responses": { - "201": { - "description": "Function", + "200": { + "description": "Function Templates List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/function" + "$ref": "#\/components\/schemas\/templateFunctionList" } } } @@ -29093,17 +36211,16 @@ }, "deprecated": false, "x-appwrite": { - "group": "functions", + "group": "templates", "cookies": false, "type": "", - "demo": "functions\/create.md", + "demo": "functions\/list-templates.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "functions.write", + "scope": "public", "platforms": [ - "console", - "server" + "console" ], "packaging": false, "public": true, @@ -29113,926 +36230,685 @@ }, "security": [ { - "Project": [], - "Key": [] + "Project": [] } ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "functionId": { + "parameters": [ + { + "name": "runtimes", + "description": "List of runtimes allowed for filtering function templates. Maximum of 100 runtimes are allowed.", + "required": false, + "schema": { + "type": "array", + "items": { + "title": "Runtime", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { "type": "string", - "description": "Function 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.", - "example": "", - "x-appwrite": { - "idGenerator": "ID.unique" - } + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" }, - "name": { + { "type": "string", - "description": "Function name. Max length: 128 chars.", - "example": "" + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" }, - "runtime": { + { "type": "string", - "description": "Execution runtime.", - "example": "node-14.5", "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" + "dart-3.12" ], - "x-enum-name": "Runtime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ] + "title": "dart-3.12" }, - "execute": { - "type": "array", - "description": "An array of role strings with execution permissions. By default no user is granted with any execute permissions. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", - "default": [], - "example": [ - "any" + { + "type": "string", + "enum": [ + "dotnet-6.0" ], - "items": { - "type": "string" - } + "title": "dotnet-6.0" }, - "events": { - "type": "array", - "description": "Events list. Maximum of 100 events are allowed.", - "default": [], - "items": { - "type": "string" - } + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" }, - "schedule": { + { "type": "string", - "description": "Schedule CRON syntax.", - "default": "" + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" }, - "timeout": { - "type": "integer", - "description": "Function maximum execution time in seconds.", - "default": 15, - "example": 1, - "format": "int32" + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" }, - "enabled": { - "type": "boolean", - "description": "Is function enabled? When set to 'disabled', users cannot access the function but Server SDKs with and API key can still access the function. No data is lost when this is toggled.", - "default": true, - "example": false + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" }, - "logging": { - "type": "boolean", - "description": "When disabled, executions will exclude logs and errors, and will be slightly faster.", - "default": true, - "example": false + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" }, - "entrypoint": { + { "type": "string", - "description": "Entrypoint File. This path is relative to the \"providerRootDirectory\".", - "default": "", - "example": "" + "enum": [ + "java-17.0" + ], + "title": "java-17.0" }, - "commands": { + { "type": "string", - "description": "Build Commands.", - "default": "", - "example": "" + "enum": [ + "java-18.0" + ], + "title": "java-18.0" }, - "scopes": { - "type": "array", - "description": "List of scopes allowed for API key auto-generated for every execution. Maximum of 200 scopes are allowed.", - "default": [], - "items": { - "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ] - } + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" }, - "installationId": { + { "type": "string", - "description": "Appwrite Installation ID for VCS (Version Control System) deployment.", - "default": "", - "example": "" + "enum": [ + "java-22" + ], + "title": "java-22" }, - "providerRepositoryId": { + { "type": "string", - "description": "Repository ID of the repo linked to the function.", - "default": "", - "example": "" + "enum": [ + "java-25" + ], + "title": "java-25" }, - "providerBranch": { + { "type": "string", - "description": "Production branch for the repo linked to the function.", - "default": "", - "example": "" + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" }, - "providerSilentMode": { - "type": "boolean", - "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the function? In silent mode, comments will not be made on commits and pull requests.", - "default": false, - "example": false + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" }, - "providerRootDirectory": { + { "type": "string", - "description": "Path to function code in the linked repo.", - "default": "", - "example": "" + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" }, - "providerBranches": { - "type": "array", - "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", - "default": [], - "items": { - "type": "string" - } + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" }, - "providerPaths": { - "type": "array", - "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", - "default": [], - "items": { - "type": "string" - } + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" }, - "buildSpecification": { + { "type": "string", - "description": "Build specification for the function deployments.", - "default": {} + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" }, - "runtimeSpecification": { + { "type": "string", - "description": "Runtime specification for the function executions.", - "default": {} + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" }, - "deploymentRetention": { - "type": "integer", - "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", - "default": 0, - "example": 0, - "format": "int32" + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" } - }, - "required": [ - "functionId", - "name", - "runtime" - ] - } - } - } - } - } - }, - "\/functions\/runtimes": { - "get": { - "summary": "List runtimes", - "operationId": "functionsListRuntimes", - "tags": [ - "functions" - ], - "description": "Get a list of all runtimes that are currently active on your instance.", - "responses": { - "200": { - "description": "Runtimes List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/runtimeList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "runtimes", - "cookies": false, - "type": "", - "demo": "functions\/list-runtimes.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "public", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ] - } - }, - "\/functions\/specifications": { - "get": { - "summary": "List specifications", - "operationId": "functionsListSpecifications", - "tags": [ - "functions" - ], - "description": "List allowed function specifications for this instance.", - "responses": { - "200": { - "description": "Specifications List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/specificationList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "runtimes", - "cookies": false, - "type": "", - "demo": "functions\/list-specifications.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "functions.read", - "platforms": [ - "server", - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "type", - "description": "Specification type to list. Can be one of: runtimes, builds. Defaults to runtimes.", - "required": false, - "schema": { - "type": "string", - "example": "runtimes", - "default": "runtimes" - }, - "in": "query" - } - ] - } - }, - "\/functions\/templates": { - "get": { - "summary": "List templates", - "operationId": "functionsListTemplates", - "tags": [ - "functions" - ], - "description": "List available function templates. You can use template details in [createFunction](\/docs\/references\/cloud\/server-nodejs\/functions#create) method.", - "responses": { - "200": { - "description": "Function Templates List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/templateFunctionList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "templates", - "cookies": false, - "type": "", - "demo": "functions\/list-templates.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "public", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "runtimes", - "description": "List of runtimes allowed for filtering function templates. Maximum of 100 runtimes are allowed.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ], - "x-enum-name": "Runtime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" ] }, "default": [] @@ -30046,25 +36922,58 @@ "schema": { "type": "array", "items": { + "title": "FunctionTemplateUseCase", "type": "string", - "enum": [ - "starter", - "databases", - "ai", - "messaging", - "utilities", - "dev-tools", - "auth" - ], - "x-enum-name": "FunctionTemplateUseCase", - "x-enum-keys": [ - "starter", - "databases", - "ai", - "messaging", - "utilities", - "dev-tools", - "auth" + "oneOf": [ + { + "type": "string", + "enum": [ + "starter" + ], + "title": "starter" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "ai" + ], + "title": "ai" + }, + { + "type": "string", + "enum": [ + "messaging" + ], + "title": "messaging" + }, + { + "type": "string", + "enum": [ + "utilities" + ], + "title": "utilities" + }, + { + "type": "string", + "enum": [ + "dev-tools" + ], + "title": "dev-tools" + }, + { + "type": "string", + "enum": [ + "auth" + ], + "title": "auth" + } ] }, "default": [] @@ -30290,207 +37199,687 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Function name. Max length: 128 chars.", + "type": "string", "example": "" }, "runtime": { - "type": "string", "description": "Execution runtime.", + "type": "string", + "default": "", "example": "node-14.5", - "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ], - "x-enum-name": "Runtime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" + "title": "Runtime", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { + "type": "string", + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" + }, + { + "type": "string", + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" + }, + { + "type": "string", + "enum": [ + "dart-3.12" + ], + "title": "dart-3.12" + }, + { + "type": "string", + "enum": [ + "dotnet-6.0" + ], + "title": "dotnet-6.0" + }, + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" + }, + { + "type": "string", + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" + }, + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" + }, + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" + }, + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" + }, + { + "type": "string", + "enum": [ + "java-17.0" + ], + "title": "java-17.0" + }, + { + "type": "string", + "enum": [ + "java-18.0" + ], + "title": "java-18.0" + }, + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" + }, + { + "type": "string", + "enum": [ + "java-22" + ], + "title": "java-22" + }, + { + "type": "string", + "enum": [ + "java-25" + ], + "title": "java-25" + }, + { + "type": "string", + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" + }, + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" + }, + { + "type": "string", + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" + }, + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" + }, + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" + }, + { + "type": "string", + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" + }, + { + "type": "string", + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" + }, + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" + } ] }, "execute": { - "type": "array", "description": "An array of role strings with execution permissions. By default no user is granted with any execute permissions. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", + "type": "array", "default": [], "example": [ "any" @@ -30500,331 +37889,854 @@ } }, "events": { - "type": "array", "description": "Events list. Maximum of 100 events are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "schedule": { - "type": "string", "description": "Schedule CRON syntax.", + "type": "string", "default": "" }, "timeout": { - "type": "integer", "description": "Maximum execution time in seconds.", + "type": "integer", "default": 15, "example": 1, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Is function enabled? When set to 'disabled', users cannot access the function but Server SDKs with and API key can still access the function. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "logging": { - "type": "boolean", "description": "When disabled, executions will exclude logs and errors, and will be slightly faster.", + "type": "boolean", "default": true, "example": false }, "entrypoint": { - "type": "string", "description": "Entrypoint File. This path is relative to the \"providerRootDirectory\".", + "type": "string", "default": "", "example": "" }, "commands": { - "type": "string", "description": "Build Commands.", + "type": "string", "default": "", "example": "" }, "scopes": { - "type": "array", "description": "List of scopes allowed for API Key auto-generated for every execution. Maximum of 200 scopes are allowed.", + "type": "array", "default": [], "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } }, "installationId": { - "type": "string", "description": "Appwrite Installation ID for VCS (Version Controle System) deployment.", + "type": "string", "default": "", "example": "" }, "providerRepositoryId": { - "type": "string", "description": "Repository ID of the repo linked to the function", + "type": "string", "example": "", "nullable": true }, "providerBranch": { - "type": "string", "description": "Production branch for the repo linked to the function", + "type": "string", "default": "", "example": "" }, "providerSilentMode": { - "type": "boolean", "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the function? In silent mode, comments will not be made on commits and pull requests.", + "type": "boolean", "default": false, "example": false }, "providerRootDirectory": { - "type": "string", "description": "Path to function code in the linked repo.", + "type": "string", "default": "", "example": "" }, "providerBranches": { - "type": "array", "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "providerPaths": { - "type": "array", "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "buildSpecification": { - "type": "string", "description": "Build specification for the function deployments.", + "type": "string", "nullable": true }, "runtimeSpecification": { - "type": "string", "description": "Runtime specification for the function executions.", + "type": "string", "nullable": true }, "deploymentRetention": { - "type": "integer", "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -30955,8 +38867,8 @@ "type": "object", "properties": { "deploymentId": { - "type": "string", "description": "Deployment ID.", + "type": "string", "example": "" } }, @@ -31127,25 +39039,25 @@ "type": "object", "properties": { "entrypoint": { - "type": "string", "description": "Entrypoint File.", + "type": "string", "example": "", "nullable": true }, "commands": { - "type": "string", "description": "Build Commands.", + "type": "string", "example": "", "nullable": true }, "code": { - "type": "string", "description": "Gzip file with your code package. When used with the Appwrite CLI, pass the path to your code directory, and the CLI will automatically package your code. Use a path that is within the current directory.", + "type": "string", "format": "binary" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", "example": false } }, @@ -31224,13 +39136,13 @@ "type": "object", "properties": { "deploymentId": { - "type": "string", "description": "Deployment ID.", + "type": "string", "example": "" }, "buildId": { - "type": "string", "description": "Build unique ID.", + "type": "string", "default": "", "example": "" } @@ -31309,44 +39221,57 @@ "type": "object", "properties": { "repository": { - "type": "string", "description": "Repository name of the template.", + "type": "string", "example": "" }, "owner": { - "type": "string", "description": "The name of the owner of the template.", + "type": "string", "example": "" }, "rootDirectory": { - "type": "string", "description": "Path to function code in the template repo.", + "type": "string", "example": "" }, "type": { - "type": "string", "description": "Type for the reference provided. Can be commit, branch, or tag", + "type": "string", "example": "commit", - "enum": [ - "commit", - "branch", - "tag" - ], - "x-enum-name": "TemplateReferenceType", - "x-enum-keys": [ - "commit", - "branch", - "tag" + "title": "TemplateReferenceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "commit" + ], + "title": "commit" + }, + { + "type": "string", + "enum": [ + "branch" + ], + "title": "branch" + }, + { + "type": "string", + "enum": [ + "tag" + ], + "title": "tag" + } ] }, "reference": { - "type": "string", "description": "Reference value, can be a commit hash, branch name, or release tag", + "type": "string", "example": "" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", "default": false, "example": false } @@ -31429,27 +39354,35 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Type of reference passed. Allowed values are: branch, commit", + "type": "string", "example": "branch", - "enum": [ - "branch", - "commit" - ], - "x-enum-name": "VCSReferenceType", - "x-enum-keys": [ - "branch", - "commit" + "title": "VCSReferenceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "branch" + ], + "title": "branch" + }, + { + "type": "string", + "enum": [ + "commit" + ], + "title": "commit" + } ] }, "reference": { - "type": "string", "description": "VCS reference to create deployment from. Depending on type this can be: branch name, commit hash", + "type": "string", "example": "" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", "default": false, "example": false } @@ -31676,14 +39609,22 @@ "schema": { "type": "string", "example": "source", - "enum": [ - "source", - "output" - ], - "x-enum-name": "DeploymentDownloadType", - "x-enum-keys": [ - "source", - "output" + "title": "DeploymentDownloadType", + "oneOf": [ + { + "type": "string", + "enum": [ + "source" + ], + "title": "source" + }, + { + "type": "string", + "enum": [ + "output" + ], + "title": "output" + } ], "default": "source" }, @@ -31932,57 +39873,90 @@ "type": "object", "properties": { "body": { - "type": "string", "description": "HTTP body of execution. Default value is empty string.", + "type": "string", "default": "", "example": "" }, "async": { - "type": "boolean", "description": "Execute code in the background. Default value is false.", + "type": "boolean", "default": false, "example": false }, "path": { - "type": "string", "description": "HTTP path of execution. Path can include query params. Default value is \/", + "type": "string", "default": "\/", "example": "" }, "method": { - "type": "string", "description": "HTTP method of execution. Default value is POST.", + "type": "string", "default": "POST", "example": "GET", - "enum": [ - "GET", - "POST", - "PUT", - "PATCH", - "DELETE", - "OPTIONS", - "HEAD" - ], - "x-enum-name": "ExecutionMethod", - "x-enum-keys": [ - "GET", - "POST", - "PUT", - "PATCH", - "DELETE", - "OPTIONS", - "HEAD" + "title": "ExecutionMethod", + "oneOf": [ + { + "type": "string", + "enum": [ + "GET" + ], + "title": "GET" + }, + { + "type": "string", + "enum": [ + "POST" + ], + "title": "POST" + }, + { + "type": "string", + "enum": [ + "PUT" + ], + "title": "PUT" + }, + { + "type": "string", + "enum": [ + "PATCH" + ], + "title": "PATCH" + }, + { + "type": "string", + "enum": [ + "DELETE" + ], + "title": "DELETE" + }, + { + "type": "string", + "enum": [ + "OPTIONS" + ], + "title": "OPTIONS" + }, + { + "type": "string", + "enum": [ + "HEAD" + ], + "title": "HEAD" + } ] }, "headers": { - "type": "object", "description": "HTTP headers of execution. Defaults to empty.", + "type": "object", "default": [], "example": {} }, "scheduledAt": { - "type": "string", "description": "Scheduled execution time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future with precision in minutes.", + "type": "string", "example": "", "nullable": true } @@ -32280,26 +40254,26 @@ "type": "object", "properties": { "variableId": { - "type": "string", "description": "Variable 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "" }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "" }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only functions can read them during build and runtime.", + "type": "boolean", "default": true, "example": false } @@ -32458,20 +40432,20 @@ "type": "object", "properties": { "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "", "nullable": true }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "", "nullable": true }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only functions can read them during build and runtime.", + "type": "boolean", "example": false, "nullable": true } @@ -32600,8 +40574,8 @@ "type": "object", "properties": { "query": { - "type": "object", "description": "The query or queries to execute.", + "type": "object", "default": {}, "example": {} } @@ -32672,8 +40646,8 @@ "type": "object", "properties": { "query": { - "type": "object", "description": "The query or queries to execute.", + "type": "object", "default": {}, "example": {} } @@ -33146,68 +41120,119 @@ "type": "object", "properties": { "projectId": { - "type": "string", "description": "Project ID", + "type": "string", "example": "" }, "resourceType": { - "type": "string", "description": "Resource type to block (e.g., projects, functions, databases, storage, etc.)", + "type": "string", "example": "projects", - "enum": [ - "projects", - "functions", - "sites", - "databases", - "buckets", - "providers", - "topics", - "subscribers", - "messages" - ], - "x-enum-name": "BlockResourceType", - "x-enum-keys": [ - "projects", - "functions", - "sites", - "databases", - "buckets", - "providers", - "topics", - "subscribers", - "messages" + "title": "BlockResourceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "projects" + ], + "title": "projects" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "buckets" + ], + "title": "buckets" + }, + { + "type": "string", + "enum": [ + "providers" + ], + "title": "providers" + }, + { + "type": "string", + "enum": [ + "topics" + ], + "title": "topics" + }, + { + "type": "string", + "enum": [ + "subscribers" + ], + "title": "subscribers" + }, + { + "type": "string", + "enum": [ + "messages" + ], + "title": "messages" + } ] }, "resourceId": { - "type": "string", "description": "Optional resource ID (if omitted, all resources of this type will be blocked)", + "type": "string", "default": "", "example": "" }, "mode": { - "type": "string", "description": "Block mode. Use full to block reads and writes, or readOnly to block database writes only.", + "type": "string", "default": "full", "example": "full", - "enum": [ - "full", - "readonly" - ], - "x-enum-name": "BlockMode", - "x-enum-keys": [ - "full", - "readonly" + "title": "BlockMode", + "oneOf": [ + { + "type": "string", + "enum": [ + "full" + ], + "title": "full" + }, + { + "type": "string", + "enum": [ + "readonly" + ], + "title": "readonly" + } ] }, "reason": { - "type": "string", "description": "Optional reason why the resource is blocked", + "type": "string", "default": "", "example": "" }, "expiredAt": { - "type": "string", "description": "Optional expiration date for the block", + "type": "string", "default": "", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime" @@ -33275,28 +41300,71 @@ "schema": { "type": "string", "example": "projects", - "enum": [ - "projects", - "functions", - "sites", - "databases", - "buckets", - "providers", - "topics", - "subscribers", - "messages" - ], - "x-enum-name": "BlockResourceType", - "x-enum-keys": [ - "projects", - "functions", - "sites", - "databases", - "buckets", - "providers", - "topics", - "subscribers", - "messages" + "title": "BlockResourceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "projects" + ], + "title": "projects" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "buckets" + ], + "title": "buckets" + }, + { + "type": "string", + "enum": [ + "providers" + ], + "title": "providers" + }, + { + "type": "string", + "enum": [ + "topics" + ], + "title": "topics" + }, + { + "type": "string", + "enum": [ + "subscribers" + ], + "title": "subscribers" + }, + { + "type": "string", + "enum": [ + "messages" + ], + "title": "messages" + } ] }, "in": "query" @@ -33410,22 +41478,50 @@ "schema": { "type": "string", "example": "fra", - "enum": [ - "fra", - "nyc", - "syd", - "sfo", - "sgp", - "tor" - ], - "x-enum-name": "Region", - "x-enum-keys": [ - "fra", - "nyc", - "syd", - "sfo", - "sgp", - "tor" + "title": "Region", + "oneOf": [ + { + "type": "string", + "enum": [ + "fra" + ], + "title": "fra" + }, + { + "type": "string", + "enum": [ + "nyc" + ], + "title": "nyc" + }, + { + "type": "string", + "enum": [ + "syd" + ], + "title": "syd" + }, + { + "type": "string", + "enum": [ + "sfo" + ], + "title": "sfo" + }, + { + "type": "string", + "enum": [ + "sgp" + ], + "title": "sgp" + }, + { + "type": "string", + "enum": [ + "tor" + ], + "title": "tor" + } ] }, "in": "query" @@ -33437,22 +41533,50 @@ "schema": { "type": "string", "example": "cache", - "enum": [ - "cache", - "timelimit", - "locks", - "pubsub", - "queue", - "all" - ], - "x-enum-name": "CacheTarget", - "x-enum-keys": [ - "cache", - "timelimit", - "locks", - "pubsub", - "queue", - "all" + "title": "CacheTarget", + "oneOf": [ + { + "type": "string", + "enum": [ + "cache" + ], + "title": "cache" + }, + { + "type": "string", + "enum": [ + "timelimit" + ], + "title": "timelimit" + }, + { + "type": "string", + "enum": [ + "locks" + ], + "title": "locks" + }, + { + "type": "string", + "enum": [ + "pubsub" + ], + "title": "pubsub" + }, + { + "type": "string", + "enum": [ + "queue" + ], + "title": "queue" + }, + { + "type": "string", + "enum": [ + "all" + ], + "title": "all" + } ], "default": "cache" }, @@ -33476,16 +41600,29 @@ "schema": { "type": "string", "example": "console", - "enum": [ - "console", - "project", - "logs" - ], - "x-enum-name": "CacheDatabase", - "x-enum-keys": [ - "console", - "project", - "logs" + "title": "CacheDatabase", + "oneOf": [ + { + "type": "string", + "enum": [ + "console" + ], + "title": "console" + }, + { + "type": "string", + "enum": [ + "project" + ], + "title": "project" + }, + { + "type": "string", + "enum": [ + "logs" + ], + "title": "logs" + } ], "default": "console" }, @@ -33570,25 +41707,25 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "default": "", "example": "" }, "email": { - "type": "string", "description": "User email address.", + "type": "string", "default": "", "example": "" }, "status": { - "type": "boolean", "description": "User status. Set to `false` to block and `true` to unblock.", + "type": "boolean", "example": false }, "reason": { - "type": "string", "description": "Optional reason when blocking a user. Accepted for parity with the CLI task but not persisted.", + "type": "string", "default": "", "example": "" } @@ -33742,86 +41879,86 @@ "type": "object", "properties": { "messageId": { - "type": "string", "description": "Message 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "subject": { - "type": "string", "description": "Email Subject.", + "type": "string", "example": "" }, "content": { - "type": "string", "description": "Email Content.", + "type": "string", "example": "" }, "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "cc": { - "type": "array", "description": "Array of target IDs to be added as CC.", + "type": "array", "default": [], "items": { "type": "string" } }, "bcc": { - "type": "array", "description": "Array of target IDs to be added as BCC.", + "type": "array", "default": [], "items": { "type": "string" } }, "attachments": { - "type": "array", "description": "Array of compound ID strings of bucket IDs and file IDs to be attached to the email. They should be formatted as :.", + "type": "array", "default": [], "items": { "type": "string" } }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "default": false, "example": false }, "html": { - "type": "boolean", "description": "Is content of type HTML", + "type": "boolean", "default": false, "example": false }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -33904,79 +42041,79 @@ "type": "object", "properties": { "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "subject": { - "type": "string", "description": "Email Subject.", + "type": "string", "example": "", "nullable": true }, "content": { - "type": "string", "description": "Email Content.", + "type": "string", "example": "", "nullable": true }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "example": false, "nullable": true }, "html": { - "type": "boolean", "description": "Is content of type HTML", + "type": "boolean", "example": false, "nullable": true }, "cc": { - "type": "array", "description": "Array of target IDs to be added as CC.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "bcc": { - "type": "array", "description": "Array of target IDs to be added as BCC.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "attachments": { - "type": "array", "description": "Array of compound ID strings of bucket IDs and file IDs to be attached to the email. They should be formatted as :.", + "type": "array", "items": { "type": "string" }, @@ -34043,136 +42180,144 @@ "type": "object", "properties": { "messageId": { - "type": "string", "description": "Message 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.", + "type": "string", "example": "", "x-appwrite": { "idGenerator": "ID.unique" } }, "title": { - "type": "string", "description": "Title for push notification.", + "type": "string", "default": "", "example": "" }, "body": { - "type": "string", "description": "Body for push notification.", + "type": "string", "default": "", "example": "<BODY>" }, "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "data": { - "type": "object", "description": "Additional key-value pair data for push notification.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "action": { - "type": "string", "description": "Action for push notification.", + "type": "string", "default": "", "example": "<ACTION>" }, "image": { - "type": "string", "description": "Image for push notification. Must be a compound bucket ID to file ID of a jpeg, png, or bmp image in Appwrite Storage. It should be formatted as <BUCKET_ID>:<FILE_ID>.", + "type": "string", "default": "", "example": "<ID1:ID2>" }, "icon": { - "type": "string", "description": "Icon for push notification. Available only for Android and Web Platform.", + "type": "string", "default": "", "example": "<ICON>" }, "sound": { - "type": "string", "description": "Sound for push notification. Available only for Android and iOS Platform.", + "type": "string", "default": "", "example": "<SOUND>" }, "color": { - "type": "string", "description": "Color for push notification. Available only for Android Platform.", + "type": "string", "default": "", "example": "<COLOR>" }, "tag": { - "type": "string", "description": "Tag for push notification. Available only for Android Platform.", + "type": "string", "default": "", "example": "<TAG>" }, "badge": { - "type": "integer", "description": "Badge for push notification. Available only for iOS Platform.", + "type": "integer", "default": -1, "format": "int32" }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "default": false, "example": false }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "contentAvailable": { - "type": "boolean", "description": "If set to true, the notification will be delivered in the background. Available only for iOS Platform.", + "type": "boolean", "default": false, "example": false }, "critical": { - "type": "boolean", "description": "If set to true, the notification will be marked as critical. This requires the app to have the critical notification entitlement. Available only for iOS Platform.", + "type": "boolean", "default": false, "example": false }, "priority": { - "type": "string", "description": "Set the notification priority. \"normal\" will consider device state and may not deliver notifications immediately. \"high\" will always attempt to immediately deliver the notification.", + "type": "string", "default": "high", "example": "normal", - "enum": [ - "normal", - "high" - ], - "x-enum-name": "MessagePriority", - "x-enum-keys": [ - "normal", - "high" + "title": "MessagePriority", + "oneOf": [ + { + "type": "string", + "enum": [ + "normal" + ], + "title": "normal" + }, + { + "type": "string", + "enum": [ + "high" + ], + "title": "high" + } ] } }, @@ -34251,127 +42396,135 @@ "type": "object", "properties": { "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "title": { - "type": "string", "description": "Title for push notification.", + "type": "string", "example": "<TITLE>", "nullable": true }, "body": { - "type": "string", "description": "Body for push notification.", + "type": "string", "example": "<BODY>", "nullable": true }, "data": { - "type": "object", "description": "Additional Data for push notification.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "action": { - "type": "string", "description": "Action for push notification.", + "type": "string", "example": "<ACTION>", "nullable": true }, "image": { - "type": "string", "description": "Image for push notification. Must be a compound bucket ID to file ID of a jpeg, png, or bmp image in Appwrite Storage. It should be formatted as <BUCKET_ID>:<FILE_ID>.", + "type": "string", "example": "<ID1:ID2>", "nullable": true }, "icon": { - "type": "string", "description": "Icon for push notification. Available only for Android and Web platforms.", + "type": "string", "example": "<ICON>", "nullable": true }, "sound": { - "type": "string", "description": "Sound for push notification. Available only for Android and iOS platforms.", + "type": "string", "example": "<SOUND>", "nullable": true }, "color": { - "type": "string", "description": "Color for push notification. Available only for Android platforms.", + "type": "string", "example": "<COLOR>", "nullable": true }, "tag": { - "type": "string", "description": "Tag for push notification. Available only for Android platforms.", + "type": "string", "example": "<TAG>", "nullable": true }, "badge": { - "type": "integer", "description": "Badge for push notification. Available only for iOS platforms.", + "type": "integer", "format": "int32", "nullable": true }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "example": false, "nullable": true }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "contentAvailable": { - "type": "boolean", "description": "If set to true, the notification will be delivered in the background. Available only for iOS Platform.", + "type": "boolean", "example": false, "nullable": true }, "critical": { - "type": "boolean", "description": "If set to true, the notification will be marked as critical. This requires the app to have the critical notification entitlement. Available only for iOS Platform.", + "type": "boolean", "example": false, "nullable": true }, "priority": { - "type": "string", "description": "Set the notification priority. \"normal\" will consider device battery state and may send notifications later. \"high\" will always attempt to immediately deliver the notification.", + "type": "string", "example": "normal", - "enum": [ - "normal", - "high" - ], - "x-enum-name": "MessagePriority", - "x-enum-keys": [ - "normal", - "high" + "title": "MessagePriority", + "oneOf": [ + { + "type": "string", + "enum": [ + "normal" + ], + "title": "normal" + }, + { + "type": "string", + "enum": [ + "high" + ], + "title": "high" + } ], "nullable": true } @@ -34506,51 +42659,51 @@ "type": "object", "properties": { "messageId": { - "type": "string", "description": "Message 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.", + "type": "string", "example": "<MESSAGE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "content": { - "type": "string", "description": "SMS Content.", + "type": "string", "example": "<CONTENT>" }, "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "default": false, "example": false }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -34700,44 +42853,44 @@ "type": "object", "properties": { "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "content": { - "type": "string", "description": "Email Content.", + "type": "string", "example": "<CONTENT>", "nullable": true }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "example": false, "nullable": true }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -35159,51 +43312,51 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "authKey": { - "type": "string", "description": "APNS authentication key.", + "type": "string", "default": "", "example": "<AUTH_KEY>" }, "authKeyId": { - "type": "string", "description": "APNS authentication key ID.", + "type": "string", "default": "", "example": "<AUTH_KEY_ID>" }, "teamId": { - "type": "string", "description": "APNS team ID.", + "type": "string", "default": "", "example": "<TEAM_ID>" }, "bundleId": { - "type": "string", "description": "APNS bundle ID.", + "type": "string", "default": "", "example": "<BUNDLE_ID>" }, "sandbox": { - "type": "boolean", "description": "Use APNS sandbox environment.", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -35354,44 +43507,44 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "authKey": { - "type": "string", "description": "APNS authentication key.", + "type": "string", "default": "", "example": "<AUTH_KEY>" }, "authKeyId": { - "type": "string", "description": "APNS authentication key ID.", + "type": "string", "default": "", "example": "<AUTH_KEY_ID>" }, "teamId": { - "type": "string", "description": "APNS team ID.", + "type": "string", "default": "", "example": "<TEAM_ID>" }, "bundleId": { - "type": "string", "description": "APNS bundle ID.", + "type": "string", "default": "", "example": "<BUNDLE_ID>" }, "sandbox": { - "type": "boolean", "description": "Use APNS sandbox environment.", + "type": "boolean", "example": false, "nullable": true } @@ -35520,28 +43673,28 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "serviceAccountJSON": { - "type": "object", "description": "FCM service account JSON.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -35684,20 +43837,20 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "serviceAccountJSON": { - "type": "object", "description": "FCM service account JSON.", + "type": "object", "default": {}, "example": {}, "nullable": true @@ -35763,65 +43916,65 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "apiKey": { - "type": "string", "description": "Mailgun API Key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "domain": { - "type": "string", "description": "Mailgun Domain.", + "type": "string", "default": "", "example": "<DOMAIN>" }, "isEuRegion": { - "type": "boolean", "description": "Set as EU region.", + "type": "boolean", "example": false, "nullable": true }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name. Reply to name must have reply to email as well.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email. Reply to email must have reply to name as well.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -35902,57 +44055,57 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "apiKey": { - "type": "string", "description": "Mailgun API Key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "domain": { - "type": "string", "description": "Mailgun Domain.", + "type": "string", "default": "", "example": "<DOMAIN>" }, "isEuRegion": { - "type": "boolean", "description": "Set as EU region.", + "type": "boolean", "example": false, "nullable": true }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" } @@ -36017,39 +44170,39 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "templateId": { - "type": "string", "description": "Msg91 template ID", + "type": "string", "default": "", "example": "<TEMPLATE_ID>" }, "senderId": { - "type": "string", "description": "Msg91 sender ID.", + "type": "string", "default": "", "example": "<SENDER_ID>" }, "authKey": { - "type": "string", "description": "Msg91 auth key.", + "type": "string", "default": "", "example": "<AUTH_KEY>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -36130,32 +44283,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "templateId": { - "type": "string", "description": "Msg91 template ID.", + "type": "string", "default": "", "example": "<TEMPLATE_ID>" }, "senderId": { - "type": "string", "description": "Msg91 sender ID.", + "type": "string", "default": "", "example": "<SENDER_ID>" }, "authKey": { - "type": "string", "description": "Msg91 auth key.", + "type": "string", "default": "", "example": "<AUTH_KEY>" } @@ -36220,53 +44373,53 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "apiKey": { - "type": "string", "description": "Resend API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -36347,45 +44500,45 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "apiKey": { - "type": "string", "description": "Resend API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the Reply To field for the mail. Default value is Sender Name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the Reply To field for the mail. Default value is Sender Email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" } @@ -36450,53 +44603,53 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "apiKey": { - "type": "string", "description": "Sendgrid API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -36577,45 +44730,45 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "apiKey": { - "type": "string", "description": "Sendgrid API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the Reply To field for the mail. Default value is Sender Name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the Reply To field for the mail. Default value is Sender Email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" } @@ -36680,65 +44833,65 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "accessKey": { - "type": "string", "description": "AWS access key ID.", + "type": "string", "default": "", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "AWS secret access key.", + "type": "string", "default": "", "example": "<SECRET_KEY>" }, "region": { - "type": "string", "description": "AWS region, for example us-east-1.", + "type": "string", "default": "", "example": "<REGION>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -36819,57 +44972,57 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "accessKey": { - "type": "string", "description": "AWS access key ID.", + "type": "string", "default": "", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "AWS secret access key.", + "type": "string", "default": "", "example": "<SECRET_KEY>" }, "region": { - "type": "string", "description": "AWS region, for example us-east-1.", + "type": "string", "default": "", "example": "<REGION>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the Reply To field for the mail. Default value is Sender Name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the Reply To field for the mail. Default value is Sender Email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" } @@ -37020,100 +45173,114 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "host": { - "type": "string", "description": "SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls:\/\/smtp1.example.com:587;ssl:\/\/smtp2.example.com:465\"`. Hosts will be tried in order.", + "type": "string", "example": "<HOST>" }, "port": { - "type": "integer", "description": "The default SMTP server port.", + "type": "integer", "default": 587, "example": 1, "format": "int32" }, "username": { - "type": "string", "description": "Authentication username.", + "type": "string", "default": "", "example": "<USERNAME>" }, "password": { - "type": "string", "description": "Authentication password.", + "type": "string", "default": "", "example": "password", "format": "password" }, "encryption": { - "type": "string", "description": "Encryption type. Can be omitted, 'ssl', or 'tls'", + "type": "string", + "default": "", "example": "none", - "enum": [ - "none", - "ssl", - "tls" - ], - "x-enum-name": "SmtpEncryption", - "x-enum-keys": [ - "none", - "ssl", - "tls" + "title": "SmtpEncryption", + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "ssl" + ], + "title": "ssl" + }, + { + "type": "string", + "enum": [ + "tls" + ], + "title": "tls" + } ] }, "autoTLS": { - "type": "boolean", "description": "Enable SMTP AutoTLS feature.", + "type": "boolean", "default": true, "example": false }, "mailer": { - "type": "string", "description": "The value to use for the X-Mailer header.", + "type": "string", "default": "", "example": "<MAILER>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -37277,93 +45444,107 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "host": { - "type": "string", "description": "SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls:\/\/smtp1.example.com:587;ssl:\/\/smtp2.example.com:465\"`. Hosts will be tried in order.", + "type": "string", "default": "", "example": "<HOST>" }, "port": { - "type": "integer", "description": "SMTP port.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "username": { - "type": "string", "description": "Authentication username.", + "type": "string", "default": "", "example": "<USERNAME>" }, "password": { - "type": "string", "description": "Authentication password.", + "type": "string", "default": "", "example": "password", "format": "password" }, "encryption": { - "type": "string", "description": "Encryption type. Can be 'ssl' or 'tls'", + "type": "string", + "default": "", "example": "none", - "enum": [ - "none", - "ssl", - "tls" - ], - "x-enum-name": "SmtpEncryption", - "x-enum-keys": [ - "none", - "ssl", - "tls" + "title": "SmtpEncryption", + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "ssl" + ], + "title": "ssl" + }, + { + "type": "string", + "enum": [ + "tls" + ], + "title": "tls" + } ] }, "autoTLS": { - "type": "boolean", "description": "Enable SMTP AutoTLS feature.", + "type": "boolean", "example": false, "nullable": true }, "mailer": { - "type": "string", "description": "The value to use for the X-Mailer header.", + "type": "string", "default": "", "example": "<MAILER>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the Reply To field for the mail. Default value is Sender Name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the Reply To field for the mail. Default value is Sender Email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -37428,40 +45609,40 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "from": { - "type": "string", "description": "Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "customerId": { - "type": "string", "description": "Telesign customer ID.", + "type": "string", "default": "", "example": "<CUSTOMER_ID>" }, "apiKey": { - "type": "string", "description": "Telesign API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -37542,32 +45723,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "customerId": { - "type": "string", "description": "Telesign customer ID.", + "type": "string", "default": "", "example": "<CUSTOMER_ID>" }, "apiKey": { - "type": "string", "description": "Telesign API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "from": { - "type": "string", "description": "Sender number.", + "type": "string", "default": "", "example": "<FROM>" } @@ -37632,40 +45813,40 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "from": { - "type": "string", "description": "Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "username": { - "type": "string", "description": "Textmagic username.", + "type": "string", "default": "", "example": "<USERNAME>" }, "apiKey": { - "type": "string", "description": "Textmagic apiKey.", + "type": "string", "default": "", "example": "<API_KEY>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -37746,32 +45927,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "username": { - "type": "string", "description": "Textmagic username.", + "type": "string", "default": "", "example": "<USERNAME>" }, "apiKey": { - "type": "string", "description": "Textmagic apiKey.", + "type": "string", "default": "", "example": "<API_KEY>" }, "from": { - "type": "string", "description": "Sender number.", + "type": "string", "default": "", "example": "<FROM>" } @@ -37836,40 +46017,40 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "from": { - "type": "string", "description": "Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "accountSid": { - "type": "string", "description": "Twilio account secret ID.", + "type": "string", "default": "", "example": "<ACCOUNT_SID>" }, "authToken": { - "type": "string", "description": "Twilio authentication token.", + "type": "string", "default": "", "example": "<AUTH_TOKEN>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -37950,32 +46131,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "accountSid": { - "type": "string", "description": "Twilio account secret ID.", + "type": "string", "default": "", "example": "<ACCOUNT_SID>" }, "authToken": { - "type": "string", "description": "Twilio authentication token.", + "type": "string", "default": "", "example": "<AUTH_TOKEN>" }, "from": { - "type": "string", "description": "Sender number.", + "type": "string", "default": "", "example": "<FROM>" } @@ -38040,40 +46221,40 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "from": { - "type": "string", "description": "Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "apiKey": { - "type": "string", "description": "Vonage API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "apiSecret": { - "type": "string", "description": "Vonage API secret.", + "type": "string", "default": "", "example": "<API_SECRET>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -38154,32 +46335,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "apiKey": { - "type": "string", "description": "Vonage API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "apiSecret": { - "type": "string", "description": "Vonage API secret.", + "type": "string", "default": "", "example": "<API_SECRET>" }, "from": { - "type": "string", "description": "Sender number.", + "type": "string", "default": "", "example": "<FROM>" } @@ -38441,21 +46622,21 @@ "type": "object", "properties": { "topicId": { - "type": "string", "description": "Topic ID. Choose a custom Topic ID or a new Topic ID.", + "type": "string", "example": "<TOPIC_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Topic Name.", + "type": "string", "example": "<NAME>" }, "subscribe": { - "type": "array", "description": "An array of role strings with subscribe permission. By default all users are granted with any subscribe permission. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", + "type": "array", "default": [ "users" ], @@ -38602,14 +46783,14 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Topic Name.", + "type": "string", "example": "<NAME>", "nullable": true }, "subscribe": { - "type": "array", "description": "An array of role strings with subscribe permission. By default all users are granted with any subscribe permission. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", + "type": "array", "example": [ "any" ], @@ -38840,16 +47021,16 @@ "type": "object", "properties": { "subscriberId": { - "type": "string", "description": "Subscriber ID. Choose a custom Subscriber ID or a new Subscriber ID.", + "type": "string", "example": "<SUBSCRIBER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "targetId": { - "type": "string", "description": "Target ID. The target ID to link to the specified Topic ID.", + "type": "string", "example": "<TARGET_ID>" } }, @@ -39135,126 +47316,332 @@ "type": "object", "properties": { "resources": { - "type": "array", "description": "List of resources to migrate", + "type": "array", "items": { + "title": "AppwriteMigrationResource", "type": "string", - "enum": [ - "user", - "team", - "membership", - "auth-methods", - "policies", - "oauth2-provider", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "documentsdb", - "vectorsdb", - "bucket", - "file", - "function", - "deployment", - "environment-variable", - "provider", - "topic", - "subscriber", - "message", - "site", - "site-deployment", - "site-variable", - "platform", - "api-key", - "webhook", - "smtp", - "backup-policy", - "project-variable", - "project-protocols", - "project-labels", - "project-services", - "project-email-template", - "rule" - ], - "x-enum-name": "AppwriteMigrationResource", - "x-enum-keys": [ - "user", - "team", - "membership", - "auth-methods", - "policies", - "oauth2-provider", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "documentsdb", - "vectorsdb", - "bucket", - "file", - "function", - "deployment", - "environment-variable", - "provider", - "topic", - "subscriber", - "message", - "site", - "site-deployment", - "site-variable", - "platform", - "api-key", - "webhook", - "smtp", - "backup-policy", - "project-variable", - "project-protocols", - "project-labels", - "project-services", - "project-email-template", - "rule" + "oneOf": [ + { + "type": "string", + "enum": [ + "user" + ], + "title": "user" + }, + { + "type": "string", + "enum": [ + "team" + ], + "title": "team" + }, + { + "type": "string", + "enum": [ + "membership" + ], + "title": "membership" + }, + { + "type": "string", + "enum": [ + "auth-methods" + ], + "title": "auth-methods" + }, + { + "type": "string", + "enum": [ + "policies" + ], + "title": "policies" + }, + { + "type": "string", + "enum": [ + "oauth2-provider" + ], + "title": "oauth2-provider" + }, + { + "type": "string", + "enum": [ + "database" + ], + "title": "database" + }, + { + "type": "string", + "enum": [ + "table" + ], + "title": "table" + }, + { + "type": "string", + "enum": [ + "column" + ], + "title": "column" + }, + { + "type": "string", + "enum": [ + "index" + ], + "title": "index" + }, + { + "type": "string", + "enum": [ + "row" + ], + "title": "row" + }, + { + "type": "string", + "enum": [ + "document" + ], + "title": "document" + }, + { + "type": "string", + "enum": [ + "attribute" + ], + "title": "attribute" + }, + { + "type": "string", + "enum": [ + "collection" + ], + "title": "collection" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "bucket" + ], + "title": "bucket" + }, + { + "type": "string", + "enum": [ + "file" + ], + "title": "file" + }, + { + "type": "string", + "enum": [ + "function" + ], + "title": "function" + }, + { + "type": "string", + "enum": [ + "deployment" + ], + "title": "deployment" + }, + { + "type": "string", + "enum": [ + "environment-variable" + ], + "title": "environment-variable" + }, + { + "type": "string", + "enum": [ + "provider" + ], + "title": "provider" + }, + { + "type": "string", + "enum": [ + "topic" + ], + "title": "topic" + }, + { + "type": "string", + "enum": [ + "subscriber" + ], + "title": "subscriber" + }, + { + "type": "string", + "enum": [ + "message" + ], + "title": "message" + }, + { + "type": "string", + "enum": [ + "site" + ], + "title": "site" + }, + { + "type": "string", + "enum": [ + "site-deployment" + ], + "title": "site-deployment" + }, + { + "type": "string", + "enum": [ + "site-variable" + ], + "title": "site-variable" + }, + { + "type": "string", + "enum": [ + "platform" + ], + "title": "platform" + }, + { + "type": "string", + "enum": [ + "api-key" + ], + "title": "api-key" + }, + { + "type": "string", + "enum": [ + "webhook" + ], + "title": "webhook" + }, + { + "type": "string", + "enum": [ + "smtp" + ], + "title": "smtp" + }, + { + "type": "string", + "enum": [ + "backup-policy" + ], + "title": "backup-policy" + }, + { + "type": "string", + "enum": [ + "project-variable" + ], + "title": "project-variable" + }, + { + "type": "string", + "enum": [ + "project-protocols" + ], + "title": "project-protocols" + }, + { + "type": "string", + "enum": [ + "project-labels" + ], + "title": "project-labels" + }, + { + "type": "string", + "enum": [ + "project-services" + ], + "title": "project-services" + }, + { + "type": "string", + "enum": [ + "project-email-template" + ], + "title": "project-email-template" + }, + { + "type": "string", + "enum": [ + "rule" + ], + "title": "rule" + } ] } }, "endpoint": { - "type": "string", "description": "Source Appwrite endpoint", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "projectId": { - "type": "string", "description": "Source Project ID", + "type": "string", "example": "<PROJECT_ID>" }, "apiKey": { - "type": "string", "description": "Source API Key", + "type": "string", "example": "<API_KEY>" }, "onDuplicate": { - "type": "string", "description": "Behavior when a row with an existing $id is encountered. \"fail\" (default): abort on first conflict. \"skip\": silently ignore. \"overwrite\": replace existing row.", + "type": "string", "default": "fail", "example": "fail", - "enum": [ - "fail", - "skip", - "overwrite" - ], - "x-enum-name": "OnDuplicate", - "x-enum-keys": [ - "fail", - "skip", - "overwrite" + "title": "OnDuplicate", + "oneOf": [ + { + "type": "string", + "enum": [ + "fail" + ], + "title": "fail" + }, + { + "type": "string", + "enum": [ + "skip" + ], + "title": "skip" + }, + { + "type": "string", + "enum": [ + "overwrite" + ], + "title": "overwrite" + } ] } }, @@ -39323,89 +47710,282 @@ "schema": { "type": "array", "items": { + "title": "AppwriteMigrationResource", "type": "string", - "enum": [ - "user", - "team", - "membership", - "auth-methods", - "policies", - "oauth2-provider", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "documentsdb", - "vectorsdb", - "bucket", - "file", - "function", - "deployment", - "environment-variable", - "provider", - "topic", - "subscriber", - "message", - "site", - "site-deployment", - "site-variable", - "platform", - "api-key", - "webhook", - "smtp", - "backup-policy", - "project-variable", - "project-protocols", - "project-labels", - "project-services", - "project-email-template", - "rule" - ], - "x-enum-name": "AppwriteMigrationResource", - "x-enum-keys": [ - "user", - "team", - "membership", - "auth-methods", - "policies", - "oauth2-provider", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "documentsdb", - "vectorsdb", - "bucket", - "file", - "function", - "deployment", - "environment-variable", - "provider", - "topic", - "subscriber", - "message", - "site", - "site-deployment", - "site-variable", - "platform", - "api-key", - "webhook", - "smtp", - "backup-policy", - "project-variable", - "project-protocols", - "project-labels", - "project-services", - "project-email-template", - "rule" + "oneOf": [ + { + "type": "string", + "enum": [ + "user" + ], + "title": "user" + }, + { + "type": "string", + "enum": [ + "team" + ], + "title": "team" + }, + { + "type": "string", + "enum": [ + "membership" + ], + "title": "membership" + }, + { + "type": "string", + "enum": [ + "auth-methods" + ], + "title": "auth-methods" + }, + { + "type": "string", + "enum": [ + "policies" + ], + "title": "policies" + }, + { + "type": "string", + "enum": [ + "oauth2-provider" + ], + "title": "oauth2-provider" + }, + { + "type": "string", + "enum": [ + "database" + ], + "title": "database" + }, + { + "type": "string", + "enum": [ + "table" + ], + "title": "table" + }, + { + "type": "string", + "enum": [ + "column" + ], + "title": "column" + }, + { + "type": "string", + "enum": [ + "index" + ], + "title": "index" + }, + { + "type": "string", + "enum": [ + "row" + ], + "title": "row" + }, + { + "type": "string", + "enum": [ + "document" + ], + "title": "document" + }, + { + "type": "string", + "enum": [ + "attribute" + ], + "title": "attribute" + }, + { + "type": "string", + "enum": [ + "collection" + ], + "title": "collection" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "bucket" + ], + "title": "bucket" + }, + { + "type": "string", + "enum": [ + "file" + ], + "title": "file" + }, + { + "type": "string", + "enum": [ + "function" + ], + "title": "function" + }, + { + "type": "string", + "enum": [ + "deployment" + ], + "title": "deployment" + }, + { + "type": "string", + "enum": [ + "environment-variable" + ], + "title": "environment-variable" + }, + { + "type": "string", + "enum": [ + "provider" + ], + "title": "provider" + }, + { + "type": "string", + "enum": [ + "topic" + ], + "title": "topic" + }, + { + "type": "string", + "enum": [ + "subscriber" + ], + "title": "subscriber" + }, + { + "type": "string", + "enum": [ + "message" + ], + "title": "message" + }, + { + "type": "string", + "enum": [ + "site" + ], + "title": "site" + }, + { + "type": "string", + "enum": [ + "site-deployment" + ], + "title": "site-deployment" + }, + { + "type": "string", + "enum": [ + "site-variable" + ], + "title": "site-variable" + }, + { + "type": "string", + "enum": [ + "platform" + ], + "title": "platform" + }, + { + "type": "string", + "enum": [ + "api-key" + ], + "title": "api-key" + }, + { + "type": "string", + "enum": [ + "webhook" + ], + "title": "webhook" + }, + { + "type": "string", + "enum": [ + "smtp" + ], + "title": "smtp" + }, + { + "type": "string", + "enum": [ + "backup-policy" + ], + "title": "backup-policy" + }, + { + "type": "string", + "enum": [ + "project-variable" + ], + "title": "project-variable" + }, + { + "type": "string", + "enum": [ + "project-protocols" + ], + "title": "project-protocols" + }, + { + "type": "string", + "enum": [ + "project-labels" + ], + "title": "project-labels" + }, + { + "type": "string", + "enum": [ + "project-services" + ], + "title": "project-services" + }, + { + "type": "string", + "enum": [ + "project-email-template" + ], + "title": "project-email-template" + }, + { + "type": "string", + "enum": [ + "rule" + ], + "title": "rule" + } ] } }, @@ -39497,63 +48077,63 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Database ID containing the source collection.", + "type": "string", "example": "<DATABASE_ID>" }, "collectionId": { - "type": "string", "description": "Collection ID to export documents from.", + "type": "string", "example": "<COLLECTION_ID>" }, "filename": { - "type": "string", "description": "The name of the file to be created for the export, excluding the .csv extension.", + "type": "string", "example": "<FILENAME>" }, "columns": { - "type": "array", "description": "List of attributes to export. If empty, all attributes will be exported. You can use the `*` wildcard to export all attributes from the collection.", + "type": "array", "default": [], "items": { "type": "string" } }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK to filter documents to export. [Learn more about queries](https:\/\/appwrite.io\/docs\/databases#querying-documents). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "delimiter": { - "type": "string", "description": "The character that separates each column value. Default is comma.", + "type": "string", "default": ",", "example": "<DELIMITER>" }, "enclosure": { - "type": "string", "description": "The character that encloses each column value. Default is double quotes.", + "type": "string", "default": "\"", "example": "<ENCLOSURE>" }, "escape": { - "type": "string", "description": "The escape character for the enclosure character. Default is double quotes.", + "type": "string", "default": "\"", "example": "<ESCAPE>" }, "header": { - "type": "boolean", "description": "Whether to include the header row with column names. Default is true.", + "type": "boolean", "default": true, "example": false }, "notify": { - "type": "boolean", "description": "Set to true to receive an email when the export is complete. Default is true.", + "type": "boolean", "default": true, "example": false } @@ -39621,46 +48201,59 @@ "type": "object", "properties": { "bucketId": { - "type": "string", "description": "Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https:\/\/appwrite.io\/docs\/server\/storage#createBucket).", + "type": "string", "example": "<BUCKET_ID>" }, "fileId": { - "type": "string", "description": "File ID.", + "type": "string", "example": "<FILE_ID>" }, "databaseId": { - "type": "string", "description": "Database ID containing the target collection.", + "type": "string", "example": "<DATABASE_ID>" }, "collectionId": { - "type": "string", "description": "Collection ID to import documents into.", + "type": "string", "example": "<COLLECTION_ID>" }, "internalFile": { - "type": "boolean", "description": "Is the file stored in an internal bucket?", + "type": "boolean", "default": false, "example": false }, "onDuplicate": { - "type": "string", "description": "Behavior when a row with an existing $id is encountered. \"fail\" (default): abort on first conflict. \"skip\": silently ignore. \"overwrite\": replace existing row.", + "type": "string", "default": "fail", "example": "fail", - "enum": [ - "fail", - "skip", - "overwrite" - ], - "x-enum-name": "OnDuplicate", - "x-enum-keys": [ - "fail", - "skip", - "overwrite" + "title": "OnDuplicate", + "oneOf": [ + { + "type": "string", + "enum": [ + "fail" + ], + "title": "fail" + }, + { + "type": "string", + "enum": [ + "skip" + ], + "title": "skip" + }, + { + "type": "string", + "enum": [ + "overwrite" + ], + "title": "overwrite" + } ] } }, @@ -39728,40 +48321,88 @@ "type": "object", "properties": { "resources": { - "type": "array", "description": "List of resources to migrate", + "type": "array", "items": { + "title": "FirebaseMigrationResource", "type": "string", - "enum": [ - "user", - "database", - "table", - "column", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" - ], - "x-enum-name": "FirebaseMigrationResource", - "x-enum-keys": [ - "user", - "database", - "table", - "column", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" + "oneOf": [ + { + "type": "string", + "enum": [ + "user" + ], + "title": "user" + }, + { + "type": "string", + "enum": [ + "database" + ], + "title": "database" + }, + { + "type": "string", + "enum": [ + "table" + ], + "title": "table" + }, + { + "type": "string", + "enum": [ + "column" + ], + "title": "column" + }, + { + "type": "string", + "enum": [ + "row" + ], + "title": "row" + }, + { + "type": "string", + "enum": [ + "document" + ], + "title": "document" + }, + { + "type": "string", + "enum": [ + "attribute" + ], + "title": "attribute" + }, + { + "type": "string", + "enum": [ + "collection" + ], + "title": "collection" + }, + { + "type": "string", + "enum": [ + "bucket" + ], + "title": "bucket" + }, + { + "type": "string", + "enum": [ + "file" + ], + "title": "file" + } ] } }, "serviceAccount": { - "type": "string", "description": "JSON of the Firebase service account credentials", + "type": "string", "example": "<SERVICE_ACCOUNT>" } }, @@ -39828,31 +48469,79 @@ "schema": { "type": "array", "items": { + "title": "FirebaseMigrationResource", "type": "string", - "enum": [ - "user", - "database", - "table", - "column", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" - ], - "x-enum-name": "FirebaseMigrationResource", - "x-enum-keys": [ - "user", - "database", - "table", - "column", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" + "oneOf": [ + { + "type": "string", + "enum": [ + "user" + ], + "title": "user" + }, + { + "type": "string", + "enum": [ + "database" + ], + "title": "database" + }, + { + "type": "string", + "enum": [ + "table" + ], + "title": "table" + }, + { + "type": "string", + "enum": [ + "column" + ], + "title": "column" + }, + { + "type": "string", + "enum": [ + "row" + ], + "title": "row" + }, + { + "type": "string", + "enum": [ + "document" + ], + "title": "document" + }, + { + "type": "string", + "enum": [ + "attribute" + ], + "title": "attribute" + }, + { + "type": "string", + "enum": [ + "collection" + ], + "title": "collection" + }, + { + "type": "string", + "enum": [ + "bucket" + ], + "title": "bucket" + }, + { + "type": "string", + "enum": [ + "file" + ], + "title": "file" + } ] } }, @@ -39923,39 +48612,39 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Database ID containing the source collection.", + "type": "string", "example": "<DATABASE_ID>" }, "collectionId": { - "type": "string", "description": "Collection ID to export documents from.", + "type": "string", "example": "<COLLECTION_ID>" }, "filename": { - "type": "string", "description": "The name of the file to be created for the export, excluding the .json extension.", + "type": "string", "example": "<FILENAME>" }, "columns": { - "type": "array", "description": "List of attributes to export. If empty, all attributes will be exported. You can use the `*` wildcard to export all attributes from the collection.", + "type": "array", "default": [], "items": { "type": "string" } }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK to filter documents to export. [Learn more about queries](https:\/\/appwrite.io\/docs\/databases#querying-documents). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "notify": { - "type": "boolean", "description": "Set to true to receive an email when the export is complete. Default is true.", + "type": "boolean", "default": true, "example": false } @@ -40023,46 +48712,59 @@ "type": "object", "properties": { "bucketId": { - "type": "string", "description": "Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https:\/\/appwrite.io\/docs\/server\/storage#createBucket).", + "type": "string", "example": "<BUCKET_ID>" }, "fileId": { - "type": "string", "description": "File ID.", + "type": "string", "example": "<FILE_ID>" }, "databaseId": { - "type": "string", "description": "Database ID containing the target collection.", + "type": "string", "example": "<DATABASE_ID>" }, "collectionId": { - "type": "string", "description": "Collection ID to import documents into.", + "type": "string", "example": "<COLLECTION_ID>" }, "internalFile": { - "type": "boolean", "description": "Is the file stored in an internal bucket?", + "type": "boolean", "default": false, "example": false }, "onDuplicate": { - "type": "string", "description": "Behavior when a row with an existing $id is encountered. \"fail\" (default): abort on first conflict. \"skip\": silently ignore. \"overwrite\": replace existing row.", + "type": "string", "default": "fail", "example": "fail", - "enum": [ - "fail", - "skip", - "overwrite" - ], - "x-enum-name": "OnDuplicate", - "x-enum-keys": [ - "fail", - "skip", - "overwrite" + "title": "OnDuplicate", + "oneOf": [ + { + "type": "string", + "enum": [ + "fail" + ], + "title": "fail" + }, + { + "type": "string", + "enum": [ + "skip" + ], + "title": "skip" + }, + { + "type": "string", + "enum": [ + "overwrite" + ], + "title": "overwrite" + } ] } }, @@ -40130,73 +48832,126 @@ "type": "object", "properties": { "resources": { - "type": "array", "description": "List of resources to migrate", + "type": "array", "items": { + "title": "NHostMigrationResource", "type": "string", - "enum": [ - "user", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" - ], - "x-enum-name": "NHostMigrationResource", - "x-enum-keys": [ - "user", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" + "oneOf": [ + { + "type": "string", + "enum": [ + "user" + ], + "title": "user" + }, + { + "type": "string", + "enum": [ + "database" + ], + "title": "database" + }, + { + "type": "string", + "enum": [ + "table" + ], + "title": "table" + }, + { + "type": "string", + "enum": [ + "column" + ], + "title": "column" + }, + { + "type": "string", + "enum": [ + "index" + ], + "title": "index" + }, + { + "type": "string", + "enum": [ + "row" + ], + "title": "row" + }, + { + "type": "string", + "enum": [ + "document" + ], + "title": "document" + }, + { + "type": "string", + "enum": [ + "attribute" + ], + "title": "attribute" + }, + { + "type": "string", + "enum": [ + "collection" + ], + "title": "collection" + }, + { + "type": "string", + "enum": [ + "bucket" + ], + "title": "bucket" + }, + { + "type": "string", + "enum": [ + "file" + ], + "title": "file" + } ] } }, "subdomain": { - "type": "string", "description": "Source's Subdomain", + "type": "string", "example": "<SUBDOMAIN>" }, "region": { - "type": "string", "description": "Source's Region", + "type": "string", "example": "<REGION>" }, "adminSecret": { - "type": "string", "description": "Source's Admin Secret", + "type": "string", "example": "<ADMIN_SECRET>" }, "database": { - "type": "string", "description": "Source's Database Name", + "type": "string", "example": "<DATABASE>" }, "username": { - "type": "string", "description": "Source's Database Username", + "type": "string", "example": "<USERNAME>" }, "password": { - "type": "string", "description": "Source's Database Password", + "type": "string", "example": "password", "format": "password" }, "port": { - "type": "integer", "description": "Source's Database Port", + "type": "integer", "default": 5432, "format": "int32" } @@ -40269,33 +49024,86 @@ "schema": { "type": "array", "items": { + "title": "NHostMigrationResource", "type": "string", - "enum": [ - "user", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" - ], - "x-enum-name": "NHostMigrationResource", - "x-enum-keys": [ - "user", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" + "oneOf": [ + { + "type": "string", + "enum": [ + "user" + ], + "title": "user" + }, + { + "type": "string", + "enum": [ + "database" + ], + "title": "database" + }, + { + "type": "string", + "enum": [ + "table" + ], + "title": "table" + }, + { + "type": "string", + "enum": [ + "column" + ], + "title": "column" + }, + { + "type": "string", + "enum": [ + "index" + ], + "title": "index" + }, + { + "type": "string", + "enum": [ + "row" + ], + "title": "row" + }, + { + "type": "string", + "enum": [ + "document" + ], + "title": "document" + }, + { + "type": "string", + "enum": [ + "attribute" + ], + "title": "attribute" + }, + { + "type": "string", + "enum": [ + "collection" + ], + "title": "collection" + }, + { + "type": "string", + "enum": [ + "bucket" + ], + "title": "bucket" + }, + { + "type": "string", + "enum": [ + "file" + ], + "title": "file" + } ] } }, @@ -40428,69 +49236,122 @@ "type": "object", "properties": { "resources": { - "type": "array", "description": "List of resources to migrate", + "type": "array", "items": { + "title": "SupabaseMigrationResource", "type": "string", - "enum": [ - "user", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" - ], - "x-enum-name": "SupabaseMigrationResource", - "x-enum-keys": [ - "user", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" + "oneOf": [ + { + "type": "string", + "enum": [ + "user" + ], + "title": "user" + }, + { + "type": "string", + "enum": [ + "database" + ], + "title": "database" + }, + { + "type": "string", + "enum": [ + "table" + ], + "title": "table" + }, + { + "type": "string", + "enum": [ + "column" + ], + "title": "column" + }, + { + "type": "string", + "enum": [ + "index" + ], + "title": "index" + }, + { + "type": "string", + "enum": [ + "row" + ], + "title": "row" + }, + { + "type": "string", + "enum": [ + "document" + ], + "title": "document" + }, + { + "type": "string", + "enum": [ + "attribute" + ], + "title": "attribute" + }, + { + "type": "string", + "enum": [ + "collection" + ], + "title": "collection" + }, + { + "type": "string", + "enum": [ + "bucket" + ], + "title": "bucket" + }, + { + "type": "string", + "enum": [ + "file" + ], + "title": "file" + } ] } }, "endpoint": { - "type": "string", "description": "Source's Supabase Endpoint", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "apiKey": { - "type": "string", "description": "Source's API Key", + "type": "string", "example": "<API_KEY>" }, "databaseHost": { - "type": "string", "description": "Source's Database Host", + "type": "string", "example": "<DATABASE_HOST>" }, "username": { - "type": "string", "description": "Source's Database Username", + "type": "string", "example": "<USERNAME>" }, "password": { - "type": "string", "description": "Source's Database Password", + "type": "string", "example": "password", "format": "password" }, "port": { - "type": "integer", "description": "Source's Database Port", + "type": "integer", "default": 5432, "format": "int32" } @@ -40562,33 +49423,86 @@ "schema": { "type": "array", "items": { + "title": "SupabaseMigrationResource", "type": "string", - "enum": [ - "user", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" - ], - "x-enum-name": "SupabaseMigrationResource", - "x-enum-keys": [ - "user", - "database", - "table", - "column", - "index", - "row", - "document", - "attribute", - "collection", - "bucket", - "file" + "oneOf": [ + { + "type": "string", + "enum": [ + "user" + ], + "title": "user" + }, + { + "type": "string", + "enum": [ + "database" + ], + "title": "database" + }, + { + "type": "string", + "enum": [ + "table" + ], + "title": "table" + }, + { + "type": "string", + "enum": [ + "column" + ], + "title": "column" + }, + { + "type": "string", + "enum": [ + "index" + ], + "title": "index" + }, + { + "type": "string", + "enum": [ + "row" + ], + "title": "row" + }, + { + "type": "string", + "enum": [ + "document" + ], + "title": "document" + }, + { + "type": "string", + "enum": [ + "attribute" + ], + "title": "attribute" + }, + { + "type": "string", + "enum": [ + "collection" + ], + "title": "collection" + }, + { + "type": "string", + "enum": [ + "bucket" + ], + "title": "bucket" + }, + { + "type": "string", + "enum": [ + "file" + ], + "title": "file" + } ] } }, @@ -40940,94 +49854,94 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Database 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database display name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "version": { - "type": "string", "description": "Database engine version. Defaults to latest for selected engine.", + "type": "string", "example": "17", "nullable": true }, "specification": { - "type": "string", "description": "Specification identifier. Drives the allocated CPU, memory, storage, storage class, and connection ceiling.", + "type": "string", "default": "s-1vcpu-1gb", "example": "<SPECIFICATION>" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds.", + "type": "integer", "default": 900, "example": 60, "format": "int32" }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes of inactivity before container scales to zero.", + "type": "integer", "default": 15, "example": 5, "format": "int32" }, "pitr": { - "type": "boolean", "description": "Enable point-in-time recovery (PITR). Continuously archives changes so the database can be restored to any moment within the retention window.", + "type": "boolean", "default": true, "example": false }, "pitrRetentionDays": { - "type": "integer", "description": "Number of days to retain PITR data.", + "type": "integer", "default": 7, "example": 1, "format": "int32" }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "default": false, "example": false }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "default": 85, "example": 50, "format": "int32" }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -41214,135 +50128,135 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database display name.", + "type": "string", "example": "<NAME>", "nullable": true }, "status": { - "type": "string", "description": "Database status. Allowed values: ready, paused, inactive. Set to \"paused\" to pause, \"ready\" to resume (also recovers a failed database whose infrastructure is healthy), or \"inactive\" to spin down a shared-pool database.", + "type": "string", "example": "ready", "nullable": true }, "specification": { - "type": "string", "description": "Specification. Changes cpu, memory, storage, connection ceiling, and node pool based on specification config. Resource changes are applied via rolling cutover with zero downtime.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds (60-86400).", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes before container scales to zero.", + "type": "integer", "example": 5, "format": "int32", "nullable": true }, "pitr": { - "type": "boolean", "description": "Enable or disable point-in-time recovery (PITR).", + "type": "boolean", "example": false, "nullable": true }, "pitrRetentionDays": { - "type": "integer", "description": "Days to retain PITR data.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "example": false, "nullable": true }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "example": 50, "format": "int32", "nullable": true }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "metricsTraceSampleRate": { - "type": "number", "description": "Fraction of queries to trace (0.0\u20131.0). Forwarded to the sidecar.", + "type": "number", "format": "float", "nullable": true }, "metricsSlowQueryLogThresholdMs": { - "type": "integer", "description": "Threshold in ms above which queries are logged as slow. Forwarded to the sidecar.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "sqlApiEnabled": { - "type": "boolean", "description": "Enable the SQL API sidecar for this database.", + "type": "boolean", "example": false, "nullable": true }, "sqlApiAllowedStatements": { - "type": "array", "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "sqlApiMaxRows": { - "type": "integer", "description": "Maximum rows returned per SQL API execution (1-1000000).", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "sqlApiMaxBytes": { - "type": "integer", "description": "Maximum serialised SQL API result payload in bytes (1024-104857600).", + "type": "integer", "example": 1024, "format": "int32", "nullable": true }, "sqlApiTimeoutSeconds": { - "type": "integer", "description": "Per-call SQL API execution timeout in seconds (1-300).", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -41544,8 +50458,8 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" } @@ -41692,37 +50606,37 @@ "type": "object", "properties": { "policyId": { - "type": "string", "description": "Policy 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.", + "type": "string", "example": "<POLICY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32" }, "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "default": true, "example": false } @@ -41882,25 +50796,25 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>", "nullable": true }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "example": false, "nullable": true } @@ -42040,41 +50954,41 @@ "type": "object", "properties": { "provider": { - "type": "string", "description": "Storage provider for off-cluster backups. Allowed values: s3 (Amazon S3 or S3-compatible), gcs (Google Cloud Storage), azure (Azure Blob Storage).", + "type": "string", "example": "s3" }, "bucket": { - "type": "string", "description": "Storage bucket or container name.", + "type": "string", "example": "<BUCKET>" }, "region": { - "type": "string", "description": "Storage region.", + "type": "string", "default": "", "example": "<REGION>" }, "prefix": { - "type": "string", "description": "Object key prefix for backups.", + "type": "string", "default": "backups\/", "example": "<PREFIX>" }, "endpoint": { - "type": "string", "description": "Custom endpoint for S3-compatible storage (e.g. MinIO).", + "type": "string", "default": "", "example": "<ENDPOINT>" }, "accessKey": { - "type": "string", "description": "Access key or client ID for authentication.", + "type": "string", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "Secret key or service account JSON for authentication.", + "type": "string", "example": "<SECRET_KEY>" } }, @@ -42347,8 +51261,8 @@ "type": "object", "properties": { "branchId": { - "type": "string", "description": "Branch 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.", + "type": "string", "default": "", "example": "<BRANCH_ID>", "x-appwrite": { @@ -42356,8 +51270,8 @@ } }, "ttl": { - "type": "integer", "description": "Time-to-live in seconds before the branch expires. Min 300 (5 min), max 604800 (7 days). Default: 86400 (24h).", + "type": "integer", "default": 86400, "example": 300, "format": "int32" @@ -42564,8 +51478,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -42641,13 +51555,13 @@ "type": "object", "properties": { "day": { - "type": "string", "description": "Day of the week for the maintenance window. Allowed values: sun, mon, tue, wed, thu, fri, sat.", + "type": "string", "example": "sun" }, "hourUtc": { - "type": "integer", "description": "Hour in UTC (0-23) for maintenance window start.", + "type": "integer", "example": 0, "format": "int32" } @@ -42727,13 +51641,13 @@ "type": "object", "properties": { "targetType": { - "type": "string", "description": "Target database type to migrate to. Allowed values: shared (serverless, scales to zero when idle), dedicated (always-on with persistent resources).", + "type": "string", "example": "shared" }, "specification": { - "type": "string", "description": "Target specification to provision when migrating to dedicated. Ignored for shared. Defaults to the database's current specification.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true } @@ -43128,26 +52042,26 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Restoration type. Allowed values: backup, pitr. Use \"backup\" to restore from a specific backup, or \"pitr\" for point-in-time recovery.", + "type": "string", "default": "backup", "example": "backup" }, "backupId": { - "type": "string", "description": "Backup ID to restore from (required for backup type).", + "type": "string", "example": "<BACKUP_ID>", "nullable": true }, "targetDatabaseId": { - "type": "string", "description": "Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version.", + "type": "string", "example": "<TARGET_DATABASE_ID>", "nullable": true }, "targetTime": { - "type": "string", "description": "Target time for PITR (required for pitr type) as an [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -43354,8 +52268,8 @@ "type": "object", "properties": { "targetVersion": { - "type": "string", "description": "Target engine version to upgrade to.", + "type": "string", "example": "<TARGET_VERSION>" } }, @@ -43482,94 +52396,94 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Database 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database display name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "version": { - "type": "string", "description": "Database engine version. Defaults to latest for selected engine.", + "type": "string", "example": "17", "nullable": true }, "specification": { - "type": "string", "description": "Specification identifier. Drives the allocated CPU, memory, storage, storage class, and connection ceiling.", + "type": "string", "default": "s-1vcpu-1gb", "example": "<SPECIFICATION>" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds.", + "type": "integer", "default": 900, "example": 60, "format": "int32" }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes of inactivity before container scales to zero.", + "type": "integer", "default": 15, "example": 5, "format": "int32" }, "pitr": { - "type": "boolean", "description": "Enable point-in-time recovery (PITR). Continuously archives changes so the database can be restored to any moment within the retention window.", + "type": "boolean", "default": true, "example": false }, "pitrRetentionDays": { - "type": "integer", "description": "Number of days to retain PITR data.", + "type": "integer", "default": 7, "example": 1, "format": "int32" }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "default": false, "example": false }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "default": 85, "example": 50, "format": "int32" }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -43756,135 +52670,135 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database display name.", + "type": "string", "example": "<NAME>", "nullable": true }, "status": { - "type": "string", "description": "Database status. Allowed values: ready, paused, inactive. Set to \"paused\" to pause, \"ready\" to resume (also recovers a failed database whose infrastructure is healthy), or \"inactive\" to spin down a shared-pool database.", + "type": "string", "example": "ready", "nullable": true }, "specification": { - "type": "string", "description": "Specification. Changes cpu, memory, storage, connection ceiling, and node pool based on specification config. Resource changes are applied via rolling cutover with zero downtime.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds (60-86400).", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes before container scales to zero.", + "type": "integer", "example": 5, "format": "int32", "nullable": true }, "pitr": { - "type": "boolean", "description": "Enable or disable point-in-time recovery (PITR).", + "type": "boolean", "example": false, "nullable": true }, "pitrRetentionDays": { - "type": "integer", "description": "Days to retain PITR data.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "example": false, "nullable": true }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "example": 50, "format": "int32", "nullable": true }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "metricsTraceSampleRate": { - "type": "number", "description": "Fraction of queries to trace (0.0\u20131.0). Forwarded to the sidecar.", + "type": "number", "format": "float", "nullable": true }, "metricsSlowQueryLogThresholdMs": { - "type": "integer", "description": "Threshold in ms above which queries are logged as slow. Forwarded to the sidecar.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "sqlApiEnabled": { - "type": "boolean", "description": "Enable the SQL API sidecar for this database.", + "type": "boolean", "example": false, "nullable": true }, "sqlApiAllowedStatements": { - "type": "array", "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "sqlApiMaxRows": { - "type": "integer", "description": "Maximum rows returned per SQL API execution (1-1000000).", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "sqlApiMaxBytes": { - "type": "integer", "description": "Maximum serialised SQL API result payload in bytes (1024-104857600).", + "type": "integer", "example": 1024, "format": "int32", "nullable": true }, "sqlApiTimeoutSeconds": { - "type": "integer", "description": "Per-call SQL API execution timeout in seconds (1-300).", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -44086,8 +53000,8 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" } @@ -44234,37 +53148,37 @@ "type": "object", "properties": { "policyId": { - "type": "string", "description": "Policy 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.", + "type": "string", "example": "<POLICY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32" }, "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "default": true, "example": false } @@ -44424,25 +53338,25 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>", "nullable": true }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "example": false, "nullable": true } @@ -44582,41 +53496,41 @@ "type": "object", "properties": { "provider": { - "type": "string", "description": "Storage provider for off-cluster backups. Allowed values: s3 (Amazon S3 or S3-compatible), gcs (Google Cloud Storage), azure (Azure Blob Storage).", + "type": "string", "example": "s3" }, "bucket": { - "type": "string", "description": "Storage bucket or container name.", + "type": "string", "example": "<BUCKET>" }, "region": { - "type": "string", "description": "Storage region.", + "type": "string", "default": "", "example": "<REGION>" }, "prefix": { - "type": "string", "description": "Object key prefix for backups.", + "type": "string", "default": "backups\/", "example": "<PREFIX>" }, "endpoint": { - "type": "string", "description": "Custom endpoint for S3-compatible storage (e.g. MinIO).", + "type": "string", "default": "", "example": "<ENDPOINT>" }, "accessKey": { - "type": "string", "description": "Access key or client ID for authentication.", + "type": "string", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "Secret key or service account JSON for authentication.", + "type": "string", "example": "<SECRET_KEY>" } }, @@ -44889,8 +53803,8 @@ "type": "object", "properties": { "branchId": { - "type": "string", "description": "Branch 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.", + "type": "string", "default": "", "example": "<BRANCH_ID>", "x-appwrite": { @@ -44898,8 +53812,8 @@ } }, "ttl": { - "type": "integer", "description": "Time-to-live in seconds before the branch expires. Min 300 (5 min), max 604800 (7 days). Default: 86400 (24h).", + "type": "integer", "default": 86400, "example": 300, "format": "int32" @@ -45106,20 +54020,20 @@ "type": "object", "properties": { "sql": { - "type": "string", "description": "SQL statement to execute. Exactly one statement per request.", + "type": "string", "example": "<SQL>" }, "bindings": { - "type": "object", "description": "Optional bound parameters. Pass either a positional list or a name => value map matching the placeholder style used in the SQL.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "timeoutSeconds": { - "type": "integer", "description": "Per-call execution timeout override. Must be less than or equal to the database's configured sqlApiTimeoutSeconds.", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -45199,8 +54113,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -45276,13 +54190,13 @@ "type": "object", "properties": { "day": { - "type": "string", "description": "Day of the week for the maintenance window. Allowed values: sun, mon, tue, wed, thu, fri, sat.", + "type": "string", "example": "sun" }, "hourUtc": { - "type": "integer", "description": "Hour in UTC (0-23) for maintenance window start.", + "type": "integer", "example": 0, "format": "int32" } @@ -45362,13 +54276,13 @@ "type": "object", "properties": { "targetType": { - "type": "string", "description": "Target database type to migrate to. Allowed values: shared (serverless, scales to zero when idle), dedicated (always-on with persistent resources).", + "type": "string", "example": "shared" }, "specification": { - "type": "string", "description": "Target specification to provision when migrating to dedicated. Ignored for shared. Defaults to the database's current specification.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true } @@ -45659,52 +54573,52 @@ "type": "object", "properties": { "mode": { - "type": "string", "description": "Connection pool mode. Allowed values: transaction, session. Transaction mode returns connections to the pool after each transaction; session mode holds connections for the entire session lifetime.", + "type": "string", "example": "transaction", "nullable": true }, "maxConnections": { - "type": "integer", "description": "Client-connection ceiling the pooler accepts. Supported on MySQL and MariaDB only; the PostgreSQL pooler has no client cap, so set networkMaxConnections on the database instead.", + "type": "integer", "example": 10, "format": "int32", "nullable": true }, "defaultPoolSize": { - "type": "integer", "description": "Default pool size per user.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "readWriteSplitting": { - "type": "boolean", "description": "Route SELECTs to HA replicas, writes and locked reads to the primary. Defaults to true when HA is enabled.", + "type": "boolean", "example": false, "nullable": true }, "poolerCpuRequest": { - "type": "string", "description": "Pooler sidecar CPU request override (Kubernetes quantity, e.g. \"250m\" or \"1\"). Leave null for the proportional default (5% of DB CPU, floor 100m).", + "type": "string", "example": "<POOLER_CPU_REQUEST>", "nullable": true }, "poolerCpuLimit": { - "type": "string", "description": "Pooler sidecar CPU limit override (Kubernetes quantity, e.g. \"500m\" or \"1\"). Leave null for the proportional default (10% of DB CPU, floor 200m). Changing this field rolls the database pod.", + "type": "string", "example": "<POOLER_CPU_LIMIT>", "nullable": true }, "poolerMemoryRequest": { - "type": "string", "description": "Pooler sidecar memory request override (Kubernetes quantity, e.g. \"128Mi\" or \"1Gi\"). Leave null for the proportional default (7.5% of DB memory, floor 64Mi).", + "type": "string", "example": "<POOLER_MEMORY_REQUEST>", "nullable": true }, "poolerMemoryLimit": { - "type": "string", "description": "Pooler sidecar memory limit override (Kubernetes quantity, e.g. \"256Mi\" or \"1Gi\"). Leave null for the proportional default (15% of DB memory, floor 128Mi). Changing this field rolls the database pod.", + "type": "string", "example": "<POOLER_MEMORY_LIMIT>", "nullable": true } @@ -45942,26 +54856,26 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Restoration type. Allowed values: backup, pitr. Use \"backup\" to restore from a specific backup, or \"pitr\" for point-in-time recovery.", + "type": "string", "default": "backup", "example": "backup" }, "backupId": { - "type": "string", "description": "Backup ID to restore from (required for backup type).", + "type": "string", "example": "<BACKUP_ID>", "nullable": true }, "targetDatabaseId": { - "type": "string", "description": "Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version.", + "type": "string", "example": "<TARGET_DATABASE_ID>", "nullable": true }, "targetTime": { - "type": "string", "description": "Target time for PITR (required for pitr type) as an [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -46168,8 +55082,8 @@ "type": "object", "properties": { "targetVersion": { - "type": "string", "description": "Target engine version to upgrade to.", + "type": "string", "example": "<TARGET_VERSION>" } }, @@ -46308,8 +55222,8 @@ "type": "object", "properties": { "read": { - "type": "boolean", "description": "Notification read status.", + "type": "boolean", "example": false } }, @@ -46389,19 +55303,19 @@ "type": "object", "properties": { "grant_id": { - "type": "string", "description": "Grant ID made during authorization, provided to consent screen in URL search params.", + "type": "string", "example": "<GRANT_ID>" }, "authorization_details": { - "type": "string", "description": "Enriched `authorization_details` the user consented to, replacing what the client requested. Each entry must use a `type` the project accepts. Optional; omit to keep the originally requested details.", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" }, "scope": { - "type": "string", "description": "Space-separated scopes the user consented to. Must be a subset of the scopes originally requested; identity scopes such as `openid` are always retained. Optional; omit to keep the originally requested scopes.", + "type": "string", "default": "", "example": "<SCOPE>" } @@ -46696,190 +55610,190 @@ "type": "object", "properties": { "client_id": { - "type": "string", - "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", - "default": "", - "example": "<CLIENT_ID>" - }, - "redirect_uri": { - "type": "string", - "description": "Redirect URI where visitor will be redirected after authorization, whether successful or not.", - "default": "", - "example": "https:\/\/example.com", - "format": "url" - }, - "response_type": { - "type": "string", - "description": "OAuth2 \/ OIDC response type. One of `code` (Authorization Code Flow), `id_token` (Implicit Flow, OIDC login only), or `code id_token` (Hybrid Flow).", - "default": "", - "example": "" - }, - "scope": { - "type": "string", - "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`, `phone`.", - "default": "", - "example": "<SCOPE>" - }, - "state": { - "type": "string", - "description": "OAuth2 state. You receive this back in the redirect URI.", - "default": "", - "example": "<STATE>" - }, - "nonce": { - "type": "string", - "description": "OIDC nonce parameter to prevent replay attacks. Required when response_type includes `id_token`.", - "default": "", - "example": "<NONCE>" - }, - "code_challenge": { - "type": "string", - "description": "PKCE code challenge. Required when OAuth2 app is public.", - "default": "", - "example": "<CODE_CHALLENGE>" - }, - "code_challenge_method": { - "type": "string", - "description": "PKCE code challenge method. Required when OAuth2 app is public.", - "default": "", - "example": "s256" - }, - "prompt": { - "type": "string", - "description": "OIDC prompt parameter for customization of consent screen. Space-separated list of: none, login, consent, select_account.", - "default": "", - "example": "<PROMPT>" - }, - "max_age": { - "type": "integer", - "description": "OIDC max_age paraleter for customization of consent screen. Maximum allowable elapsed time in seconds since the user last authenticated. If exceeded, re-authentication is required.", - "example": 0, - "format": "int32", - "nullable": true - }, - "authorization_details": { - "type": "string", - "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", - "default": "", - "example": "<AUTHORIZATION_DETAILS>" - }, - "resource": { - "type": "string", - "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", - "default": [] - }, - "audience": { - "type": "string", - "description": "Compatibility alias for a single OAuth2 resource indicator URI.", - "default": "", - "example": "<AUDIENCE>" - }, - "request_uri": { - "type": "string", - "description": "OAuth2 authorization request handle returned by the pushed authorization request endpoint.", - "default": "", - "example": "<REQUEST_URI>" - } - } - } - } - } - } - } - }, - "\/oauth2\/{project_id}\/device_authorization": { - "post": { - "summary": "OAuth2 Device Authorization", - "operationId": "oauth2CreateDeviceAuthorization", - "tags": [ - "oauth2" - ], - "description": "Start the OAuth2 Device Authorization Grant. Returns the device code, user code, verification URL, expiration, and polling interval.", - "responses": { - "200": { - "description": "OAuth2 Device Authorization", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/oauth2DeviceAuthorization" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "authorization", - "cookies": false, - "type": "", - "demo": "oauth2\/create-device-authorization.md", - "rate-limit": 60, - "rate-time": 60, - "rate-key": "url:{url},ip:{ip}", - "scope": "public", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "ProjectPath": [] - } - }, - "security": [ - { - "ProjectPath": [], - "Session": [], - "JWT": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "project_id", - "description": "Project ID in which OAuth2 client exists.", - "required": true, - "schema": { - "type": "string", - "example": "<PROJECT_ID>" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "<CLIENT_ID>" }, + "redirect_uri": { + "description": "Redirect URI where visitor will be redirected after authorization, whether successful or not.", + "type": "string", + "default": "", + "example": "https:\/\/example.com", + "format": "url" + }, + "response_type": { + "description": "OAuth2 \/ OIDC response type. One of `code` (Authorization Code Flow), `id_token` (Implicit Flow, OIDC login only), or `code id_token` (Hybrid Flow).", + "type": "string", + "default": "", + "example": "" + }, "scope": { + "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`, `phone`.", "type": "string", - "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`.", "default": "", "example": "<SCOPE>" }, - "authorization_details": { + "state": { + "description": "OAuth2 state. You receive this back in the redirect URI.", + "type": "string", + "default": "", + "example": "<STATE>" + }, + "nonce": { + "description": "OIDC nonce parameter to prevent replay attacks. Required when response_type includes `id_token`.", + "type": "string", + "default": "", + "example": "<NONCE>" + }, + "code_challenge": { + "description": "PKCE code challenge. Required when OAuth2 app is public.", + "type": "string", + "default": "", + "example": "<CODE_CHALLENGE>" + }, + "code_challenge_method": { + "description": "PKCE code challenge method. Required when OAuth2 app is public.", + "type": "string", + "default": "", + "example": "s256" + }, + "prompt": { + "description": "OIDC prompt parameter for customization of consent screen. Space-separated list of: none, login, consent, select_account.", "type": "string", + "default": "", + "example": "<PROMPT>" + }, + "max_age": { + "description": "OIDC max_age paraleter for customization of consent screen. Maximum allowable elapsed time in seconds since the user last authenticated. If exceeded, re-authentication is required.", + "type": "integer", + "example": 0, + "format": "int32", + "nullable": true + }, + "authorization_details": { "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { + "description": "Compatibility alias for a single OAuth2 resource indicator URI.", "type": "string", + "default": "", + "example": "<AUDIENCE>" + }, + "request_uri": { + "description": "OAuth2 authorization request handle returned by the pushed authorization request endpoint.", + "type": "string", + "default": "", + "example": "<REQUEST_URI>" + } + } + } + } + } + } + } + }, + "\/oauth2\/{project_id}\/device_authorization": { + "post": { + "summary": "OAuth2 Device Authorization", + "operationId": "oauth2CreateDeviceAuthorization", + "tags": [ + "oauth2" + ], + "description": "Start the OAuth2 Device Authorization Grant. Returns the device code, user code, verification URL, expiration, and polling interval.", + "responses": { + "200": { + "description": "OAuth2 Device Authorization", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/oauth2DeviceAuthorization" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "authorization", + "cookies": false, + "type": "", + "demo": "oauth2\/create-device-authorization.md", + "rate-limit": 60, + "rate-time": 60, + "rate-key": "url:{url},ip:{ip}", + "scope": "public", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "ProjectPath": [] + } + }, + "security": [ + { + "ProjectPath": [], + "Session": [], + "JWT": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "project_id", + "description": "Project ID in which OAuth2 client exists.", + "required": true, + "schema": { + "type": "string", + "example": "<PROJECT_ID>" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "client_id": { + "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", + "default": "", + "example": "<CLIENT_ID>" + }, + "scope": { + "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`.", + "type": "string", + "default": "", + "example": "<SCOPE>" + }, + "authorization_details": { + "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", + "default": "", + "example": "<AUTHORIZATION_DETAILS>" + }, + "resource": { + "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", + "default": [] + }, + "audience": { "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "<AUDIENCE>" } @@ -46957,8 +55871,8 @@ "type": "object", "properties": { "user_code": { - "type": "string", "description": "User code displayed on the device.", + "type": "string", "example": "<USER_CODE>" } }, @@ -47226,39 +56140,39 @@ "type": "object", "properties": { "id_token_hint": { - "type": "string", "description": "ID Token previously issued to the app, used as proof of the logout request. Required to end the session; signature and issuer are validated while expiry is ignored.", + "type": "string", "default": "", "example": "<ID_TOKEN_HINT>" }, "logout_hint": { - "type": "string", "description": "Hint about the user that is logging out. Accepted for OIDC compatibility.", + "type": "string", "default": "", "example": "<LOGOUT_HINT>" }, "client_id": { - "type": "string", "description": "OAuth2 client ID. When both `client_id` and `id_token_hint` are provided, they must identify the same app.", + "type": "string", "default": "", "example": "<CLIENT_ID>" }, "post_logout_redirect_uri": { - "type": "string", "description": "URI to redirect the user to after logout. Must exactly match a URI registered in the app's `postLogoutRedirectUris`.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "state": { - "type": "string", "description": "Opaque value passed back unchanged in the `state` query param of the post-logout redirect.", + "type": "string", "default": "", "example": "<STATE>" }, "ui_locales": { - "type": "string", "description": "Preferred languages for any logout UI, as space-separated BCP47 tags. Accepted for OIDC compatibility.", + "type": "string", "default": "", "example": "<UI_LOCALES>" } @@ -47435,78 +56349,78 @@ "type": "object", "properties": { "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "example": "<CLIENT_ID>" }, "redirect_uri": { - "type": "string", "description": "Redirect URI where visitor will be redirected after authorization, whether successful or not.", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "response_type": { - "type": "string", "description": "OAuth2 \/ OIDC response type.", + "type": "string", "example": "code" }, "scope": { - "type": "string", "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`, `phone`.", + "type": "string", "default": "", "example": "<SCOPE>" }, "state": { - "type": "string", "description": "OAuth2 state. You receive this back in the redirect URI.", + "type": "string", "default": "", "example": "<STATE>" }, "nonce": { - "type": "string", "description": "OIDC nonce parameter to prevent replay attacks. Required when response_type includes `id_token`.", + "type": "string", "default": "", "example": "<NONCE>" }, "code_challenge": { - "type": "string", "description": "PKCE code challenge. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "<CODE_CHALLENGE>" }, "code_challenge_method": { - "type": "string", "description": "PKCE code challenge method. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "s256" }, "prompt": { - "type": "string", "description": "OIDC prompt parameter for customization of consent screen. Space-separated list of: none, login, consent, select_account.", + "type": "string", "default": "", "example": "<PROMPT>" }, "max_age": { - "type": "integer", "description": "OIDC max_age parameter for customization of consent screen.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "authorization_details": { - "type": "string", "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "<AUDIENCE>" } @@ -47687,8 +56601,8 @@ "type": "object", "properties": { "grant_id": { - "type": "string", "description": "Grant ID made during authorization, provided to consent screen in URL search params.", + "type": "string", "example": "<GRANT_ID>" } }, @@ -47770,25 +56684,25 @@ "type": "object", "properties": { "token": { - "type": "string", "description": "The access or refresh token to revoke.", + "type": "string", "example": "<TOKEN>" }, "token_type_hint": { - "type": "string", "description": "Type of token to revoke (access_token or refresh_token).", + "type": "string", "default": "", "example": "access_token" }, "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "<CLIENT_ID>" }, "client_secret": { - "type": "string", "description": "OAuth2 client secret. Required for confidential apps; omitted for public apps.", + "type": "string", "default": "", "example": "<CLIENT_SECRET>" } @@ -47870,61 +56784,61 @@ "type": "object", "properties": { "grant_type": { - "type": "string", "description": "OAuth2 grant type. Can be one of: `authorization_code`, `refresh_token`, `urn:ietf:params:oauth:grant-type:device_code`.", + "type": "string", "example": "<GRANT_TYPE>" }, "code": { - "type": "string", "description": "Authorization code to be exchanged for access and refresh tokens. Required for `authorization_code` grant type.", + "type": "string", "default": "", "example": "<CODE>" }, "refresh_token": { - "type": "string", "description": "Refresh token to be exchanged for a new access and refresh tokens. Required for `refresh_token` grant type.", + "type": "string", "default": "", "example": "<REFRESH_TOKEN>" }, "device_code": { - "type": "string", "description": "Device code obtained from the device authorization endpoint. Required for `urn:ietf:params:oauth:grant-type:device_code` grant type.", + "type": "string", "default": "", "example": "<DEVICE_CODE>" }, "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "<CLIENT_ID>" }, "client_secret": { - "type": "string", "description": "OAuth2 client secret. Required for confidential apps.", + "type": "string", "default": "", "example": "<CLIENT_SECRET>" }, "code_verifier": { - "type": "string", "description": "PKCE code verifier. Required for public apps.", + "type": "string", "default": "", "example": "<CODE_VERIFIER>" }, "redirect_uri": { - "type": "string", "description": "Redirect URI. Required for `authorization_code` grant type.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "<AUDIENCE>" } @@ -48039,8 +56953,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "New organization name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -48226,13 +57140,13 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application unique ID.", + "type": "string", "example": "<APP_ID>" }, "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. The Appwrite Console stores authorized project IDs here.", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" } @@ -48377,8 +57291,8 @@ "type": "object", "properties": { "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. Omit to keep the current value.", + "type": "string", "example": "<AUTHORIZATION_DETAILS>", "nullable": true } @@ -48574,65 +57488,143 @@ "type": "object", "properties": { "keyId": { - "type": "string", "description": "Key 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.", + "type": "string", "example": "<KEY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "OrganizationKeyScopes", "type": "string", - "enum": [ - "projects.read", - "projects.write", - "devKeys.read", - "devKeys.write", - "organization.keys.read", - "organization.keys.write", - "organization.installations.read", - "organization.installations.write", - "organization.memberships.read", - "organization.memberships.write", - "organization.read", - "organization.write", - "domains.read", - "domains.write", - "keys.read", - "keys.write" - ], - "x-enum-name": "OrganizationKeyScopes", - "x-enum-keys": [ - "projects.read", - "projects.write", - "devKeys.read", - "devKeys.write", - "organization.keys.read", - "organization.keys.write", - "organization.installations.read", - "organization.installations.write", - "organization.memberships.read", - "organization.memberships.write", - "organization.read", - "organization.write", - "domains.read", - "domains.write", - "keys.read", - "keys.write" + "oneOf": [ + { + "type": "string", + "enum": [ + "projects.read" + ], + "title": "projects.read" + }, + { + "type": "string", + "enum": [ + "projects.write" + ], + "title": "projects.write" + }, + { + "type": "string", + "enum": [ + "devKeys.read" + ], + "title": "devKeys.read" + }, + { + "type": "string", + "enum": [ + "devKeys.write" + ], + "title": "devKeys.write" + }, + { + "type": "string", + "enum": [ + "organization.keys.read" + ], + "title": "organization.keys.read" + }, + { + "type": "string", + "enum": [ + "organization.keys.write" + ], + "title": "organization.keys.write" + }, + { + "type": "string", + "enum": [ + "organization.installations.read" + ], + "title": "organization.installations.read" + }, + { + "type": "string", + "enum": [ + "organization.installations.write" + ], + "title": "organization.installations.write" + }, + { + "type": "string", + "enum": [ + "organization.memberships.read" + ], + "title": "organization.memberships.read" + }, + { + "type": "string", + "enum": [ + "organization.memberships.write" + ], + "title": "organization.memberships.write" + }, + { + "type": "string", + "enum": [ + "organization.read" + ], + "title": "organization.read" + }, + { + "type": "string", + "enum": [ + "organization.write" + ], + "title": "organization.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -48774,57 +57766,135 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "OrganizationKeyScopes", "type": "string", - "enum": [ - "projects.read", - "projects.write", - "devKeys.read", - "devKeys.write", - "organization.keys.read", - "organization.keys.write", - "organization.installations.read", - "organization.installations.write", - "organization.memberships.read", - "organization.memberships.write", - "organization.read", - "organization.write", - "domains.read", - "domains.write", - "keys.read", - "keys.write" - ], - "x-enum-name": "OrganizationKeyScopes", - "x-enum-keys": [ - "projects.read", - "projects.write", - "devKeys.read", - "devKeys.write", - "organization.keys.read", - "organization.keys.write", - "organization.installations.read", - "organization.installations.write", - "organization.memberships.read", - "organization.memberships.write", - "organization.read", - "organization.write", - "domains.read", - "domains.write", - "keys.read", - "keys.write" + "oneOf": [ + { + "type": "string", + "enum": [ + "projects.read" + ], + "title": "projects.read" + }, + { + "type": "string", + "enum": [ + "projects.write" + ], + "title": "projects.write" + }, + { + "type": "string", + "enum": [ + "devKeys.read" + ], + "title": "devKeys.read" + }, + { + "type": "string", + "enum": [ + "devKeys.write" + ], + "title": "devKeys.write" + }, + { + "type": "string", + "enum": [ + "organization.keys.read" + ], + "title": "organization.keys.read" + }, + { + "type": "string", + "enum": [ + "organization.keys.write" + ], + "title": "organization.keys.write" + }, + { + "type": "string", + "enum": [ + "organization.installations.read" + ], + "title": "organization.installations.read" + }, + { + "type": "string", + "enum": [ + "organization.installations.write" + ], + "title": "organization.installations.write" + }, + { + "type": "string", + "enum": [ + "organization.memberships.read" + ], + "title": "organization.memberships.read" + }, + { + "type": "string", + "enum": [ + "organization.memberships.write" + ], + "title": "organization.memberships.write" + }, + { + "type": "string", + "enum": [ + "organization.read" + ], + "title": "organization.read" + }, + { + "type": "string", + "enum": [ + "organization.write" + ], + "title": "organization.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -49030,42 +58100,42 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "Email of the new organization member.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "userId": { - "type": "string", "description": "ID of the user to be added to the organization.", + "type": "string", "default": "", "example": "<USER_ID>" }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "roles": { - "type": "array", "description": "Array of strings. Use this param to set the user roles in the organization. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the invitation email. This parameter is not required when an API key is supplied.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "name": { - "type": "string", "description": "Name of the new organization member. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -49204,8 +58274,8 @@ "type": "object", "properties": { "roles": { - "type": "array", "description": "An array of strings. Use this param to set the user's roles in the organization. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } @@ -49410,34 +58480,63 @@ "type": "object", "properties": { "projectId": { - "type": "string", - "description": "Unique Id. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, and hyphen. Can't start with a special char. Max length is 36 chars." + "description": "Unique Id. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, and hyphen. Can't start with a special char. Max length is 36 chars.", + "type": "string" }, "name": { - "type": "string", "description": "Project name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "region": { - "type": "string", "description": "Project Region.", + "type": "string", + "default": "default", "example": "fra", - "enum": [ - "fra", - "nyc", - "syd", - "sfo", - "sgp", - "tor" - ], - "x-enum-name": "Region", - "x-enum-keys": [ - "fra", - "nyc", - "syd", - "sfo", - "sgp", - "tor" + "title": "Region", + "oneOf": [ + { + "type": "string", + "enum": [ + "fra" + ], + "title": "fra" + }, + { + "type": "string", + "enum": [ + "nyc" + ], + "title": "nyc" + }, + { + "type": "string", + "enum": [ + "syd" + ], + "title": "syd" + }, + { + "type": "string", + "enum": [ + "sfo" + ], + "title": "sfo" + }, + { + "type": "string", + "enum": [ + "sgp" + ], + "title": "sgp" + }, + { + "type": "string", + "enum": [ + "tor" + ], + "title": "tor" + } ] } }, @@ -49576,8 +58675,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Project name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -49772,76 +58871,84 @@ "type": "object", "properties": { "organizationId": { - "type": "string", "description": "Organization 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.", + "type": "string", "example": "<ORGANIZATION_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Organization name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "billingPlan": { - "type": "string", "description": "Organization billing plan chosen", + "type": "string", "example": "tier-0" }, "paymentMethodId": { - "type": "string", "description": "Payment method ID. Required for pro plans when trial is not available and user doesn't have default payment method set.", + "type": "string", "example": "<PAYMENT_METHOD_ID>", "nullable": true }, "billingAddressId": { - "type": "string", "description": "Unique ID of billing address", + "type": "string", "default": "", "example": "<BILLING_ADDRESS_ID>", "nullable": true }, "invites": { - "type": "array", "description": "Additional member invites", + "type": "array", "default": [], "items": { "type": "string" } }, "couponId": { - "type": "string", "description": "Coupon id", + "type": "string", "example": "<COUPON_ID>", "nullable": true }, "taxId": { - "type": "string", "description": "Tax Id associated to billing.", + "type": "string", "example": "<TAX_ID>", "nullable": true }, "budget": { - "type": "integer", "description": "Budget limit for additional usage set for the organization", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "platform": { - "type": "string", "description": "Platform type", + "type": "string", "default": "appwrite", "example": "appwrite", - "enum": [ - "appwrite", - "imagine" - ], - "x-enum-name": "Platform", - "x-enum-keys": [ - "appwrite", - "imagine" + "title": "Platform", + "oneOf": [ + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "imagine" + ], + "title": "imagine" + } ] } }, @@ -49908,43 +59015,51 @@ "type": "object", "properties": { "billingPlan": { - "type": "string", "description": "Organization billing plan chosen", + "type": "string", "example": "tier-0" }, "paymentMethodId": { - "type": "string", "description": "Payment method ID. Required for pro plans when trial is not available and user doesn't have default payment method set.", + "type": "string", "example": "<PAYMENT_METHOD_ID>", "nullable": true }, "invites": { - "type": "array", "description": "Additional member invites", + "type": "array", "default": [], "items": { "type": "string" } }, "couponId": { - "type": "string", "description": "Coupon id", + "type": "string", "example": "<COUPON_ID>", "nullable": true }, "platform": { - "type": "string", "description": "Platform type", + "type": "string", "default": "appwrite", "example": "appwrite", - "enum": [ - "appwrite", - "imagine" - ], - "x-enum-name": "Platform", - "x-enum-keys": [ - "appwrite", - "imagine" + "title": "Platform", + "oneOf": [ + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "imagine" + ], + "title": "imagine" + } ] } }, @@ -50453,18 +59568,36 @@ "schema": { "type": "string", "example": "baa", - "enum": [ - "baa", - "premiumgeodb", - "premiumgeodborg", - "backup_recovery" - ], - "x-enum-name": "Addon", - "x-enum-keys": [ - "baa", - "premiumgeodb", - "premiumgeodborg", - "backup_recovery" + "title": "Addon", + "oneOf": [ + { + "type": "string", + "enum": [ + "baa" + ], + "title": "baa" + }, + { + "type": "string", + "enum": [ + "premiumgeodb" + ], + "title": "premiumgeodb" + }, + { + "type": "string", + "enum": [ + "premiumgeodborg" + ], + "title": "premiumgeodborg" + }, + { + "type": "string", + "enum": [ + "backup_recovery" + ], + "title": "backup_recovery" + } ] }, "in": "path" @@ -50700,8 +59833,8 @@ "type": "object", "properties": { "billingAddressId": { - "type": "string", "description": "Unique ID of billing address", + "type": "string", "example": "<BILLING_ADDRESS_ID>" } }, @@ -50900,8 +60033,8 @@ "type": "object", "properties": { "billingEmail": { - "type": "string", "description": "Billing email for the organization.", + "type": "string", "example": "email@example.com", "format": "email" } @@ -50979,15 +60112,15 @@ "type": "object", "properties": { "budget": { - "type": "integer", "description": "Budget limit for additional usage set for the organization", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "alerts": { - "type": "array", "description": "Budget alert limit percentage", + "type": "array", "default": [ 75 ], @@ -51139,8 +60272,8 @@ "type": "object", "properties": { "couponId": { - "type": "string", "description": "ID of the coupon", + "type": "string", "example": "<COUPON_ID>" } }, @@ -51404,21 +60537,21 @@ "type": "object", "properties": { "billingPlan": { - "type": "string", "description": "Organization billing plan chosen", + "type": "string", "example": "tier-0" }, "invites": { - "type": "array", "description": "Additional member invites", + "type": "array", "default": [], "items": { "type": "string" } }, "couponId": { - "type": "string", "description": "Coupon id", + "type": "string", "example": "<COUPON_ID>", "nullable": true } @@ -51496,23 +60629,23 @@ "type": "object", "properties": { "reason": { - "type": "string", "description": "Feedback reason", + "type": "string", "example": "<REASON>" }, "message": { - "type": "string", "description": "Feedback message", + "type": "string", "example": "<MESSAGE>" }, "fromPlanId": { - "type": "string", "description": "Plan downgrading from", + "type": "string", "example": "<FROM_PLAN_ID>" }, "toPlanId": { - "type": "string", "description": "Plan downgrading to", + "type": "string", "example": "<TO_PLAN_ID>" } }, @@ -51814,8 +60947,8 @@ "type": "object", "properties": { "paymentMethodId": { - "type": "string", "description": "Payment method ID", + "type": "string", "example": "<PAYMENT_METHOD_ID>" } }, @@ -52032,8 +61165,8 @@ "type": "object", "properties": { "paymentMethodId": { - "type": "string", "description": "Unique ID of payment method", + "type": "string", "example": "<PAYMENT_METHOD_ID>" } }, @@ -52167,8 +61300,8 @@ "type": "object", "properties": { "paymentMethodId": { - "type": "string", "description": "Unique ID of payment method", + "type": "string", "example": "<PAYMENT_METHOD_ID>" } }, @@ -52428,45 +61561,45 @@ "type": "object", "properties": { "billingPlan": { - "type": "string", "description": "Organization billing plan chosen", + "type": "string", "example": "tier-0" }, "paymentMethodId": { - "type": "string", "description": "Payment method ID. Required for pro plans when trial is not available and user doesn't have default payment method set.", + "type": "string", "example": "<PAYMENT_METHOD_ID>", "nullable": true }, "billingAddressId": { - "type": "string", "description": "Unique ID of billing address", + "type": "string", "default": "", "example": "<BILLING_ADDRESS_ID>" }, "invites": { - "type": "array", "description": "Additional member invites", + "type": "array", "default": [], "items": { "type": "string" } }, "couponId": { - "type": "string", "description": "Coupon id", + "type": "string", "example": "<COUPON_ID>", "nullable": true }, "taxId": { - "type": "string", "description": "Tax Id associated to billing.", + "type": "string", "example": "<TAX_ID>", "nullable": true }, "budget": { - "type": "integer", "description": "Budget limit for additional usage set for the organization", + "type": "integer", "example": 0, "format": "int32", "nullable": true @@ -52604,21 +61737,21 @@ "type": "object", "properties": { "billingPlan": { - "type": "string", "description": "Target billing plan", + "type": "string", "example": "tier-0" }, "invites": { - "type": "array", "description": "Additional member invites", + "type": "array", "default": [], "items": { "type": "string" } }, "couponId": { - "type": "string", "description": "Coupon id", + "type": "string", "example": "<COUPON_ID>", "nullable": true } @@ -52825,8 +61958,8 @@ "type": "object", "properties": { "taxId": { - "type": "string", "description": "Tax Id associated to billing.", + "type": "string", "example": "<TAX_ID>", "nullable": true } @@ -52985,8 +62118,8 @@ "type": "object", "properties": { "invites": { - "type": "array", "description": "Additional member invites", + "type": "array", "default": [], "items": { "type": "string" @@ -53164,94 +62297,94 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Database 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database display name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "version": { - "type": "string", "description": "Database engine version. Defaults to latest for selected engine.", + "type": "string", "example": "17", "nullable": true }, "specification": { - "type": "string", "description": "Specification identifier. Drives the allocated CPU, memory, storage, storage class, and connection ceiling.", + "type": "string", "default": "s-1vcpu-1gb", "example": "<SPECIFICATION>" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds.", + "type": "integer", "default": 900, "example": 60, "format": "int32" }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes of inactivity before container scales to zero.", + "type": "integer", "default": 15, "example": 5, "format": "int32" }, "pitr": { - "type": "boolean", "description": "Enable point-in-time recovery (PITR). Continuously archives changes so the database can be restored to any moment within the retention window.", + "type": "boolean", "default": true, "example": false }, "pitrRetentionDays": { - "type": "integer", "description": "Number of days to retain PITR data.", + "type": "integer", "default": 7, "example": 1, "format": "int32" }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "default": false, "example": false }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "default": 85, "example": 50, "format": "int32" }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -53438,135 +62571,135 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database display name.", + "type": "string", "example": "<NAME>", "nullable": true }, "status": { - "type": "string", "description": "Database status. Allowed values: ready, paused, inactive. Set to \"paused\" to pause, \"ready\" to resume (also recovers a failed database whose infrastructure is healthy), or \"inactive\" to spin down a shared-pool database.", + "type": "string", "example": "ready", "nullable": true }, "specification": { - "type": "string", "description": "Specification. Changes cpu, memory, storage, connection ceiling, and node pool based on specification config. Resource changes are applied via rolling cutover with zero downtime.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds (60-86400).", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes before container scales to zero.", + "type": "integer", "example": 5, "format": "int32", "nullable": true }, "pitr": { - "type": "boolean", "description": "Enable or disable point-in-time recovery (PITR).", + "type": "boolean", "example": false, "nullable": true }, "pitrRetentionDays": { - "type": "integer", "description": "Days to retain PITR data.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "example": false, "nullable": true }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "example": 50, "format": "int32", "nullable": true }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "metricsTraceSampleRate": { - "type": "number", "description": "Fraction of queries to trace (0.0\u20131.0). Forwarded to the sidecar.", + "type": "number", "format": "float", "nullable": true }, "metricsSlowQueryLogThresholdMs": { - "type": "integer", "description": "Threshold in ms above which queries are logged as slow. Forwarded to the sidecar.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "sqlApiEnabled": { - "type": "boolean", "description": "Enable the SQL API sidecar for this database.", + "type": "boolean", "example": false, "nullable": true }, "sqlApiAllowedStatements": { - "type": "array", "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "sqlApiMaxRows": { - "type": "integer", "description": "Maximum rows returned per SQL API execution (1-1000000).", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "sqlApiMaxBytes": { - "type": "integer", "description": "Maximum serialised SQL API result payload in bytes (1024-104857600).", + "type": "integer", "example": 1024, "format": "int32", "nullable": true }, "sqlApiTimeoutSeconds": { - "type": "integer", "description": "Per-call SQL API execution timeout in seconds (1-300).", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -53768,8 +62901,8 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" } @@ -53916,37 +63049,37 @@ "type": "object", "properties": { "policyId": { - "type": "string", "description": "Policy 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.", + "type": "string", "example": "<POLICY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32" }, "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "default": true, "example": false } @@ -54106,25 +63239,25 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>", "nullable": true }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "example": false, "nullable": true } @@ -54264,41 +63397,41 @@ "type": "object", "properties": { "provider": { - "type": "string", "description": "Storage provider for off-cluster backups. Allowed values: s3 (Amazon S3 or S3-compatible), gcs (Google Cloud Storage), azure (Azure Blob Storage).", + "type": "string", "example": "s3" }, "bucket": { - "type": "string", "description": "Storage bucket or container name.", + "type": "string", "example": "<BUCKET>" }, "region": { - "type": "string", "description": "Storage region.", + "type": "string", "default": "", "example": "<REGION>" }, "prefix": { - "type": "string", "description": "Object key prefix for backups.", + "type": "string", "default": "backups\/", "example": "<PREFIX>" }, "endpoint": { - "type": "string", "description": "Custom endpoint for S3-compatible storage (e.g. MinIO).", + "type": "string", "default": "", "example": "<ENDPOINT>" }, "accessKey": { - "type": "string", "description": "Access key or client ID for authentication.", + "type": "string", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "Secret key or service account JSON for authentication.", + "type": "string", "example": "<SECRET_KEY>" } }, @@ -54571,8 +63704,8 @@ "type": "object", "properties": { "branchId": { - "type": "string", "description": "Branch 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.", + "type": "string", "default": "", "example": "<BRANCH_ID>", "x-appwrite": { @@ -54580,8 +63713,8 @@ } }, "ttl": { - "type": "integer", "description": "Time-to-live in seconds before the branch expires. Min 300 (5 min), max 604800 (7 days). Default: 86400 (24h).", + "type": "integer", "default": 86400, "example": 300, "format": "int32" @@ -54788,20 +63921,20 @@ "type": "object", "properties": { "sql": { - "type": "string", "description": "SQL statement to execute. Exactly one statement per request.", + "type": "string", "example": "<SQL>" }, "bindings": { - "type": "object", "description": "Optional bound parameters. Pass either a positional list or a name => value map matching the placeholder style used in the SQL.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "timeoutSeconds": { - "type": "integer", "description": "Per-call execution timeout override. Must be less than or equal to the database's configured sqlApiTimeoutSeconds.", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -54939,8 +64072,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Extension name (e.g., pgvector, postgis, uuid-ossp).", + "type": "string", "example": "<NAME>" } }, @@ -55088,8 +64221,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -55165,13 +64298,13 @@ "type": "object", "properties": { "day": { - "type": "string", "description": "Day of the week for the maintenance window. Allowed values: sun, mon, tue, wed, thu, fri, sat.", + "type": "string", "example": "sun" }, "hourUtc": { - "type": "integer", "description": "Hour in UTC (0-23) for maintenance window start.", + "type": "integer", "example": 0, "format": "int32" } @@ -55251,13 +64384,13 @@ "type": "object", "properties": { "targetType": { - "type": "string", "description": "Target database type to migrate to. Allowed values: shared (serverless, scales to zero when idle), dedicated (always-on with persistent resources).", + "type": "string", "example": "shared" }, "specification": { - "type": "string", "description": "Target specification to provision when migrating to dedicated. Ignored for shared. Defaults to the database's current specification.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true } @@ -55548,52 +64681,52 @@ "type": "object", "properties": { "mode": { - "type": "string", "description": "Connection pool mode. Allowed values: transaction, session. Transaction mode returns connections to the pool after each transaction; session mode holds connections for the entire session lifetime.", + "type": "string", "example": "transaction", "nullable": true }, "maxConnections": { - "type": "integer", "description": "Client-connection ceiling the pooler accepts. Supported on MySQL and MariaDB only; the PostgreSQL pooler has no client cap, so set networkMaxConnections on the database instead.", + "type": "integer", "example": 10, "format": "int32", "nullable": true }, "defaultPoolSize": { - "type": "integer", "description": "Default pool size per user.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "readWriteSplitting": { - "type": "boolean", "description": "Route SELECTs to HA replicas, writes and locked reads to the primary. Defaults to true when HA is enabled.", + "type": "boolean", "example": false, "nullable": true }, "poolerCpuRequest": { - "type": "string", "description": "Pooler sidecar CPU request override (Kubernetes quantity, e.g. \"250m\" or \"1\"). Leave null for the proportional default (5% of DB CPU, floor 100m).", + "type": "string", "example": "<POOLER_CPU_REQUEST>", "nullable": true }, "poolerCpuLimit": { - "type": "string", "description": "Pooler sidecar CPU limit override (Kubernetes quantity, e.g. \"500m\" or \"1\"). Leave null for the proportional default (10% of DB CPU, floor 200m). Changing this field rolls the database pod.", + "type": "string", "example": "<POOLER_CPU_LIMIT>", "nullable": true }, "poolerMemoryRequest": { - "type": "string", "description": "Pooler sidecar memory request override (Kubernetes quantity, e.g. \"128Mi\" or \"1Gi\"). Leave null for the proportional default (7.5% of DB memory, floor 64Mi).", + "type": "string", "example": "<POOLER_MEMORY_REQUEST>", "nullable": true }, "poolerMemoryLimit": { - "type": "string", "description": "Pooler sidecar memory limit override (Kubernetes quantity, e.g. \"256Mi\" or \"1Gi\"). Leave null for the proportional default (15% of DB memory, floor 128Mi). Changing this field rolls the database pod.", + "type": "string", "example": "<POOLER_MEMORY_LIMIT>", "nullable": true } @@ -55831,26 +64964,26 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Restoration type. Allowed values: backup, pitr. Use \"backup\" to restore from a specific backup, or \"pitr\" for point-in-time recovery.", + "type": "string", "default": "backup", "example": "backup" }, "backupId": { - "type": "string", "description": "Backup ID to restore from (required for backup type).", + "type": "string", "example": "<BACKUP_ID>", "nullable": true }, "targetDatabaseId": { - "type": "string", "description": "Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version.", + "type": "string", "example": "<TARGET_DATABASE_ID>", "nullable": true }, "targetTime": { - "type": "string", "description": "Target time for PITR (required for pitr type) as an [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -56057,8 +65190,8 @@ "type": "object", "properties": { "targetVersion": { - "type": "string", "description": "Target engine version to upgrade to.", + "type": "string", "example": "<TARGET_VERSION>" } }, @@ -56214,16 +65347,29 @@ "schema": { "type": "string", "example": "24h", - "enum": [ - "24h", - "30d", - "90d" - ], - "x-enum-name": "UsageRange", - "x-enum-keys": [ - "Twenty Four Hours", - "Thirty Days", - "Ninety Days" + "title": "UsageRange", + "oneOf": [ + { + "type": "string", + "enum": [ + "24h" + ], + "title": "Twenty Four Hours" + }, + { + "type": "string", + "enum": [ + "30d" + ], + "title": "Thirty Days" + }, + { + "type": "string", + "enum": [ + "90d" + ], + "title": "Ninety Days" + } ], "default": "30d" }, @@ -56390,18 +65536,18 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "status": { - "type": "string", "description": "Presence status.", + "type": "string", "example": "<STATUS>" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -56410,14 +65556,14 @@ } }, "expiresAt": { - "type": "string", "description": "Presence expiry datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime" }, "metadata": { - "type": "object", "description": "Presence metadata object.", + "type": "object", "default": [], "example": {} } @@ -56525,30 +65671,30 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "status": { - "type": "string", "description": "Presence status.", + "type": "string", "example": "<STATUS>" }, "expiresAt": { - "type": "string", "description": "Presence expiry datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime" }, "metadata": { - "type": "object", "description": "Presence metadata object.", + "type": "object", "default": {}, "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -56557,8 +65703,8 @@ } }, "purge": { - "type": "boolean", "description": "When true, purge cached responses used by list presences endpoint.", + "type": "boolean", "default": false, "example": false } @@ -56765,24 +65911,57 @@ "schema": { "type": "string", "example": "email-password", - "enum": [ - "email-password", - "magic-url", - "email-otp", - "anonymous", - "invites", - "jwt", - "phone" - ], - "x-enum-name": "ProjectAuthMethodId", - "x-enum-keys": [ - "email-password", - "magic-url", - "email-otp", - "anonymous", - "invites", - "jwt", - "phone" + "title": "ProjectAuthMethodId", + "oneOf": [ + { + "type": "string", + "enum": [ + "email-password" + ], + "title": "email-password" + }, + { + "type": "string", + "enum": [ + "magic-url" + ], + "title": "magic-url" + }, + { + "type": "string", + "enum": [ + "email-otp" + ], + "title": "email-otp" + }, + { + "type": "string", + "enum": [ + "anonymous" + ], + "title": "anonymous" + }, + { + "type": "string", + "enum": [ + "invites" + ], + "title": "invites" + }, + { + "type": "string", + "enum": [ + "jwt" + ], + "title": "jwt" + }, + { + "type": "string", + "enum": [ + "phone" + ], + "title": "phone" + } ] }, "in": "path" @@ -56795,8 +65974,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Auth method status.", + "type": "boolean", "example": false } }, @@ -56932,243 +66111,766 @@ "type": "object", "properties": { "keyId": { - "type": "string", "description": "Key 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.", + "type": "string", "example": "<KEY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -57238,230 +66940,753 @@ "type": "object", "properties": { "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } }, "duration": { - "type": "integer", "description": "Time in seconds before ephemeral key expires. Maximum duration is 3600 seconds.", + "type": "integer", "example": 600, "format": "int32" } @@ -57599,235 +67824,758 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -57947,8 +68695,8 @@ "type": "object", "properties": { "labels": { - "type": "array", "description": "Array of project labels. Replaces the previous labels. Maximum of 1000 labels are allowed, each up to 36 alphanumeric characters long.", + "type": "array", "items": { "type": "string" } @@ -58088,14 +68836,14 @@ "type": "object", "properties": { "number": { - "type": "string", "description": "Phone number to associate with the mock phone. Must be a valid E.164 formatted phone number.", + "type": "string", "example": "+12065550100", "format": "phone" }, "otp": { - "type": "string", "description": "One-time password (OTP) to associate with the mock phone. Must be a 6-digit numeric code.", + "type": "string", "example": "<OTP>" } }, @@ -58234,8 +68982,8 @@ "type": "object", "properties": { "otp": { - "type": "string", "description": "One-time password (OTP) to associate with the mock phone. Must be a 6-digit numeric code.", + "type": "string", "example": "<OTP>" } }, @@ -58427,111 +69175,111 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Enable or disable the OAuth2 server.", + "type": "boolean", "example": false }, "authorizationUrl": { - "type": "string", "description": "URL to your application with consent screen.", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "scopes": { - "type": "array", "description": "List of allowed OAuth2 scopes. Maximum of 100 scopes are allowed, each up to 128 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "authorizationDetailsTypes": { - "type": "array", "description": "List of accepted `authorization_details` types. Maximum of 100 types are allowed, each up to 128 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "accessTokenDuration": { - "type": "integer", "description": "Access token duration in seconds for confidential clients (server-side apps that authenticate with a client secret). Leave empty to use default 8 hours.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "refreshTokenDuration": { - "type": "integer", "description": "Refresh token duration in seconds for confidential clients (server-side apps that authenticate with a client secret). Leave empty to use default 1 year.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "publicAccessTokenDuration": { - "type": "integer", "description": "Access token duration in seconds for public clients (SPAs, mobile, and native apps that cannot keep a client secret). Leave empty to use default 1 hour.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "publicRefreshTokenDuration": { - "type": "integer", "description": "Refresh token duration in seconds for public clients (SPAs, mobile, and native apps that cannot keep a client secret). Leave empty to use default 30 days.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "installationAccessTokenDuration": { - "type": "integer", "description": "Access token duration in seconds for app installation access tokens. Leave empty to use default 1 hour.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "confidentialPkce": { - "type": "boolean", "description": "When enabled, PKCE is required for confidential clients (server-side flows using client_secret). PKCE is always required for public clients regardless of this setting.", + "type": "boolean", "example": false, "nullable": true }, "verificationUrl": { - "type": "string", "description": "URL to your application page where users enter the device flow user code. Required to enable the Device Authorization Grant.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "userCodeLength": { - "type": "integer", "description": "Number of characters in the device flow user code, excluding the formatting separator. Shorter codes are easier to type but weaker; pair short codes with short expiry. Leave empty to use default 8.", + "type": "integer", "example": 6, "format": "int32", "nullable": true }, "userCodeFormat": { - "type": "string", "description": "Character set for device flow user codes: `numeric` (digits only \u2014 best for numeric keypads and TV remotes), `alphabetic` (letters only), or `alphanumeric` (letters and digits \u2014 highest entropy per character). Defaults to `alphanumeric`.", + "type": "string", "default": "alphanumeric", "example": "numeric" }, "deviceCodeDuration": { - "type": "integer", "description": "Lifetime in seconds of device flow device codes and user codes. Device codes are intentionally short-lived. Leave empty to use default 600.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "defaultScopes": { - "type": "array", "description": "List of OAuth2 scopes used when an authorization request omits the scope parameter. Every default scope must also be allowed by the OAuth2 server. Maximum of 100 scopes are allowed, each up to 128 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "installationScopes": { - "type": "array", "description": "List of scopes an application may request when installed on a team. Omitting the parameter clears the list, so no installation scopes can be granted. Maximum of 100 scopes are allowed, each up to 128 characters long.", + "type": "array", "default": [], "items": { "type": "string" @@ -58601,20 +69349,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Amazon OAuth2 app. For example: amzn1.application-oa2-client.87400c00000000000000000000063d5b2", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Amazon OAuth2 app. For example: 79ffe4000000000000000000000000000000000000000000000000000002de55", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -58678,32 +69426,32 @@ "type": "object", "properties": { "serviceId": { - "type": "string", "description": "'Service ID' of Apple OAuth2 app. For example: ip.appwrite.app.web", + "type": "string", "example": "<SERVICE_ID>", "nullable": true }, "keyId": { - "type": "string", "description": "'Key ID' of Apple OAuth2 app. For example: P4000000N8", + "type": "string", "example": "<KEY_ID>", "nullable": true }, "teamId": { - "type": "string", "description": "'Team ID' of Apple OAuth2 app. For example: D4000000R6", + "type": "string", "example": "<TEAM_ID>", "nullable": true }, "p8File": { - "type": "string", "description": "Contents of the Apple OAuth2 app .p8 private key file. The secret key wrapped by the PEM markers is 200 characters long. For example: -----BEGIN PRIVATE KEY-----MIGTAg...jy2Xbna-----END PRIVATE KEY-----", + "type": "string", "example": "<P8_FILE>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -58767,20 +69515,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Appwrite OAuth2 app. For example: 6a42000000000000b5a0", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Appwrite OAuth2 app. For example: b86afd000000000000000000000000000000000000000000000000000ced5f93", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -58844,26 +69592,26 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Auth0 OAuth2 app. For example: OaOkIA000000000000000000005KLSYq", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Auth0 OAuth2 app. For example: zXz0000-00000000000000000000000000000-00000000000000000000PJafnF", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Domain of Auth0 instance. For example: example.us.auth0.com", + "type": "string", "example": "<ENDPOINT>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -58927,26 +69675,26 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Authentik OAuth2 app. For example: dTKOPa0000000000000000000000000000e7G8hv", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Authentik OAuth2 app. For example: ntQadq000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000Hp5WK", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Domain of Authentik instance. For example: example.authentik.com", + "type": "string", "example": "<ENDPOINT>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59010,20 +69758,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Autodesk OAuth2 app. For example: 5zw90v00000000000000000000kVYXN7", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Autodesk OAuth2 app. For example: 7I000000000000MW", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59087,20 +69835,20 @@ "type": "object", "properties": { "key": { - "type": "string", "description": "'Key' of Bitbucket OAuth2 app. For example: Knt70000000000ByRc", + "type": "string", "example": "<KEY>", "nullable": true }, "secret": { - "type": "string", "description": "'Secret' of Bitbucket OAuth2 app. For example: NMfLZJ00000000000000000000TLQdDx", + "type": "string", "example": "<SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59164,20 +69912,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Bitly OAuth2 app. For example: d95151000000000000000000000000000067af9b", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Bitly OAuth2 app. For example: a13e250000000000000000000000000000d73095", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59241,20 +69989,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Box OAuth2 app. For example: deglcs00000000000000000000x2og6y", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Box OAuth2 app. For example: OKM1f100000000000000000000eshEif", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59318,20 +70066,20 @@ "type": "object", "properties": { "apiKey": { - "type": "string", "description": "'API Key' of Dailymotion OAuth2 app. For example: 07a9000000000000067f", + "type": "string", "example": "<API_KEY>", "nullable": true }, "apiSecret": { - "type": "string", "description": "'API Secret' of Dailymotion OAuth2 app. For example: a399a90000000000000000000000000000d90639", + "type": "string", "example": "<API_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59395,20 +70143,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Discord OAuth2 app. For example: 950722000000343754", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Discord OAuth2 app. For example: YmPXnM000000000000000000002zFg5D", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59472,20 +70220,20 @@ "type": "object", "properties": { "publicKey": { - "type": "string", "description": "'Public Key, also known as API Key' of Disqus OAuth2 app. For example: cgegH70000000000000000000000000000000000000000000000000000Hr1nYX", + "type": "string", "example": "<PUBLIC_KEY>", "nullable": true }, "secretKey": { - "type": "string", "description": "'Secret Key, also known as API Secret' of Disqus OAuth2 app. For example: W7Bykj00000000000000000000000000000000000000000000000000003o43w9", + "type": "string", "example": "<SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59549,20 +70297,20 @@ "type": "object", "properties": { "appKey": { - "type": "string", "description": "'App Key' of Dropbox OAuth2 app. For example: jl000000000009t", + "type": "string", "example": "<APP_KEY>", "nullable": true }, "appSecret": { - "type": "string", "description": "'App Secret' of Dropbox OAuth2 app. For example: g200000000000vw", + "type": "string", "example": "<APP_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59626,20 +70374,20 @@ "type": "object", "properties": { "keyString": { - "type": "string", "description": "'Keystring' of Etsy OAuth2 app. For example: nsgzxh0000000000008j85a2", + "type": "string", "example": "<KEY_STRING>", "nullable": true }, "sharedSecret": { - "type": "string", "description": "'Shared Secret' of Etsy OAuth2 app. For example: tp000000ru", + "type": "string", "example": "<SHARED_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59703,20 +70451,20 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "'App ID' of Facebook OAuth2 app. For example: 260600000007694", + "type": "string", "example": "<APP_ID>", "nullable": true }, "appSecret": { - "type": "string", "description": "'App Secret' of Facebook OAuth2 app. For example: 2d0b2800000000000000000000d38af4", + "type": "string", "example": "<APP_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59780,20 +70528,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Figma OAuth2 app. For example: byay5H0000000000VtiI40", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Figma OAuth2 app. For example: yEpOYn0000000000000000004iIsU5", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59857,26 +70605,26 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of FusionAuth OAuth2 app. For example: b2222c00-0000-0000-0000-000000862097", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of FusionAuth OAuth2 app. For example: Jx4s0C0000000000000000000000000000000wGqLsc", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Domain of FusionAuth instance. For example: example.fusionauth.io", + "type": "string", "example": "<ENDPOINT>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -59940,20 +70688,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'OAuth2 app Client ID, or App ID' of GitHub OAuth2 app. For example: e4d87900000000540733. Example of wrong value: 370006", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of GitHub OAuth2 app. For example: 5e07c00000000000000000000000000000198bcc", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60017,27 +70765,27 @@ "type": "object", "properties": { "applicationId": { - "type": "string", "description": "'Application ID' of Gitlab OAuth2 app. For example: d41ffe0000000000000000000000000000000000000000000000000000d5e252", + "type": "string", "example": "<APPLICATION_ID>", "nullable": true }, "secret": { - "type": "string", "description": "'Secret' of Gitlab OAuth2 app. For example: gloas-838cfa0000000000000000000000000000000000000000000000000000ecbb38", + "type": "string", "example": "<SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Endpoint URL of self-hosted GitLab instance. For example: https:\/\/gitlab.com", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60101,39 +70849,129 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Google OAuth2 app. For example: 120000000095-92ifjb00000000000000000000g7ijfb.apps.googleusercontent.com", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Google OAuth2 app. For example: GOCSPX-2k8gsR0000000000000000VNahJj", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "prompt": { - "type": "array", "description": "Array of Google OAuth2 prompt values. If \"none\" is included, it must be the only element. \"none\" means: don't display any authentication or consent screens. Must not be specified with other values. \"consent\" means: prompt the user for consent. \"select_account\" means: prompt the user to select an account.", + "type": "array", "items": { + "title": "ProjectOAuth2GooglePrompt", "type": "string", - "enum": [ - "none", - "consent", - "select_account" - ], - "x-enum-name": "ProjectOAuth2GooglePrompt", - "x-enum-keys": [ - "none", - "consent", - "select_account" + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "consent" + ], + "title": "consent" + }, + { + "type": "string", + "enum": [ + "select_account" + ], + "title": "select_account" + } ] }, "nullable": true }, "enabled": { + "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", "type": "boolean", + "example": false, + "nullable": true + } + } + } + } + } + } + } + }, + "\/project\/oauth2\/huggingface": { + "patch": { + "summary": "Update project OAuth2 Hugging Face", + "operationId": "projectUpdateOAuth2HuggingFace", + "tags": [ + "project" + ], + "description": "Update the project OAuth2 Hugging Face configuration.", + "responses": { + "200": { + "description": "OAuth2HuggingFace", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/oAuth2HuggingFace" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "oauth2", + "cookies": false, + "type": "", + "demo": "project\/update-o-auth-2-hugging-face.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "project.oauth2.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "clientId": { + "description": "'Client ID' of Hugging Face OAuth2 app. For example: 2ab9cff9-d711-40ad-a91e-b08a49c42d24", + "type": "string", + "example": "<CLIENT_ID>", + "nullable": true + }, + "clientSecret": { + "description": "'Client Secret' of Hugging Face OAuth2 app. For example: oauth_app_secret_wcLhRtl000000000000000000000xbNdLt", + "type": "string", + "example": "<CLIENT_SECRET>", + "nullable": true + }, + "enabled": { "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60197,32 +71035,32 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Keycloak OAuth2 app. For example: appwrite-o0000000st-app", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Keycloak OAuth2 app. For example: jdjrJd00000000000000000000HUsaZO", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Domain of Keycloak instance. For example: keycloak.example.com", + "type": "string", "example": "<ENDPOINT>", "nullable": true }, "realmName": { - "type": "string", "description": "Keycloak realm name. For example: appwrite-realm", + "type": "string", "example": "<REALM_NAME>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60286,20 +71124,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Kick OAuth2 app. For example: 01KQ7C00000000000001MFHS32", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Kick OAuth2 app. For example: 34ac5600000000000000000000000000000000000000000000000000e830c8b", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60363,20 +71201,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Linkedin OAuth2 app. For example: 770000000000dv", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "primaryClientSecret": { - "type": "string", "description": "'Primary Client Secret or Secondary Client Secret' of Linkedin OAuth2 app. For example: WPL_AP1.2Bf0000000000000.\/HtlYw==", + "type": "string", "example": "<PRIMARY_CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60440,26 +71278,26 @@ "type": "object", "properties": { "applicationId": { - "type": "string", "description": "'Entra ID Application ID, also known as Client ID' of Microsoft OAuth2 app. For example: 00001111-aaaa-2222-bbbb-3333cccc4444", + "type": "string", "example": "<APPLICATION_ID>", "nullable": true }, "applicationSecret": { - "type": "string", "description": "'Entra ID Application Secret, also known as Client Secret' of Microsoft OAuth2 app. For example: A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u", + "type": "string", "example": "<APPLICATION_SECRET>", "nullable": true }, "tenant": { - "type": "string", "description": "Microsoft Entra ID tenant identifier. Use 'common', 'organizations', 'consumers' or a specific tenant ID. For example: common", + "type": "string", "example": "<TENANT>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60523,20 +71361,20 @@ "type": "object", "properties": { "oauthClientId": { - "type": "string", "description": "'OAuth Client ID' of Notion OAuth2 app. For example: 341d8700-0000-0000-0000-000000446ee3", + "type": "string", "example": "<OAUTH_CLIENT_ID>", "nullable": true }, "oauthClientSecret": { - "type": "string", "description": "'OAuth Client Secret' of Notion OAuth2 app. For example: secret_dLUr4b000000000000000000000000000000lFHAa9", + "type": "string", "example": "<OAUTH_CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60600,76 +71438,94 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Oidc OAuth2 app. For example: qibI2x0000000000000000000000000006L2YFoG", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Oidc OAuth2 app. For example: Ah68ed000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003qpcHV", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "wellKnownURL": { - "type": "string", "description": "OpenID Connect well-known configuration URL. When provided, authorization, token, and user info endpoints can be discovered automatically. For example: https:\/\/myoauth.com\/.well-known\/openid-configuration", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "authorizationURL": { - "type": "string", "description": "OpenID Connect authorization endpoint URL. Required when wellKnownURL is not provided. For example: https:\/\/myoauth.com\/oauth2\/authorize", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "tokenURL": { - "type": "string", "description": "OpenID Connect token endpoint URL. Required when wellKnownURL is not provided. For example: https:\/\/myoauth.com\/oauth2\/token", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "userInfoURL": { - "type": "string", "description": "OpenID Connect user info endpoint URL. Required when wellKnownURL is not provided. For example: https:\/\/myoauth.com\/oauth2\/userinfo", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "prompt": { - "type": "array", "description": "Array of OpenID Connect prompt values controlling the authentication and consent screens. If \"none\" is included, it must be the only element. \"none\" means: don't display any authentication or consent screens. \"login\" means: prompt the user to re-authenticate. \"consent\" means: prompt the user for consent. \"select_account\" means: prompt the user to select an account.", + "type": "array", "items": { + "title": "ProjectOAuth2OidcPrompt", "type": "string", - "enum": [ - "none", - "login", - "consent", - "select_account" - ], - "x-enum-name": "ProjectOAuth2OidcPrompt", - "x-enum-keys": [ - "none", - "login", - "consent", - "select_account" + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "login" + ], + "title": "login" + }, + { + "type": "string", + "enum": [ + "consent" + ], + "title": "consent" + }, + { + "type": "string", + "enum": [ + "select_account" + ], + "title": "select_account" + } ] }, "nullable": true }, "maxAge": { - "type": "integer", "description": "Maximum authentication age in seconds. When set, the user must have authenticated within this many seconds, otherwise they are prompted to re-authenticate.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60733,31 +71589,31 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Okta OAuth2 app. For example: 0oa00000000000000698", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Okta OAuth2 app. For example: Kiq0000000000000000000000000000000000000-00000000000H2L5-3SJ-vRV", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "domain": { - "type": "string", "description": "Okta company domain. Required when enabling the provider. For example: trial-6400025.okta.com. Example of wrong value: trial-6400025-admin.okta.com, or https:\/\/trial-6400025.okta.com\/", + "type": "string", "nullable": true }, "authorizationServerId": { - "type": "string", "description": "Custom Authorization Servers. Optional, can be left empty or unconfigured. For example: aus000000000000000h7z", + "type": "string", "example": "<AUTHORIZATION_SERVER_ID>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60821,20 +71677,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Paypal OAuth2 app. For example: AdhIEG7-000000000000-0000000000000000000000000000000-0000000000000000000000-2pyB", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "secretKey": { - "type": "string", "description": "'Secret Key 1 or Secret Key 2' of Paypal OAuth2 app. For example: EH8KCXtew--000000000000000000000000000000000000000_C-1_5UP_000000000000000CB7KDp", + "type": "string", "example": "<SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60898,20 +71754,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of PaypalSandbox OAuth2 app. For example: AdhIEG7-000000000000-0000000000000000000000000000000-0000000000000000000000-2pyB", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "secretKey": { - "type": "string", "description": "'Secret Key 1 or Secret Key 2' of PaypalSandbox OAuth2 app. For example: EH8KCXtew--000000000000000000000000000000000000000_C-1_5UP_000000000000000CB7KDp", + "type": "string", "example": "<SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -60975,20 +71831,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Podio OAuth2 app. For example: appwrite-o0000000st-app", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Podio OAuth2 app. For example: Rn247T0000000000000000000000000000000000000000000000000000W2zWTN", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61052,20 +71908,20 @@ "type": "object", "properties": { "customerKey": { - "type": "string", "description": "'Consumer Key' of Salesforce OAuth2 app. For example: 3MVG9I0000000000000000000000000000000000000000000000000000000000000000000000000C5Aejq", + "type": "string", "example": "<CUSTOMER_KEY>", "nullable": true }, "customerSecret": { - "type": "string", "description": "'Consumer Secret' of Salesforce OAuth2 app. For example: 3w000000000000e2", + "type": "string", "example": "<CUSTOMER_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61129,20 +71985,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Slack OAuth2 app. For example: 23000000089.15000000000023", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Slack OAuth2 app. For example: 81656000000000000000000000f3d2fd", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61206,20 +72062,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Spotify OAuth2 app. For example: 6ec271000000000000000000009beace", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Spotify OAuth2 app. For example: db068a000000000000000000008b5b9f", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61283,20 +72139,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Stripe OAuth2 app. For example: ca_UKibXX0000000000000000000006byvR", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "apiSecretKey": { - "type": "string", "description": "'API Secret Key' of Stripe OAuth2 app. For example: sk_51SfOd000000000000000000000000000000000000000000000000000000000000000000000000000000000000000QGWYfp", + "type": "string", "example": "<API_SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61360,20 +72216,20 @@ "type": "object", "properties": { "oauth2ClientId": { - "type": "string", "description": "'OAuth2 Client ID' of Tradeshift OAuth2 app. For example: appwrite-tes00000.0000000000est-app", + "type": "string", "example": "<OAUTH2_CLIENT_ID>", "nullable": true }, "oauth2ClientSecret": { - "type": "string", "description": "'OAuth2 Client Secret' of Tradeshift OAuth2 app. For example: 7cb52700-0000-0000-0000-000000ca5b83", + "type": "string", "example": "<OAUTH2_CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61437,20 +72293,20 @@ "type": "object", "properties": { "oauth2ClientId": { - "type": "string", "description": "'OAuth2 Client ID' of Tradeshift Sandbox OAuth2 app. For example: appwrite-tes00000.0000000000est-app", + "type": "string", "example": "<OAUTH2_CLIENT_ID>", "nullable": true }, "oauth2ClientSecret": { - "type": "string", "description": "'OAuth2 Client Secret' of Tradeshift Sandbox OAuth2 app. For example: 7cb52700-0000-0000-0000-000000ca5b83", + "type": "string", "example": "<OAUTH2_CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61514,20 +72370,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Twitch OAuth2 app. For example: vvi0in000000000000000000ikmt9p", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Twitch OAuth2 app. For example: pmapue000000000000000000zylw3v", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61591,20 +72447,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of WordPress OAuth2 app. For example: 130005", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of WordPress OAuth2 app. For example: PlBfJS0000000000000000000000000000000000000000000000000000EdUZJk", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61668,20 +72524,20 @@ "type": "object", "properties": { "customerKey": { - "type": "string", "description": "'Customer Key' of X OAuth2 app. For example: slzZV0000000000000NFLaWT", + "type": "string", "example": "<CUSTOMER_KEY>", "nullable": true }, "secretKey": { - "type": "string", "description": "'Secret Key' of X OAuth2 app. For example: tkEPkp00000000000000000000000000000000000000FTxbI9", + "type": "string", "example": "<SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61745,20 +72601,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID, also known as Customer Key' of Yahoo OAuth2 app. For example: dj0yJm000000000000000000000000000000000000000000000000000000000000000000000000000000000000Z4PWRm", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret, also known as Customer Secret' of Yahoo OAuth2 app. For example: cf978f0000000000000000000000000000c5e2e9", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61822,20 +72678,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Yandex OAuth2 app. For example: 6a8a6a0000000000000000000091483c", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Yandex OAuth2 app. For example: bbf98500000000000000000000c75a63", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61899,20 +72755,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Zoho OAuth2 app. For example: 1000.83C178000000000000000000RPNX0B", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Zoho OAuth2 app. For example: fb5cac000000000000000000000000000000a68f6e", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -61976,20 +72832,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Zoom OAuth2 app. For example: QMAC00000000000000w0AQ", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Zoom OAuth2 app. For example: GAWsG4000000000000000000007U01ON", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -62010,7 +72866,7 @@ "description": "Get a single OAuth2 provider configuration. Credential fields (client secret, p8 file, key\/team IDs) are write-only and always returned empty.", "responses": { "200": { - "description": "OAuth2GitHub, or OAuth2Discord, or OAuth2Figma, or OAuth2Dropbox, or OAuth2Dailymotion, or OAuth2Bitbucket, or OAuth2Bitly, or OAuth2Box, or OAuth2Autodesk, or OAuth2Google, or OAuth2Zoom, or OAuth2Zoho, or OAuth2Yandex, or OAuth2X, or OAuth2WordPress, or OAuth2Twitch, or OAuth2Stripe, or OAuth2Spotify, or OAuth2Slack, or OAuth2Podio, or OAuth2Notion, or OAuth2Salesforce, or OAuth2Yahoo, or OAuth2Linkedin, or OAuth2Disqus, or OAuth2Amazon, or OAuth2Etsy, or OAuth2Facebook, or OAuth2Tradeshift, or OAuth2Paypal, or OAuth2Gitlab, or OAuth2Authentik, or OAuth2Auth0, or OAuth2FusionAuth, or OAuth2Keycloak, or OAuth2Oidc, or OAuth2Apple, or OAuth2Okta, or OAuth2Kick, or OAuth2Microsoft", + "description": "OAuth2GitHub, or OAuth2Discord, or OAuth2Figma, or OAuth2Dropbox, or OAuth2Dailymotion, or OAuth2Bitbucket, or OAuth2Bitly, or OAuth2Box, or OAuth2Autodesk, or OAuth2Google, or OAuth2Zoom, or OAuth2Zoho, or OAuth2Yandex, or OAuth2X, or OAuth2WordPress, or OAuth2Twitch, or OAuth2Stripe, or OAuth2Spotify, or OAuth2Slack, or OAuth2Podio, or OAuth2Notion, or OAuth2Salesforce, or OAuth2Yahoo, or OAuth2HuggingFace, or OAuth2Linkedin, or OAuth2Disqus, or OAuth2Amazon, or OAuth2Etsy, or OAuth2Facebook, or OAuth2Tradeshift, or OAuth2Paypal, or OAuth2Gitlab, or OAuth2Authentik, or OAuth2Auth0, or OAuth2FusionAuth, or OAuth2Keycloak, or OAuth2Oidc, or OAuth2Apple, or OAuth2Okta, or OAuth2Kick, or OAuth2Microsoft", "content": { "application\/json": { "schema": { @@ -62084,6 +72940,9 @@ { "$ref": "#\/components\/schemas\/oAuth2Yahoo" }, + { + "$ref": "#\/components\/schemas\/oAuth2HuggingFace" + }, { "$ref": "#\/components\/schemas\/oAuth2Linkedin" }, @@ -62162,6 +73021,7 @@ "notion": "#\/components\/schemas\/oAuth2Notion", "salesforce": "#\/components\/schemas\/oAuth2Salesforce", "yahoo": "#\/components\/schemas\/oAuth2Yahoo", + "huggingface": "#\/components\/schemas\/oAuth2HuggingFace", "linkedin": "#\/components\/schemas\/oAuth2Linkedin", "disqus": "#\/components\/schemas\/oAuth2Disqus", "amazon": "#\/components\/schemas\/oAuth2Amazon", @@ -62222,98 +73082,323 @@ "schema": { "type": "string", "example": "amazon", - "enum": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" - ], - "x-enum-name": "ProjectOAuthProviderId", - "x-enum-keys": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" + "title": "ProjectOAuthProviderId", + "oneOf": [ + { + "type": "string", + "enum": [ + "amazon" + ], + "title": "amazon" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "auth0" + ], + "title": "auth0" + }, + { + "type": "string", + "enum": [ + "authentik" + ], + "title": "authentik" + }, + { + "type": "string", + "enum": [ + "autodesk" + ], + "title": "autodesk" + }, + { + "type": "string", + "enum": [ + "bitbucket" + ], + "title": "bitbucket" + }, + { + "type": "string", + "enum": [ + "bitly" + ], + "title": "bitly" + }, + { + "type": "string", + "enum": [ + "box" + ], + "title": "box" + }, + { + "type": "string", + "enum": [ + "dailymotion" + ], + "title": "dailymotion" + }, + { + "type": "string", + "enum": [ + "discord" + ], + "title": "discord" + }, + { + "type": "string", + "enum": [ + "disqus" + ], + "title": "disqus" + }, + { + "type": "string", + "enum": [ + "dropbox" + ], + "title": "dropbox" + }, + { + "type": "string", + "enum": [ + "etsy" + ], + "title": "etsy" + }, + { + "type": "string", + "enum": [ + "facebook" + ], + "title": "facebook" + }, + { + "type": "string", + "enum": [ + "figma" + ], + "title": "figma" + }, + { + "type": "string", + "enum": [ + "fusionauth" + ], + "title": "fusionauth" + }, + { + "type": "string", + "enum": [ + "github" + ], + "title": "github" + }, + { + "type": "string", + "enum": [ + "gitlab" + ], + "title": "gitlab" + }, + { + "type": "string", + "enum": [ + "google" + ], + "title": "google" + }, + { + "type": "string", + "enum": [ + "huggingface" + ], + "title": "huggingface" + }, + { + "type": "string", + "enum": [ + "keycloak" + ], + "title": "keycloak" + }, + { + "type": "string", + "enum": [ + "kick" + ], + "title": "kick" + }, + { + "type": "string", + "enum": [ + "linkedin" + ], + "title": "linkedin" + }, + { + "type": "string", + "enum": [ + "microsoft" + ], + "title": "microsoft" + }, + { + "type": "string", + "enum": [ + "notion" + ], + "title": "notion" + }, + { + "type": "string", + "enum": [ + "oidc" + ], + "title": "oidc" + }, + { + "type": "string", + "enum": [ + "okta" + ], + "title": "okta" + }, + { + "type": "string", + "enum": [ + "paypal" + ], + "title": "paypal" + }, + { + "type": "string", + "enum": [ + "paypalSandbox" + ], + "title": "paypalSandbox" + }, + { + "type": "string", + "enum": [ + "podio" + ], + "title": "podio" + }, + { + "type": "string", + "enum": [ + "salesforce" + ], + "title": "salesforce" + }, + { + "type": "string", + "enum": [ + "slack" + ], + "title": "slack" + }, + { + "type": "string", + "enum": [ + "spotify" + ], + "title": "spotify" + }, + { + "type": "string", + "enum": [ + "stripe" + ], + "title": "stripe" + }, + { + "type": "string", + "enum": [ + "tradeshift" + ], + "title": "tradeshift" + }, + { + "type": "string", + "enum": [ + "tradeshiftBox" + ], + "title": "tradeshiftBox" + }, + { + "type": "string", + "enum": [ + "twitch" + ], + "title": "twitch" + }, + { + "type": "string", + "enum": [ + "wordpress" + ], + "title": "wordpress" + }, + { + "type": "string", + "enum": [ + "x" + ], + "title": "x" + }, + { + "type": "string", + "enum": [ + "yahoo" + ], + "title": "yahoo" + }, + { + "type": "string", + "enum": [ + "yammer" + ], + "title": "yammer" + }, + { + "type": "string", + "enum": [ + "yandex" + ], + "title": "yandex" + }, + { + "type": "string", + "enum": [ + "zoho" + ], + "title": "zoho" + }, + { + "type": "string", + "enum": [ + "zoom" + ], + "title": "zoom" + } ] }, "in": "path" @@ -62448,21 +73533,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "applicationId": { - "type": "string", "description": "Android application ID. Max length: 256 chars.", + "type": "string", "example": "<APPLICATION_ID>" } }, @@ -62542,13 +73627,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "applicationId": { - "type": "string", "description": "Android application ID. Max length: 256 chars.", + "type": "string", "example": "<APPLICATION_ID>" } }, @@ -62615,21 +73700,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "bundleIdentifier": { - "type": "string", "description": "Apple bundle identifier. Max length: 256 chars.", + "type": "string", "example": "<BUNDLE_IDENTIFIER>" } }, @@ -62709,13 +73794,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "bundleIdentifier": { - "type": "string", "description": "Apple bundle identifier. Max length: 256 chars.", + "type": "string", "example": "<BUNDLE_IDENTIFIER>" } }, @@ -62782,21 +73867,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "packageName": { - "type": "string", "description": "Linux package name. Max length: 256 chars.", + "type": "string", "example": "<PACKAGE_NAME>" } }, @@ -62876,13 +73961,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "packageName": { - "type": "string", "description": "Linux package name. Max length: 256 chars.", + "type": "string", "example": "<PACKAGE_NAME>" } }, @@ -62949,21 +74034,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "hostname": { - "type": "string", "description": "Platform web hostname. Max length: 256 chars.", + "type": "string", "example": "app.example.com" } }, @@ -63043,13 +74128,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "hostname": { - "type": "string", "description": "Platform web hostname. Max length: 256 chars.", + "type": "string", "example": "app.example.com" } }, @@ -63116,21 +74201,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "packageIdentifierName": { - "type": "string", "description": "Windows package identifier name. Max length: 256 chars.", + "type": "string", "example": "<PACKAGE_IDENTIFIER_NAME>" } }, @@ -63210,13 +74295,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "packageIdentifierName": { - "type": "string", "description": "Windows package identifier name. Max length: 256 chars.", + "type": "string", "example": "<PACKAGE_IDENTIFIER_NAME>" } }, @@ -63500,8 +74585,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Set whether or not to block aliased emails during signup and email updates.", + "type": "boolean", "example": false } }, @@ -63570,8 +74655,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Set whether or not to restrict sign-ups and email updates to corporate email addresses only.", + "type": "boolean", "example": false } }, @@ -63640,8 +74725,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Set whether or not to block disposable email addresses during signup and email updates.", + "type": "boolean", "example": false } }, @@ -63710,8 +74795,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Set whether or not to block free email addresses during signup and email updates.", + "type": "boolean", "example": false } }, @@ -63780,33 +74865,33 @@ "type": "object", "properties": { "userId": { - "type": "boolean", "description": "Set to true if you want make user ID visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userEmail": { - "type": "boolean", "description": "Set to true if you want make user email visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userPhone": { - "type": "boolean", "description": "Set to true if you want make user phone number visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userName": { - "type": "boolean", "description": "Set to true if you want make user name visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userMFA": { - "type": "boolean", "description": "Set to true if you want make user MFA status visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userAccessedAt": { - "type": "boolean", "description": "Set to true if you want make user last access time visible to all team members, or false to hide it.", + "type": "boolean", "example": false } } @@ -63872,23 +74957,23 @@ "type": "object", "properties": { "totp": { - "type": "boolean", "description": "Set to true to allow TOTP to complete an MFA challenge, or false to disable it.", + "type": "boolean", "example": false }, "email": { - "type": "boolean", "description": "Set to true to allow email to complete an MFA challenge, or false to disable it.", + "type": "boolean", "example": false }, "phone": { - "type": "boolean", "description": "Set to true to allow phone (SMS) to complete an MFA challenge, or false to disable it.", + "type": "boolean", "example": false }, "custom": { - "type": "boolean", "description": "Set to true to allow the custom factor to complete an MFA challenge, or false to disable it.", + "type": "boolean", "example": false } } @@ -63954,8 +75039,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Toggle password dictionary policy. Set to true if you want password change to block passwords in the dictionary, or false to allow them. When changing this policy, existing passwords remain valid.", + "type": "boolean", "example": false } }, @@ -64024,8 +75109,8 @@ "type": "object", "properties": { "total": { - "type": "integer", "description": "Set the password history length per user. Value can be between 1 and 20, or null to disable the limit.", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -64096,8 +75181,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Toggle password personal data policy. Set to true if you want to block passwords including user's personal data, or false to allow it. When changing this policy, existing passwords remain valid.", + "type": "boolean", "example": false } }, @@ -64166,29 +75251,29 @@ "type": "object", "properties": { "min": { - "type": "integer", "description": "Minimum password length. Value must be between 8 and 256. Default is 8.", + "type": "integer", "example": 8, "format": "int32" }, "uppercase": { - "type": "boolean", "description": "Whether passwords must include at least one uppercase letter.", + "type": "boolean", "example": false }, "lowercase": { - "type": "boolean", "description": "Whether passwords must include at least one lowercase letter.", + "type": "boolean", "example": false }, "number": { - "type": "boolean", "description": "Whether passwords must include at least one number.", + "type": "boolean", "example": false }, "symbols": { - "type": "boolean", "description": "Whether passwords must include at least one symbol.", + "type": "boolean", "example": false } } @@ -64254,8 +75339,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Toggle session alert policy. Set to true if you want users to receive email notifications when a sessions are created for their users, or false to not send email alerts.", + "type": "boolean", "example": false } }, @@ -64324,8 +75409,8 @@ "type": "object", "properties": { "duration": { - "type": "integer", "description": "Maximum session length in seconds. Minium allowed value is 60 seconds, and maximum is 1 year, which is 31536000 seconds.", + "type": "integer", "example": 60, "format": "int32" } @@ -64395,8 +75480,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Toggle session invalidation policy. Set to true if you want password change to invalidate all sessions of an user, or false to keep sessions active.", + "type": "boolean", "example": false } }, @@ -64465,8 +75550,8 @@ "type": "object", "properties": { "total": { - "type": "integer", "description": "Set the maximum number of sessions allowed per user. Value can be between 1 and 100.", + "type": "integer", "example": 1, "format": "int32" } @@ -64536,8 +75621,8 @@ "type": "object", "properties": { "total": { - "type": "integer", "description": "Set the maximum number of users allowed in the project. Value can be between 0 and 10000. Use 0 or null to disable the limit.", + "type": "integer", "example": 0, "format": "int32", "nullable": true @@ -64675,40 +75760,113 @@ "schema": { "type": "string", "example": "password-dictionary", - "enum": [ - "password-dictionary", - "password-history", - "password-strength", - "password-personal-data", - "session-alert", - "session-duration", - "session-invalidation", - "session-limit", - "user-limit", - "membership-privacy", - "mfa-factors", - "deny-aliased-email", - "deny-disposable-email", - "deny-free-email", - "deny-corporate-email" - ], - "x-enum-name": "ProjectPolicyId", - "x-enum-keys": [ - "password-dictionary", - "password-history", - "password-strength", - "password-personal-data", - "session-alert", - "session-duration", - "session-invalidation", - "session-limit", - "user-limit", - "membership-privacy", - "mfa-factors", - "deny-aliased-email", - "deny-disposable-email", - "deny-free-email", - "deny-corporate-email" + "title": "ProjectPolicyId", + "oneOf": [ + { + "type": "string", + "enum": [ + "password-dictionary" + ], + "title": "password-dictionary" + }, + { + "type": "string", + "enum": [ + "password-history" + ], + "title": "password-history" + }, + { + "type": "string", + "enum": [ + "password-strength" + ], + "title": "password-strength" + }, + { + "type": "string", + "enum": [ + "password-personal-data" + ], + "title": "password-personal-data" + }, + { + "type": "string", + "enum": [ + "session-alert" + ], + "title": "session-alert" + }, + { + "type": "string", + "enum": [ + "session-duration" + ], + "title": "session-duration" + }, + { + "type": "string", + "enum": [ + "session-invalidation" + ], + "title": "session-invalidation" + }, + { + "type": "string", + "enum": [ + "session-limit" + ], + "title": "session-limit" + }, + { + "type": "string", + "enum": [ + "user-limit" + ], + "title": "user-limit" + }, + { + "type": "string", + "enum": [ + "membership-privacy" + ], + "title": "membership-privacy" + }, + { + "type": "string", + "enum": [ + "mfa-factors" + ], + "title": "mfa-factors" + }, + { + "type": "string", + "enum": [ + "deny-aliased-email" + ], + "title": "deny-aliased-email" + }, + { + "type": "string", + "enum": [ + "deny-disposable-email" + ], + "title": "deny-disposable-email" + }, + { + "type": "string", + "enum": [ + "deny-free-email" + ], + "title": "deny-free-email" + }, + { + "type": "string", + "enum": [ + "deny-corporate-email" + ], + "title": "deny-corporate-email" + } ] }, "in": "path" @@ -64770,16 +75928,29 @@ "schema": { "type": "string", "example": "rest", - "enum": [ - "rest", - "graphql", - "websocket" - ], - "x-enum-name": "ProjectProtocolId", - "x-enum-keys": [ - "rest", - "graphql", - "websocket" + "title": "ProjectProtocolId", + "oneOf": [ + { + "type": "string", + "enum": [ + "rest" + ], + "title": "rest" + }, + { + "type": "string", + "enum": [ + "graphql" + ], + "title": "graphql" + }, + { + "type": "string", + "enum": [ + "websocket" + ], + "title": "websocket" + } ] }, "in": "path" @@ -64792,8 +75963,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Protocol status.", + "type": "boolean", "example": false } }, @@ -64860,48 +76031,141 @@ "schema": { "type": "string", "example": "account", - "enum": [ - "account", - "avatars", - "databases", - "tablesdb", - "locale", - "health", - "project", - "storage", - "teams", - "users", - "vcs", - "sites", - "functions", - "proxy", - "graphql", - "migrations", - "messaging", - "advisor", - "oauth2" - ], - "x-enum-name": "ProjectServiceId", - "x-enum-keys": [ - "account", - "avatars", - "databases", - "tablesdb", - "locale", - "health", - "project", - "storage", - "teams", - "users", - "vcs", - "sites", - "functions", - "proxy", - "graphql", - "migrations", - "messaging", - "advisor", - "oauth2" + "title": "ProjectServiceId", + "oneOf": [ + { + "type": "string", + "enum": [ + "account" + ], + "title": "account" + }, + { + "type": "string", + "enum": [ + "avatars" + ], + "title": "avatars" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "locale" + ], + "title": "locale" + }, + { + "type": "string", + "enum": [ + "health" + ], + "title": "health" + }, + { + "type": "string", + "enum": [ + "project" + ], + "title": "project" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + }, + { + "type": "string", + "enum": [ + "teams" + ], + "title": "teams" + }, + { + "type": "string", + "enum": [ + "users" + ], + "title": "users" + }, + { + "type": "string", + "enum": [ + "vcs" + ], + "title": "vcs" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "proxy" + ], + "title": "proxy" + }, + { + "type": "string", + "enum": [ + "graphql" + ], + "title": "graphql" + }, + { + "type": "string", + "enum": [ + "migrations" + ], + "title": "migrations" + }, + { + "type": "string", + "enum": [ + "messaging" + ], + "title": "messaging" + }, + { + "type": "string", + "enum": [ + "advisor" + ], + "title": "advisor" + }, + { + "type": "string", + "enum": [ + "oauth2" + ], + "title": "oauth2" + } ] }, "in": "path" @@ -64914,8 +76178,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Service status.", + "type": "boolean", "example": false } }, @@ -64981,106 +76245,1338 @@ "type": "object", "properties": { "host": { - "type": "string", "description": "SMTP server hostname (domain)", + "type": "string", "nullable": true }, "port": { - "type": "integer", "description": "SMTP server port", + "type": "integer", "format": "int32", "nullable": true }, "username": { - "type": "string", "description": "SMTP server username. Pass an empty string to clear a previously set value.", + "type": "string", "example": "<USERNAME>", "nullable": true }, - "password": { + "password": { + "description": "SMTP server password. Pass an empty string to clear a previously set value. This property is stored securely and cannot be read in future (write-only).", + "type": "string", + "example": "password", + "format": "password", + "nullable": true + }, + "senderEmail": { + "description": "Email address shown in inbox as the sender of the email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "email@example.com", + "format": "email", + "nullable": true + }, + "senderName": { + "description": "Name shown in inbox as the sender of the email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "<SENDER_NAME>", + "nullable": true + }, + "replyToEmail": { + "description": "Email used when user replies to the email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "email@example.com", + "format": "email", + "nullable": true + }, + "replyToName": { + "description": "Name used when user replies to the email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "<REPLY_TO_NAME>", + "nullable": true + }, + "secure": { + "description": "Configures if communication with SMTP server is encrypted. Allowed values are: tls, ssl. Leave empty for no encryption.", + "type": "string", + "example": "tls", + "title": "ProjectSMTPSecure", + "oneOf": [ + { + "type": "string", + "enum": [ + "tls" + ], + "title": "tls" + }, + { + "type": "string", + "enum": [ + "ssl" + ], + "title": "ssl" + } + ], + "nullable": true + }, + "enabled": { + "description": "Enable or disable custom SMTP. Custom SMTP is useful for branding purposes, but also allows use of custom email templates.", + "type": "boolean", + "example": false, + "nullable": true + } + } + } + } + } + } + } + }, + "\/project\/smtp\/tests": { + "post": { + "summary": "Create project SMTP test", + "operationId": "projectCreateSMTPTest", + "tags": [ + "project" + ], + "description": "Send a test email to verify SMTP configuration. ", + "responses": { + "204": { + "description": "No content" + } + }, + "deprecated": false, + "x-appwrite": { + "group": "smtp", + "cookies": false, + "type": "", + "demo": "project\/create-smtp-test.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "project.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "emails": { + "description": "Array of emails to send test email to. Maximum of 10 emails are allowed.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "emails" + ] + } + } + } + } + } + }, + "\/project\/templates\/email": { + "get": { + "summary": "List project email templates", + "operationId": "projectListEmailTemplates", + "tags": [ + "project" + ], + "description": "Get a list of all custom email templates configured for the project. This endpoint returns an array of all configured email templates and their locales.", + "responses": { + "200": { + "description": "Email Templates List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/emailTemplateList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "templates", + "cookies": false, + "type": "", + "demo": "project\/list-email-templates.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "templates.read", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "queries", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Only supported methods are limit and offset", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "default": [] + }, + "in": "query" + }, + { + "name": "total", + "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": true + }, + "in": "query" + } + ] + }, + "patch": { + "summary": "Update project email template", + "operationId": "projectUpdateEmailTemplate", + "tags": [ + "project" + ], + "description": "Update a custom email template for the specified locale and type. Use this endpoint to modify the content of your email templates.", + "responses": { + "200": { + "description": "EmailTemplate", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/emailTemplate" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "templates", + "cookies": false, + "type": "", + "demo": "project\/update-email-template.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "templates.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "templateId": { + "description": "Custom email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", + "type": "string", + "example": "verification", + "title": "ProjectEmailTemplateId", + "oneOf": [ + { + "type": "string", + "enum": [ + "verification" + ], + "title": "verification" + }, + { + "type": "string", + "enum": [ + "magicSession" + ], + "title": "magicSession" + }, + { + "type": "string", + "enum": [ + "recovery" + ], + "title": "recovery" + }, + { + "type": "string", + "enum": [ + "invitation" + ], + "title": "invitation" + }, + { + "type": "string", + "enum": [ + "mfaChallenge" + ], + "title": "mfaChallenge" + }, + { + "type": "string", + "enum": [ + "sessionAlert" + ], + "title": "sessionAlert" + }, + { + "type": "string", + "enum": [ + "otpSession" + ], + "title": "otpSession" + } + ] + }, + "locale": { + "description": "Custom email template locale. If left empty, the fallback locale (en) will be used.", + "type": "string", + "default": "", + "example": "af", + "title": "ProjectEmailTemplateLocale", + "oneOf": [ + { + "type": "string", + "enum": [ + "af" + ], + "title": "af" + }, + { + "type": "string", + "enum": [ + "ar-ae" + ], + "title": "ar-ae" + }, + { + "type": "string", + "enum": [ + "ar-bh" + ], + "title": "ar-bh" + }, + { + "type": "string", + "enum": [ + "ar-dz" + ], + "title": "ar-dz" + }, + { + "type": "string", + "enum": [ + "ar-eg" + ], + "title": "ar-eg" + }, + { + "type": "string", + "enum": [ + "ar-iq" + ], + "title": "ar-iq" + }, + { + "type": "string", + "enum": [ + "ar-jo" + ], + "title": "ar-jo" + }, + { + "type": "string", + "enum": [ + "ar-kw" + ], + "title": "ar-kw" + }, + { + "type": "string", + "enum": [ + "ar-lb" + ], + "title": "ar-lb" + }, + { + "type": "string", + "enum": [ + "ar-ly" + ], + "title": "ar-ly" + }, + { + "type": "string", + "enum": [ + "ar-ma" + ], + "title": "ar-ma" + }, + { + "type": "string", + "enum": [ + "ar-om" + ], + "title": "ar-om" + }, + { + "type": "string", + "enum": [ + "ar-qa" + ], + "title": "ar-qa" + }, + { + "type": "string", + "enum": [ + "ar-sa" + ], + "title": "ar-sa" + }, + { + "type": "string", + "enum": [ + "ar-sy" + ], + "title": "ar-sy" + }, + { + "type": "string", + "enum": [ + "ar-tn" + ], + "title": "ar-tn" + }, + { + "type": "string", + "enum": [ + "ar-ye" + ], + "title": "ar-ye" + }, + { + "type": "string", + "enum": [ + "as" + ], + "title": "as" + }, + { + "type": "string", + "enum": [ + "az" + ], + "title": "az" + }, + { + "type": "string", + "enum": [ + "be" + ], + "title": "be" + }, + { + "type": "string", + "enum": [ + "bg" + ], + "title": "bg" + }, + { + "type": "string", + "enum": [ + "bh" + ], + "title": "bh" + }, + { + "type": "string", + "enum": [ + "bn" + ], + "title": "bn" + }, + { + "type": "string", + "enum": [ + "bs" + ], + "title": "bs" + }, + { + "type": "string", + "enum": [ + "ca" + ], + "title": "ca" + }, + { + "type": "string", + "enum": [ + "cs" + ], + "title": "cs" + }, + { + "type": "string", + "enum": [ + "cy" + ], + "title": "cy" + }, + { + "type": "string", + "enum": [ + "da" + ], + "title": "da" + }, + { + "type": "string", + "enum": [ + "de" + ], + "title": "de" + }, + { + "type": "string", + "enum": [ + "de-at" + ], + "title": "de-at" + }, + { + "type": "string", + "enum": [ + "de-ch" + ], + "title": "de-ch" + }, + { + "type": "string", + "enum": [ + "de-li" + ], + "title": "de-li" + }, + { + "type": "string", + "enum": [ + "de-lu" + ], + "title": "de-lu" + }, + { + "type": "string", + "enum": [ + "el" + ], + "title": "el" + }, + { + "type": "string", + "enum": [ + "en" + ], + "title": "en" + }, + { + "type": "string", + "enum": [ + "en-au" + ], + "title": "en-au" + }, + { + "type": "string", + "enum": [ + "en-bz" + ], + "title": "en-bz" + }, + { + "type": "string", + "enum": [ + "en-ca" + ], + "title": "en-ca" + }, + { + "type": "string", + "enum": [ + "en-gb" + ], + "title": "en-gb" + }, + { + "type": "string", + "enum": [ + "en-ie" + ], + "title": "en-ie" + }, + { + "type": "string", + "enum": [ + "en-jm" + ], + "title": "en-jm" + }, + { + "type": "string", + "enum": [ + "en-nz" + ], + "title": "en-nz" + }, + { + "type": "string", + "enum": [ + "en-tt" + ], + "title": "en-tt" + }, + { + "type": "string", + "enum": [ + "en-us" + ], + "title": "en-us" + }, + { + "type": "string", + "enum": [ + "en-za" + ], + "title": "en-za" + }, + { + "type": "string", + "enum": [ + "eo" + ], + "title": "eo" + }, + { + "type": "string", + "enum": [ + "es" + ], + "title": "es" + }, + { + "type": "string", + "enum": [ + "es-ar" + ], + "title": "es-ar" + }, + { + "type": "string", + "enum": [ + "es-bo" + ], + "title": "es-bo" + }, + { + "type": "string", + "enum": [ + "es-cl" + ], + "title": "es-cl" + }, + { + "type": "string", + "enum": [ + "es-co" + ], + "title": "es-co" + }, + { + "type": "string", + "enum": [ + "es-cr" + ], + "title": "es-cr" + }, + { + "type": "string", + "enum": [ + "es-do" + ], + "title": "es-do" + }, + { + "type": "string", + "enum": [ + "es-ec" + ], + "title": "es-ec" + }, + { + "type": "string", + "enum": [ + "es-gt" + ], + "title": "es-gt" + }, + { + "type": "string", + "enum": [ + "es-hn" + ], + "title": "es-hn" + }, + { + "type": "string", + "enum": [ + "es-mx" + ], + "title": "es-mx" + }, + { + "type": "string", + "enum": [ + "es-ni" + ], + "title": "es-ni" + }, + { + "type": "string", + "enum": [ + "es-pa" + ], + "title": "es-pa" + }, + { + "type": "string", + "enum": [ + "es-pe" + ], + "title": "es-pe" + }, + { + "type": "string", + "enum": [ + "es-pr" + ], + "title": "es-pr" + }, + { + "type": "string", + "enum": [ + "es-py" + ], + "title": "es-py" + }, + { + "type": "string", + "enum": [ + "es-sv" + ], + "title": "es-sv" + }, + { + "type": "string", + "enum": [ + "es-uy" + ], + "title": "es-uy" + }, + { + "type": "string", + "enum": [ + "es-ve" + ], + "title": "es-ve" + }, + { + "type": "string", + "enum": [ + "et" + ], + "title": "et" + }, + { + "type": "string", + "enum": [ + "eu" + ], + "title": "eu" + }, + { + "type": "string", + "enum": [ + "fa" + ], + "title": "fa" + }, + { + "type": "string", + "enum": [ + "fi" + ], + "title": "fi" + }, + { + "type": "string", + "enum": [ + "fo" + ], + "title": "fo" + }, + { + "type": "string", + "enum": [ + "fr" + ], + "title": "fr" + }, + { + "type": "string", + "enum": [ + "fr-be" + ], + "title": "fr-be" + }, + { + "type": "string", + "enum": [ + "fr-ca" + ], + "title": "fr-ca" + }, + { + "type": "string", + "enum": [ + "fr-ch" + ], + "title": "fr-ch" + }, + { + "type": "string", + "enum": [ + "fr-lu" + ], + "title": "fr-lu" + }, + { + "type": "string", + "enum": [ + "ga" + ], + "title": "ga" + }, + { + "type": "string", + "enum": [ + "gd" + ], + "title": "gd" + }, + { + "type": "string", + "enum": [ + "he" + ], + "title": "he" + }, + { + "type": "string", + "enum": [ + "hi" + ], + "title": "hi" + }, + { + "type": "string", + "enum": [ + "hr" + ], + "title": "hr" + }, + { + "type": "string", + "enum": [ + "hu" + ], + "title": "hu" + }, + { + "type": "string", + "enum": [ + "id" + ], + "title": "id" + }, + { + "type": "string", + "enum": [ + "is" + ], + "title": "is" + }, + { + "type": "string", + "enum": [ + "it" + ], + "title": "it" + }, + { + "type": "string", + "enum": [ + "it-ch" + ], + "title": "it-ch" + }, + { + "type": "string", + "enum": [ + "ja" + ], + "title": "ja" + }, + { + "type": "string", + "enum": [ + "ji" + ], + "title": "ji" + }, + { + "type": "string", + "enum": [ + "ko" + ], + "title": "ko" + }, + { + "type": "string", + "enum": [ + "ku" + ], + "title": "ku" + }, + { + "type": "string", + "enum": [ + "lt" + ], + "title": "lt" + }, + { + "type": "string", + "enum": [ + "lv" + ], + "title": "lv" + }, + { + "type": "string", + "enum": [ + "mk" + ], + "title": "mk" + }, + { + "type": "string", + "enum": [ + "ml" + ], + "title": "ml" + }, + { + "type": "string", + "enum": [ + "ms" + ], + "title": "ms" + }, + { + "type": "string", + "enum": [ + "mt" + ], + "title": "mt" + }, + { + "type": "string", + "enum": [ + "nb" + ], + "title": "nb" + }, + { + "type": "string", + "enum": [ + "ne" + ], + "title": "ne" + }, + { + "type": "string", + "enum": [ + "nl" + ], + "title": "nl" + }, + { + "type": "string", + "enum": [ + "nl-be" + ], + "title": "nl-be" + }, + { + "type": "string", + "enum": [ + "nn" + ], + "title": "nn" + }, + { + "type": "string", + "enum": [ + "no" + ], + "title": "no" + }, + { + "type": "string", + "enum": [ + "pa" + ], + "title": "pa" + }, + { + "type": "string", + "enum": [ + "pl" + ], + "title": "pl" + }, + { + "type": "string", + "enum": [ + "pt" + ], + "title": "pt" + }, + { + "type": "string", + "enum": [ + "pt-br" + ], + "title": "pt-br" + }, + { + "type": "string", + "enum": [ + "rm" + ], + "title": "rm" + }, + { + "type": "string", + "enum": [ + "ro" + ], + "title": "ro" + }, + { + "type": "string", + "enum": [ + "ro-md" + ], + "title": "ro-md" + }, + { + "type": "string", + "enum": [ + "ru" + ], + "title": "ru" + }, + { + "type": "string", + "enum": [ + "ru-md" + ], + "title": "ru-md" + }, + { + "type": "string", + "enum": [ + "sb" + ], + "title": "sb" + }, + { + "type": "string", + "enum": [ + "sk" + ], + "title": "sk" + }, + { + "type": "string", + "enum": [ + "sl" + ], + "title": "sl" + }, + { + "type": "string", + "enum": [ + "sq" + ], + "title": "sq" + }, + { + "type": "string", + "enum": [ + "sr" + ], + "title": "sr" + }, + { + "type": "string", + "enum": [ + "sv" + ], + "title": "sv" + }, + { + "type": "string", + "enum": [ + "sv-fi" + ], + "title": "sv-fi" + }, + { + "type": "string", + "enum": [ + "th" + ], + "title": "th" + }, + { + "type": "string", + "enum": [ + "tn" + ], + "title": "tn" + }, + { + "type": "string", + "enum": [ + "tr" + ], + "title": "tr" + }, + { + "type": "string", + "enum": [ + "ts" + ], + "title": "ts" + }, + { + "type": "string", + "enum": [ + "ua" + ], + "title": "ua" + }, + { + "type": "string", + "enum": [ + "ur" + ], + "title": "ur" + }, + { + "type": "string", + "enum": [ + "ve" + ], + "title": "ve" + }, + { + "type": "string", + "enum": [ + "vi" + ], + "title": "vi" + }, + { + "type": "string", + "enum": [ + "xh" + ], + "title": "xh" + }, + { + "type": "string", + "enum": [ + "zh-cn" + ], + "title": "zh-cn" + }, + { + "type": "string", + "enum": [ + "zh-hk" + ], + "title": "zh-hk" + }, + { + "type": "string", + "enum": [ + "zh-sg" + ], + "title": "zh-sg" + }, + { + "type": "string", + "enum": [ + "zh-tw" + ], + "title": "zh-tw" + }, + { + "type": "string", + "enum": [ + "zu" + ], + "title": "zu" + } + ] + }, + "subject": { + "description": "Subject of the email template. Can be up to 255 characters.", "type": "string", - "description": "SMTP server password. Pass an empty string to clear a previously set value. This property is stored securely and cannot be read in future (write-only).", - "example": "password", - "format": "password", + "example": "<SUBJECT>", "nullable": true }, - "senderEmail": { + "message": { + "description": "Plain or HTML body of the email template message. Can be up to 10MB of content.", "type": "string", - "description": "Email address shown in inbox as the sender of the email. Pass an empty string to clear a previously set value.", - "example": "email@example.com", - "format": "email", + "example": "<MESSAGE>", "nullable": true }, "senderName": { + "description": "Name of the email sender.", "type": "string", - "description": "Name shown in inbox as the sender of the email. Pass an empty string to clear a previously set value.", "example": "<SENDER_NAME>", "nullable": true }, - "replyToEmail": { + "senderEmail": { + "description": "Email of the sender. Pass an empty string to clear a previously set value.", "type": "string", - "description": "Email used when user replies to the email. Pass an empty string to clear a previously set value.", "example": "email@example.com", "format": "email", "nullable": true - }, - "replyToName": { - "type": "string", - "description": "Name used when user replies to the email. Pass an empty string to clear a previously set value.", - "example": "<REPLY_TO_NAME>", - "nullable": true - }, - "secure": { - "type": "string", - "description": "Configures if communication with SMTP server is encrypted. Allowed values are: tls, ssl. Leave empty for no encryption.", - "example": "tls", - "enum": [ - "tls", - "ssl" - ], - "x-enum-name": "ProjectSMTPSecure", - "x-enum-keys": [ - "tls", - "ssl" - ], + }, + "replyToEmail": { + "description": "Reply to email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "email@example.com", + "format": "email", "nullable": true }, - "enabled": { - "type": "boolean", - "description": "Enable or disable custom SMTP. Custom SMTP is useful for branding purposes, but also allows use of custom email templates.", - "example": false, + "replyToName": { + "description": "Reply to name.", + "type": "string", + "example": "<REPLY_TO_NAME>", "nullable": true } - } + }, + "required": [ + "templateId" + ] } } } } } }, - "\/project\/smtp\/tests": { - "post": { - "summary": "Create project SMTP test", - "operationId": "projectCreateSMTPTest", + "\/project\/templates\/email\/{templateId}": { + "get": { + "summary": "Get project email template", + "operationId": "projectGetEmailTemplate", "tags": [ "project" ], - "description": "Send a test email to verify SMTP configuration. ", + "description": "Get a custom email template for the specified locale and type. This endpoint returns the template content, subject, and other configuration details.", "responses": { - "204": { - "description": "No content" + "200": { + "description": "EmailTemplate", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/emailTemplate" + } + } + } } }, "deprecated": false, "x-appwrite": { - "group": "smtp", + "group": "templates", "cookies": false, "type": "", - "demo": "project\/create-smtp-test.md", + "demo": "project\/get-email-template.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "project.write", + "scope": "templates.read", "platforms": [ "console", "server" @@ -65097,847 +77593,997 @@ "Key": [] } ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "emails": { - "type": "array", - "description": "Array of emails to send test email to. Maximum of 10 emails are allowed.", - "items": { - "type": "string" - } - } + "parameters": [ + { + "name": "templateId", + "description": "Custom email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", + "required": true, + "schema": { + "type": "string", + "example": "verification", + "title": "ProjectEmailTemplateId", + "oneOf": [ + { + "type": "string", + "enum": [ + "verification" + ], + "title": "verification" + }, + { + "type": "string", + "enum": [ + "magicSession" + ], + "title": "magicSession" + }, + { + "type": "string", + "enum": [ + "recovery" + ], + "title": "recovery" + }, + { + "type": "string", + "enum": [ + "invitation" + ], + "title": "invitation" + }, + { + "type": "string", + "enum": [ + "mfaChallenge" + ], + "title": "mfaChallenge" + }, + { + "type": "string", + "enum": [ + "sessionAlert" + ], + "title": "sessionAlert" + }, + { + "type": "string", + "enum": [ + "otpSession" + ], + "title": "otpSession" + } + ] + }, + "in": "path" + }, + { + "name": "locale", + "description": "Custom email template locale. If left empty, the fallback locale (en) will be used.", + "required": false, + "schema": { + "type": "string", + "example": "af", + "title": "ProjectEmailTemplateLocale", + "oneOf": [ + { + "type": "string", + "enum": [ + "af" + ], + "title": "af" + }, + { + "type": "string", + "enum": [ + "ar-ae" + ], + "title": "ar-ae" + }, + { + "type": "string", + "enum": [ + "ar-bh" + ], + "title": "ar-bh" + }, + { + "type": "string", + "enum": [ + "ar-dz" + ], + "title": "ar-dz" + }, + { + "type": "string", + "enum": [ + "ar-eg" + ], + "title": "ar-eg" + }, + { + "type": "string", + "enum": [ + "ar-iq" + ], + "title": "ar-iq" + }, + { + "type": "string", + "enum": [ + "ar-jo" + ], + "title": "ar-jo" + }, + { + "type": "string", + "enum": [ + "ar-kw" + ], + "title": "ar-kw" + }, + { + "type": "string", + "enum": [ + "ar-lb" + ], + "title": "ar-lb" + }, + { + "type": "string", + "enum": [ + "ar-ly" + ], + "title": "ar-ly" + }, + { + "type": "string", + "enum": [ + "ar-ma" + ], + "title": "ar-ma" + }, + { + "type": "string", + "enum": [ + "ar-om" + ], + "title": "ar-om" + }, + { + "type": "string", + "enum": [ + "ar-qa" + ], + "title": "ar-qa" + }, + { + "type": "string", + "enum": [ + "ar-sa" + ], + "title": "ar-sa" + }, + { + "type": "string", + "enum": [ + "ar-sy" + ], + "title": "ar-sy" + }, + { + "type": "string", + "enum": [ + "ar-tn" + ], + "title": "ar-tn" + }, + { + "type": "string", + "enum": [ + "ar-ye" + ], + "title": "ar-ye" + }, + { + "type": "string", + "enum": [ + "as" + ], + "title": "as" + }, + { + "type": "string", + "enum": [ + "az" + ], + "title": "az" + }, + { + "type": "string", + "enum": [ + "be" + ], + "title": "be" + }, + { + "type": "string", + "enum": [ + "bg" + ], + "title": "bg" + }, + { + "type": "string", + "enum": [ + "bh" + ], + "title": "bh" + }, + { + "type": "string", + "enum": [ + "bn" + ], + "title": "bn" + }, + { + "type": "string", + "enum": [ + "bs" + ], + "title": "bs" + }, + { + "type": "string", + "enum": [ + "ca" + ], + "title": "ca" + }, + { + "type": "string", + "enum": [ + "cs" + ], + "title": "cs" + }, + { + "type": "string", + "enum": [ + "cy" + ], + "title": "cy" + }, + { + "type": "string", + "enum": [ + "da" + ], + "title": "da" + }, + { + "type": "string", + "enum": [ + "de" + ], + "title": "de" + }, + { + "type": "string", + "enum": [ + "de-at" + ], + "title": "de-at" + }, + { + "type": "string", + "enum": [ + "de-ch" + ], + "title": "de-ch" + }, + { + "type": "string", + "enum": [ + "de-li" + ], + "title": "de-li" + }, + { + "type": "string", + "enum": [ + "de-lu" + ], + "title": "de-lu" + }, + { + "type": "string", + "enum": [ + "el" + ], + "title": "el" + }, + { + "type": "string", + "enum": [ + "en" + ], + "title": "en" + }, + { + "type": "string", + "enum": [ + "en-au" + ], + "title": "en-au" + }, + { + "type": "string", + "enum": [ + "en-bz" + ], + "title": "en-bz" + }, + { + "type": "string", + "enum": [ + "en-ca" + ], + "title": "en-ca" + }, + { + "type": "string", + "enum": [ + "en-gb" + ], + "title": "en-gb" + }, + { + "type": "string", + "enum": [ + "en-ie" + ], + "title": "en-ie" + }, + { + "type": "string", + "enum": [ + "en-jm" + ], + "title": "en-jm" + }, + { + "type": "string", + "enum": [ + "en-nz" + ], + "title": "en-nz" + }, + { + "type": "string", + "enum": [ + "en-tt" + ], + "title": "en-tt" + }, + { + "type": "string", + "enum": [ + "en-us" + ], + "title": "en-us" + }, + { + "type": "string", + "enum": [ + "en-za" + ], + "title": "en-za" + }, + { + "type": "string", + "enum": [ + "eo" + ], + "title": "eo" + }, + { + "type": "string", + "enum": [ + "es" + ], + "title": "es" + }, + { + "type": "string", + "enum": [ + "es-ar" + ], + "title": "es-ar" + }, + { + "type": "string", + "enum": [ + "es-bo" + ], + "title": "es-bo" + }, + { + "type": "string", + "enum": [ + "es-cl" + ], + "title": "es-cl" + }, + { + "type": "string", + "enum": [ + "es-co" + ], + "title": "es-co" + }, + { + "type": "string", + "enum": [ + "es-cr" + ], + "title": "es-cr" + }, + { + "type": "string", + "enum": [ + "es-do" + ], + "title": "es-do" + }, + { + "type": "string", + "enum": [ + "es-ec" + ], + "title": "es-ec" + }, + { + "type": "string", + "enum": [ + "es-gt" + ], + "title": "es-gt" + }, + { + "type": "string", + "enum": [ + "es-hn" + ], + "title": "es-hn" + }, + { + "type": "string", + "enum": [ + "es-mx" + ], + "title": "es-mx" + }, + { + "type": "string", + "enum": [ + "es-ni" + ], + "title": "es-ni" + }, + { + "type": "string", + "enum": [ + "es-pa" + ], + "title": "es-pa" + }, + { + "type": "string", + "enum": [ + "es-pe" + ], + "title": "es-pe" + }, + { + "type": "string", + "enum": [ + "es-pr" + ], + "title": "es-pr" + }, + { + "type": "string", + "enum": [ + "es-py" + ], + "title": "es-py" + }, + { + "type": "string", + "enum": [ + "es-sv" + ], + "title": "es-sv" + }, + { + "type": "string", + "enum": [ + "es-uy" + ], + "title": "es-uy" + }, + { + "type": "string", + "enum": [ + "es-ve" + ], + "title": "es-ve" + }, + { + "type": "string", + "enum": [ + "et" + ], + "title": "et" + }, + { + "type": "string", + "enum": [ + "eu" + ], + "title": "eu" + }, + { + "type": "string", + "enum": [ + "fa" + ], + "title": "fa" + }, + { + "type": "string", + "enum": [ + "fi" + ], + "title": "fi" + }, + { + "type": "string", + "enum": [ + "fo" + ], + "title": "fo" + }, + { + "type": "string", + "enum": [ + "fr" + ], + "title": "fr" + }, + { + "type": "string", + "enum": [ + "fr-be" + ], + "title": "fr-be" + }, + { + "type": "string", + "enum": [ + "fr-ca" + ], + "title": "fr-ca" + }, + { + "type": "string", + "enum": [ + "fr-ch" + ], + "title": "fr-ch" + }, + { + "type": "string", + "enum": [ + "fr-lu" + ], + "title": "fr-lu" + }, + { + "type": "string", + "enum": [ + "ga" + ], + "title": "ga" + }, + { + "type": "string", + "enum": [ + "gd" + ], + "title": "gd" + }, + { + "type": "string", + "enum": [ + "he" + ], + "title": "he" + }, + { + "type": "string", + "enum": [ + "hi" + ], + "title": "hi" + }, + { + "type": "string", + "enum": [ + "hr" + ], + "title": "hr" + }, + { + "type": "string", + "enum": [ + "hu" + ], + "title": "hu" + }, + { + "type": "string", + "enum": [ + "id" + ], + "title": "id" + }, + { + "type": "string", + "enum": [ + "is" + ], + "title": "is" + }, + { + "type": "string", + "enum": [ + "it" + ], + "title": "it" + }, + { + "type": "string", + "enum": [ + "it-ch" + ], + "title": "it-ch" + }, + { + "type": "string", + "enum": [ + "ja" + ], + "title": "ja" + }, + { + "type": "string", + "enum": [ + "ji" + ], + "title": "ji" + }, + { + "type": "string", + "enum": [ + "ko" + ], + "title": "ko" + }, + { + "type": "string", + "enum": [ + "ku" + ], + "title": "ku" + }, + { + "type": "string", + "enum": [ + "lt" + ], + "title": "lt" + }, + { + "type": "string", + "enum": [ + "lv" + ], + "title": "lv" + }, + { + "type": "string", + "enum": [ + "mk" + ], + "title": "mk" + }, + { + "type": "string", + "enum": [ + "ml" + ], + "title": "ml" + }, + { + "type": "string", + "enum": [ + "ms" + ], + "title": "ms" + }, + { + "type": "string", + "enum": [ + "mt" + ], + "title": "mt" + }, + { + "type": "string", + "enum": [ + "nb" + ], + "title": "nb" + }, + { + "type": "string", + "enum": [ + "ne" + ], + "title": "ne" + }, + { + "type": "string", + "enum": [ + "nl" + ], + "title": "nl" + }, + { + "type": "string", + "enum": [ + "nl-be" + ], + "title": "nl-be" + }, + { + "type": "string", + "enum": [ + "nn" + ], + "title": "nn" + }, + { + "type": "string", + "enum": [ + "no" + ], + "title": "no" + }, + { + "type": "string", + "enum": [ + "pa" + ], + "title": "pa" }, - "required": [ - "emails" - ] - } - } - } - } - } - }, - "\/project\/templates\/email": { - "get": { - "summary": "List project email templates", - "operationId": "projectListEmailTemplates", - "tags": [ - "project" - ], - "description": "Get a list of all custom email templates configured for the project. This endpoint returns an array of all configured email templates and their locales.", - "responses": { - "200": { - "description": "Email Templates List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/emailTemplateList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "templates", - "cookies": false, - "type": "", - "demo": "project\/list-email-templates.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "templates.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Only supported methods are limit and offset", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - }, - "default": [] - }, - "in": "query" - }, - { - "name": "total", - "description": "When set to false, the total count returned will be 0 and will not be calculated.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": true - }, - "in": "query" - } - ] - }, - "patch": { - "summary": "Update project email template", - "operationId": "projectUpdateEmailTemplate", - "tags": [ - "project" - ], - "description": "Update a custom email template for the specified locale and type. Use this endpoint to modify the content of your email templates.", - "responses": { - "200": { - "description": "EmailTemplate", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/emailTemplate" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "templates", - "cookies": false, - "type": "", - "demo": "project\/update-email-template.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "templates.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "templateId": { - "type": "string", - "description": "Custom email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", - "example": "verification", - "enum": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ], - "x-enum-name": "ProjectEmailTemplateId", - "x-enum-keys": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ] - }, - "locale": { - "type": "string", - "description": "Custom email template locale. If left empty, the fallback locale (en) will be used.", - "example": "af", - "enum": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" - ], - "x-enum-name": "ProjectEmailTemplateLocale", - "x-enum-keys": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" - ] - }, - "subject": { - "type": "string", - "description": "Subject of the email template. Can be up to 255 characters.", - "example": "<SUBJECT>", - "nullable": true - }, - "message": { - "type": "string", - "description": "Plain or HTML body of the email template message. Can be up to 10MB of content.", - "example": "<MESSAGE>", - "nullable": true - }, - "senderName": { - "type": "string", - "description": "Name of the email sender.", - "example": "<SENDER_NAME>", - "nullable": true - }, - "senderEmail": { - "type": "string", - "description": "Email of the sender. Pass an empty string to clear a previously set value.", - "example": "email@example.com", - "format": "email", - "nullable": true - }, - "replyToEmail": { - "type": "string", - "description": "Reply to email. Pass an empty string to clear a previously set value.", - "example": "email@example.com", - "format": "email", - "nullable": true - }, - "replyToName": { - "type": "string", - "description": "Reply to name.", - "example": "<REPLY_TO_NAME>", - "nullable": true - } + { + "type": "string", + "enum": [ + "pl" + ], + "title": "pl" }, - "required": [ - "templateId" - ] - } - } - } - } - } - }, - "\/project\/templates\/email\/{templateId}": { - "get": { - "summary": "Get project email template", - "operationId": "projectGetEmailTemplate", - "tags": [ - "project" - ], - "description": "Get a custom email template for the specified locale and type. This endpoint returns the template content, subject, and other configuration details.", - "responses": { - "200": { - "description": "EmailTemplate", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/emailTemplate" + { + "type": "string", + "enum": [ + "pt" + ], + "title": "pt" + }, + { + "type": "string", + "enum": [ + "pt-br" + ], + "title": "pt-br" + }, + { + "type": "string", + "enum": [ + "rm" + ], + "title": "rm" + }, + { + "type": "string", + "enum": [ + "ro" + ], + "title": "ro" + }, + { + "type": "string", + "enum": [ + "ro-md" + ], + "title": "ro-md" + }, + { + "type": "string", + "enum": [ + "ru" + ], + "title": "ru" + }, + { + "type": "string", + "enum": [ + "ru-md" + ], + "title": "ru-md" + }, + { + "type": "string", + "enum": [ + "sb" + ], + "title": "sb" + }, + { + "type": "string", + "enum": [ + "sk" + ], + "title": "sk" + }, + { + "type": "string", + "enum": [ + "sl" + ], + "title": "sl" + }, + { + "type": "string", + "enum": [ + "sq" + ], + "title": "sq" + }, + { + "type": "string", + "enum": [ + "sr" + ], + "title": "sr" + }, + { + "type": "string", + "enum": [ + "sv" + ], + "title": "sv" + }, + { + "type": "string", + "enum": [ + "sv-fi" + ], + "title": "sv-fi" + }, + { + "type": "string", + "enum": [ + "th" + ], + "title": "th" + }, + { + "type": "string", + "enum": [ + "tn" + ], + "title": "tn" + }, + { + "type": "string", + "enum": [ + "tr" + ], + "title": "tr" + }, + { + "type": "string", + "enum": [ + "ts" + ], + "title": "ts" + }, + { + "type": "string", + "enum": [ + "ua" + ], + "title": "ua" + }, + { + "type": "string", + "enum": [ + "ur" + ], + "title": "ur" + }, + { + "type": "string", + "enum": [ + "ve" + ], + "title": "ve" + }, + { + "type": "string", + "enum": [ + "vi" + ], + "title": "vi" + }, + { + "type": "string", + "enum": [ + "xh" + ], + "title": "xh" + }, + { + "type": "string", + "enum": [ + "zh-cn" + ], + "title": "zh-cn" + }, + { + "type": "string", + "enum": [ + "zh-hk" + ], + "title": "zh-hk" + }, + { + "type": "string", + "enum": [ + "zh-sg" + ], + "title": "zh-sg" + }, + { + "type": "string", + "enum": [ + "zh-tw" + ], + "title": "zh-tw" + }, + { + "type": "string", + "enum": [ + "zu" + ], + "title": "zu" } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "templates", - "cookies": false, - "type": "", - "demo": "project\/get-email-template.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "templates.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "templateId", - "description": "Custom email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", - "required": true, - "schema": { - "type": "string", - "example": "verification", - "enum": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ], - "x-enum-name": "ProjectEmailTemplateId", - "x-enum-keys": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ] - }, - "in": "path" - }, - { - "name": "locale", - "description": "Custom email template locale. If left empty, the fallback locale (en) will be used.", - "required": false, - "schema": { - "type": "string", - "example": "af", - "enum": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" ], - "x-enum-name": "ProjectEmailTemplateLocale", - "x-enum-keys": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" - ] + "default": "" }, "in": "query" } @@ -66019,14 +78665,22 @@ "schema": { "type": "string", "example": "1h", - "enum": [ - "1h", - "1d" - ], - "x-enum-name": "ProjectUsageRange", - "x-enum-keys": [ - "OneHour", - "OneDay" + "title": "ProjectUsageRange", + "oneOf": [ + { + "type": "string", + "enum": [ + "1h" + ], + "title": "OneHour" + }, + { + "type": "string", + "enum": [ + "1d" + ], + "title": "OneDay" + } ], "default": "1d" }, @@ -66160,26 +78814,26 @@ "type": "object", "properties": { "variableId": { - "type": "string", "description": "Variable unique 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.", + "type": "string", "example": "<VARIABLE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>" }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>" }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only projects can read them during build and runtime.", + "type": "boolean", "default": true, "example": false } @@ -66318,20 +78972,20 @@ "type": "object", "properties": { "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>", "nullable": true }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>", "nullable": true }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only projects can read them during build and runtime.", + "type": "boolean", "example": false, "nullable": true } @@ -67046,13 +79700,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime" } @@ -67271,41 +79925,59 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "The resource type for the schedule. Possible values: function, execution, message, backup.", + "type": "string", "example": "function", - "enum": [ - "function", - "execution", - "message", - "backup" - ], - "x-enum-name": "ScheduleResourceType", - "x-enum-keys": [ - "function", - "execution", - "message", - "backup" + "title": "ScheduleResourceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "function" + ], + "title": "function" + }, + { + "type": "string", + "enum": [ + "execution" + ], + "title": "execution" + }, + { + "type": "string", + "enum": [ + "message" + ], + "title": "message" + }, + { + "type": "string", + "enum": [ + "backup" + ], + "title": "backup" + } ] }, "resourceId": { - "type": "string", "description": "The resource ID to associate with this schedule.", + "type": "string", "example": "<RESOURCE_ID>" }, "schedule": { - "type": "string", - "description": "Schedule CRON expression." + "description": "Schedule CRON expression.", + "type": "string" }, "active": { - "type": "boolean", "description": "Whether the schedule is active.", + "type": "boolean", "default": false, "example": false }, "data": { - "type": "object", "description": "Schedule data as a JSON string. Used to store resource-specific context needed for execution.", + "type": "object", "default": {}, "example": {} } @@ -67523,8 +80195,8 @@ "type": "object", "properties": { "skip": { - "type": "boolean", "description": "Mark the stage as skipped.", + "type": "boolean", "default": true, "example": false } @@ -67595,15 +80267,18 @@ "type": "object", "properties": { "status": { - "type": "string", "description": "New status for the project", + "type": "string", "example": "active", - "enum": [ - "active" - ], - "x-enum-name": "Status", - "x-enum-keys": [ - "active" + "title": "Status", + "oneOf": [ + { + "type": "string", + "enum": [ + "active" + ], + "title": "active" + } ] } }, @@ -67680,8 +80355,8 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "Team ID of the team to transfer project to.", + "type": "string", "example": "<TEAM_ID>" } }, @@ -67747,28 +80422,41 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name." + "description": "Domain name.", + "type": "string" }, "type": { - "type": "string", "description": "Type of reference passed. Allowed values are: tag, path, all", + "type": "string", "example": "tag", - "enum": [ - "tag", - "path", - "all" - ], - "x-enum-name": "InvalidationType", - "x-enum-keys": [ - "tag", - "path", - "all" + "title": "InvalidationType", + "oneOf": [ + { + "type": "string", + "enum": [ + "tag" + ], + "title": "tag" + }, + { + "type": "string", + "enum": [ + "path" + ], + "title": "path" + }, + { + "type": "string", + "enum": [ + "all" + ], + "title": "all" + } ] }, "reference": { - "type": "string", "description": "Reference to invalidate. Depending on type this can be: cache tag name (up to 128 characters), URL path (up to 2048 characters). Not required when type is all.", + "type": "string", "default": "", "example": "<REFERENCE>" } @@ -67910,8 +80598,8 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name." + "description": "Domain name.", + "type": "string" } }, "required": [ @@ -67976,17 +80664,17 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name." + "description": "Domain name.", + "type": "string" }, "functionId": { - "type": "string", "description": "ID of function to be executed.", + "type": "string", "example": "<FUNCTION_ID>" }, "branch": { - "type": "string", "description": "Name of VCS branch to deploy changes automatically", + "type": "string", "default": "", "example": "<BRANCH>" } @@ -68054,50 +80742,76 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name." + "description": "Domain name.", + "type": "string" }, "url": { - "type": "string", "description": "Target URL of redirection", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "statusCode": { - "type": "string", "description": "Status code of redirection", + "type": "string", "example": "301", - "enum": [ - "301", - "302", - "307", - "308" - ], - "x-enum-name": "StatusCode", - "x-enum-keys": [ - "MovedPermanently", - "Found", - "TemporaryRedirect", - "PermanentRedirect" + "title": "StatusCode", + "oneOf": [ + { + "type": "string", + "enum": [ + "301" + ], + "title": "MovedPermanently" + }, + { + "type": "string", + "enum": [ + "302" + ], + "title": "Found" + }, + { + "type": "string", + "enum": [ + "307" + ], + "title": "TemporaryRedirect" + }, + { + "type": "string", + "enum": [ + "308" + ], + "title": "PermanentRedirect" + } ] }, "resourceId": { - "type": "string", "description": "ID of parent resource.", + "type": "string", "example": "<RESOURCE_ID>" }, "resourceType": { - "type": "string", "description": "Type of parent resource.", + "type": "string", "example": "site", - "enum": [ - "site", - "function" - ], - "x-enum-name": "ProxyResourceType", - "x-enum-keys": [ - "Site", - "Function" + "title": "ProxyResourceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "site" + ], + "title": "Site" + }, + { + "type": "string", + "enum": [ + "function" + ], + "title": "Function" + } ] } }, @@ -68167,17 +80881,17 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name." + "description": "Domain name.", + "type": "string" }, "siteId": { - "type": "string", "description": "ID of site to be executed.", + "type": "string", "example": "<SITE_ID>" }, "branch": { - "type": "string", "description": "Name of VCS branch to deploy changes automatically", + "type": "string", "default": "", "example": "<BRANCH>" } @@ -68843,598 +81557,1682 @@ "type": "object", "properties": { "siteId": { - "type": "string", "description": "Site 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.", + "type": "string", "example": "<SITE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Site name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "framework": { - "type": "string", "description": "Sites framework.", + "type": "string", "example": "analog", - "enum": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" - ], - "x-enum-name": "Framework", - "x-enum-keys": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" + "title": "Framework", + "oneOf": [ + { + "type": "string", + "enum": [ + "analog" + ], + "title": "analog" + }, + { + "type": "string", + "enum": [ + "angular" + ], + "title": "angular" + }, + { + "type": "string", + "enum": [ + "nextjs" + ], + "title": "nextjs" + }, + { + "type": "string", + "enum": [ + "react" + ], + "title": "react" + }, + { + "type": "string", + "enum": [ + "nuxt" + ], + "title": "nuxt" + }, + { + "type": "string", + "enum": [ + "vue" + ], + "title": "vue" + }, + { + "type": "string", + "enum": [ + "sveltekit" + ], + "title": "sveltekit" + }, + { + "type": "string", + "enum": [ + "astro" + ], + "title": "astro" + }, + { + "type": "string", + "enum": [ + "tanstack-start" + ], + "title": "tanstack-start" + }, + { + "type": "string", + "enum": [ + "remix" + ], + "title": "remix" + }, + { + "type": "string", + "enum": [ + "lynx" + ], + "title": "lynx" + }, + { + "type": "string", + "enum": [ + "flutter" + ], + "title": "flutter" + }, + { + "type": "string", + "enum": [ + "react-native" + ], + "title": "react-native" + }, + { + "type": "string", + "enum": [ + "vite" + ], + "title": "vite" + }, + { + "type": "string", + "enum": [ + "other" + ], + "title": "other" + } ] }, "enabled": { - "type": "boolean", "description": "Is site enabled? When set to 'disabled', users cannot access the site but Server SDKs with and API key can still access the site. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "logging": { - "type": "boolean", "description": "When disabled, request logs will exclude logs and errors, and site responses will be slightly faster.", + "type": "boolean", "default": true, "example": false }, "timeout": { - "type": "integer", "description": "Maximum request time in seconds.", + "type": "integer", "default": 30, "example": 1, "format": "int32" }, "installCommand": { - "type": "string", "description": "Install Command.", + "type": "string", "default": "", "example": "<INSTALL_COMMAND>" }, "buildCommand": { - "type": "string", "description": "Build Command.", + "type": "string", "default": "", "example": "<BUILD_COMMAND>" }, "startCommand": { - "type": "string", "description": "Custom start command. Leave empty to use default.", + "type": "string", "default": "", "example": "<START_COMMAND>" }, "outputDirectory": { - "type": "string", "description": "Output Directory for site.", + "type": "string", "default": "", "example": "<OUTPUT_DIRECTORY>" }, "buildRuntime": { - "type": "string", "description": "Runtime to use during build step.", + "type": "string", "example": "node-14.5", - "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ], - "x-enum-name": "BuildRuntime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" + "title": "BuildRuntime", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { + "type": "string", + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" + }, + { + "type": "string", + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" + }, + { + "type": "string", + "enum": [ + "dart-3.12" + ], + "title": "dart-3.12" + }, + { + "type": "string", + "enum": [ + "dotnet-6.0" + ], + "title": "dotnet-6.0" + }, + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" + }, + { + "type": "string", + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" + }, + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" + }, + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" + }, + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" + }, + { + "type": "string", + "enum": [ + "java-17.0" + ], + "title": "java-17.0" + }, + { + "type": "string", + "enum": [ + "java-18.0" + ], + "title": "java-18.0" + }, + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" + }, + { + "type": "string", + "enum": [ + "java-22" + ], + "title": "java-22" + }, + { + "type": "string", + "enum": [ + "java-25" + ], + "title": "java-25" + }, + { + "type": "string", + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" + }, + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" + }, + { + "type": "string", + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" + }, + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" + }, + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" + }, + { + "type": "string", + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" + }, + { + "type": "string", + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" + }, + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" + } ] }, "adapter": { - "type": "string", "description": "Framework adapter defining rendering strategy. Allowed values are: static, ssr", + "type": "string", + "default": "", "example": "static", - "enum": [ - "static", - "ssr" - ], - "x-enum-name": "Adapter", - "x-enum-keys": [ - "static", - "ssr" + "title": "Adapter", + "oneOf": [ + { + "type": "string", + "enum": [ + "static" + ], + "title": "static" + }, + { + "type": "string", + "enum": [ + "ssr" + ], + "title": "ssr" + } ] }, "installationId": { - "type": "string", "description": "Appwrite Installation ID for VCS (Version Control System) deployment.", + "type": "string", "default": "", "example": "<INSTALLATION_ID>" }, "fallbackFile": { - "type": "string", "description": "Fallback file for single page application sites.", + "type": "string", "default": "", "example": "<FALLBACK_FILE>" }, "providerRepositoryId": { - "type": "string", "description": "Repository ID of the repo linked to the site.", + "type": "string", "default": "", "example": "<PROVIDER_REPOSITORY_ID>" }, "providerBranch": { - "type": "string", "description": "Production branch for the repo linked to the site.", + "type": "string", "default": "", "example": "<PROVIDER_BRANCH>" }, "providerSilentMode": { - "type": "boolean", "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the site? In silent mode, comments will not be made on commits and pull requests.", + "type": "boolean", "default": false, "example": false }, "providerRootDirectory": { - "type": "string", "description": "Path to site code in the linked repo.", + "type": "string", "default": "", "example": "<PROVIDER_ROOT_DIRECTORY>" }, "providerBranches": { - "type": "array", "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", + "type": "array", "default": [], "items": { "type": "string" } }, "providerPaths": { - "type": "array", "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", + "type": "array", "default": [], "items": { "type": "string" } }, "buildSpecification": { - "type": "string", "description": "Build specification for the site deployments.", + "type": "string", "default": {} }, "runtimeSpecification": { - "type": "string", "description": "Runtime specification for the SSR executions.", + "type": "string", "default": {} }, "deploymentRetention": { - "type": "integer", "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "scopes": { - "type": "array", "description": "List of scopes allowed for API key auto-generated for every site build and SSR execution. Maximum of 200 scopes are allowed.", + "type": "array", "default": [], "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } } @@ -69612,41 +83410,114 @@ "schema": { "type": "array", "items": { + "title": "Framework", "type": "string", - "enum": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" - ], - "x-enum-name": "Framework", - "x-enum-keys": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" + "oneOf": [ + { + "type": "string", + "enum": [ + "analog" + ], + "title": "analog" + }, + { + "type": "string", + "enum": [ + "angular" + ], + "title": "angular" + }, + { + "type": "string", + "enum": [ + "nextjs" + ], + "title": "nextjs" + }, + { + "type": "string", + "enum": [ + "react" + ], + "title": "react" + }, + { + "type": "string", + "enum": [ + "nuxt" + ], + "title": "nuxt" + }, + { + "type": "string", + "enum": [ + "vue" + ], + "title": "vue" + }, + { + "type": "string", + "enum": [ + "sveltekit" + ], + "title": "sveltekit" + }, + { + "type": "string", + "enum": [ + "astro" + ], + "title": "astro" + }, + { + "type": "string", + "enum": [ + "tanstack-start" + ], + "title": "tanstack-start" + }, + { + "type": "string", + "enum": [ + "remix" + ], + "title": "remix" + }, + { + "type": "string", + "enum": [ + "lynx" + ], + "title": "lynx" + }, + { + "type": "string", + "enum": [ + "flutter" + ], + "title": "flutter" + }, + { + "type": "string", + "enum": [ + "react-native" + ], + "title": "react-native" + }, + { + "type": "string", + "enum": [ + "vite" + ], + "title": "vite" + }, + { + "type": "string", + "enum": [ + "other" + ], + "title": "other" + } ] }, "default": [] @@ -69660,29 +83531,72 @@ "schema": { "type": "array", "items": { + "title": "SiteTemplateUseCase", "type": "string", - "enum": [ - "portfolio", - "starter", - "events", - "ecommerce", - "documentation", - "blog", - "ai", - "forms", - "dashboard" - ], - "x-enum-name": "SiteTemplateUseCase", - "x-enum-keys": [ - "portfolio", - "starter", - "events", - "ecommerce", - "documentation", - "blog", - "ai", - "forms", - "dashboard" + "oneOf": [ + { + "type": "string", + "enum": [ + "portfolio" + ], + "title": "portfolio" + }, + { + "type": "string", + "enum": [ + "starter" + ], + "title": "starter" + }, + { + "type": "string", + "enum": [ + "events" + ], + "title": "events" + }, + { + "type": "string", + "enum": [ + "ecommerce" + ], + "title": "ecommerce" + }, + { + "type": "string", + "enum": [ + "documentation" + ], + "title": "documentation" + }, + { + "type": "string", + "enum": [ + "blog" + ], + "title": "blog" + }, + { + "type": "string", + "enum": [ + "ai" + ], + "title": "ai" + }, + { + "type": "string", + "enum": [ + "forms" + ], + "title": "forms" + }, + { + "type": "string", + "enum": [ + "dashboard" + ], + "title": "dashboard" + } ] }, "default": [] @@ -69897,589 +83811,1674 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Site name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "framework": { - "type": "string", "description": "Sites framework.", + "type": "string", "example": "analog", - "enum": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" - ], - "x-enum-name": "Framework", - "x-enum-keys": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" + "title": "Framework", + "oneOf": [ + { + "type": "string", + "enum": [ + "analog" + ], + "title": "analog" + }, + { + "type": "string", + "enum": [ + "angular" + ], + "title": "angular" + }, + { + "type": "string", + "enum": [ + "nextjs" + ], + "title": "nextjs" + }, + { + "type": "string", + "enum": [ + "react" + ], + "title": "react" + }, + { + "type": "string", + "enum": [ + "nuxt" + ], + "title": "nuxt" + }, + { + "type": "string", + "enum": [ + "vue" + ], + "title": "vue" + }, + { + "type": "string", + "enum": [ + "sveltekit" + ], + "title": "sveltekit" + }, + { + "type": "string", + "enum": [ + "astro" + ], + "title": "astro" + }, + { + "type": "string", + "enum": [ + "tanstack-start" + ], + "title": "tanstack-start" + }, + { + "type": "string", + "enum": [ + "remix" + ], + "title": "remix" + }, + { + "type": "string", + "enum": [ + "lynx" + ], + "title": "lynx" + }, + { + "type": "string", + "enum": [ + "flutter" + ], + "title": "flutter" + }, + { + "type": "string", + "enum": [ + "react-native" + ], + "title": "react-native" + }, + { + "type": "string", + "enum": [ + "vite" + ], + "title": "vite" + }, + { + "type": "string", + "enum": [ + "other" + ], + "title": "other" + } ] }, "enabled": { - "type": "boolean", "description": "Is site enabled? When set to 'disabled', users cannot access the site but Server SDKs with and API key can still access the site. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "logging": { - "type": "boolean", "description": "When disabled, request logs will exclude logs and errors, and site responses will be slightly faster.", + "type": "boolean", "default": true, "example": false }, "timeout": { - "type": "integer", "description": "Maximum request time in seconds.", + "type": "integer", "default": 30, "example": 1, "format": "int32" }, "installCommand": { - "type": "string", "description": "Install Command.", + "type": "string", "default": "", "example": "<INSTALL_COMMAND>" }, "buildCommand": { - "type": "string", "description": "Build Command.", + "type": "string", "default": "", "example": "<BUILD_COMMAND>" }, "startCommand": { - "type": "string", "description": "Custom start command. Leave empty to use default.", + "type": "string", "default": "", "example": "<START_COMMAND>" }, "outputDirectory": { - "type": "string", "description": "Output Directory for site.", + "type": "string", "default": "", "example": "<OUTPUT_DIRECTORY>" }, "buildRuntime": { - "type": "string", "description": "Runtime to use during build step.", + "type": "string", + "default": "", "example": "node-14.5", - "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ], - "x-enum-name": "BuildRuntime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" + "title": "BuildRuntime", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { + "type": "string", + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" + }, + { + "type": "string", + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" + }, + { + "type": "string", + "enum": [ + "dart-3.12" + ], + "title": "dart-3.12" + }, + { + "type": "string", + "enum": [ + "dotnet-6.0" + ], + "title": "dotnet-6.0" + }, + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" + }, + { + "type": "string", + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" + }, + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" + }, + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" + }, + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" + }, + { + "type": "string", + "enum": [ + "java-17.0" + ], + "title": "java-17.0" + }, + { + "type": "string", + "enum": [ + "java-18.0" + ], + "title": "java-18.0" + }, + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" + }, + { + "type": "string", + "enum": [ + "java-22" + ], + "title": "java-22" + }, + { + "type": "string", + "enum": [ + "java-25" + ], + "title": "java-25" + }, + { + "type": "string", + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" + }, + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" + }, + { + "type": "string", + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" + }, + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" + }, + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" + }, + { + "type": "string", + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" + }, + { + "type": "string", + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" + }, + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" + } ] }, "adapter": { - "type": "string", "description": "Framework adapter defining rendering strategy. Allowed values are: static, ssr", + "type": "string", + "default": "", "example": "static", - "enum": [ - "static", - "ssr" - ], - "x-enum-name": "Adapter", - "x-enum-keys": [ - "static", - "ssr" + "title": "Adapter", + "oneOf": [ + { + "type": "string", + "enum": [ + "static" + ], + "title": "static" + }, + { + "type": "string", + "enum": [ + "ssr" + ], + "title": "ssr" + } ] }, "fallbackFile": { - "type": "string", "description": "Fallback file for single page application sites.", + "type": "string", "default": "", "example": "<FALLBACK_FILE>" }, "installationId": { - "type": "string", "description": "Appwrite Installation ID for VCS (Version Control System) deployment.", + "type": "string", "default": "", "example": "<INSTALLATION_ID>" }, "providerRepositoryId": { - "type": "string", "description": "Repository ID of the repo linked to the site.", + "type": "string", "default": "", "example": "<PROVIDER_REPOSITORY_ID>" }, "providerBranch": { - "type": "string", "description": "Production branch for the repo linked to the site.", + "type": "string", "default": "", "example": "<PROVIDER_BRANCH>" }, "providerSilentMode": { - "type": "boolean", "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the site? In silent mode, comments will not be made on commits and pull requests.", + "type": "boolean", "default": false, "example": false }, "providerRootDirectory": { - "type": "string", "description": "Path to site code in the linked repo.", + "type": "string", "default": "", "example": "<PROVIDER_ROOT_DIRECTORY>" }, "providerBranches": { - "type": "array", "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "providerPaths": { - "type": "array", "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "buildSpecification": { - "type": "string", "description": "Build specification for the site deployments.", + "type": "string", "nullable": true }, "runtimeSpecification": { - "type": "string", "description": "Runtime specification for the SSR executions.", + "type": "string", "default": {} }, "deploymentRetention": { - "type": "integer", "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "scopes": { - "type": "array", "description": "List of scopes allowed for API key auto-generated for every site build and SSR execution. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] }, "nullable": true @@ -70611,8 +85610,8 @@ "type": "object", "properties": { "deploymentId": { - "type": "string", "description": "Deployment ID.", + "type": "string", "example": "<DEPLOYMENT_ID>" } }, @@ -70783,31 +85782,31 @@ "type": "object", "properties": { "installCommand": { - "type": "string", "description": "Install Commands.", + "type": "string", "example": "<INSTALL_COMMAND>", "nullable": true }, "buildCommand": { - "type": "string", "description": "Build Commands.", + "type": "string", "example": "<BUILD_COMMAND>", "nullable": true }, "outputDirectory": { - "type": "string", "description": "Output Directory.", + "type": "string", "example": "<OUTPUT_DIRECTORY>", "nullable": true }, "code": { - "type": "string", "description": "Gzip file with your code package. When used with the Appwrite CLI, pass the path to your code directory, and the CLI will automatically package your code. Use a path that is within the current directory.", + "type": "string", "format": "binary" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", "default": false, "example": false } @@ -70886,8 +85885,8 @@ "type": "object", "properties": { "deploymentId": { - "type": "string", "description": "Deployment ID.", + "type": "string", "example": "<DEPLOYMENT_ID>" } }, @@ -70964,150 +85963,176 @@ "schema": { "type": "object", "properties": { - "repository": { - "type": "string", - "description": "Repository name of the template.", - "example": "<REPOSITORY>" - }, - "owner": { - "type": "string", - "description": "The name of the owner of the template.", - "example": "<OWNER>" - }, - "rootDirectory": { - "type": "string", - "description": "Path to site code in the template repo.", - "example": "<ROOT_DIRECTORY>" - }, + "repository": { + "description": "Repository name of the template.", + "type": "string", + "example": "<REPOSITORY>" + }, + "owner": { + "description": "The name of the owner of the template.", + "type": "string", + "example": "<OWNER>" + }, + "rootDirectory": { + "description": "Path to site code in the template repo.", + "type": "string", + "example": "<ROOT_DIRECTORY>" + }, + "type": { + "description": "Type for the reference provided. Can be commit, branch, or tag", + "type": "string", + "example": "branch", + "title": "TemplateReferenceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "branch" + ], + "title": "branch" + }, + { + "type": "string", + "enum": [ + "commit" + ], + "title": "commit" + }, + { + "type": "string", + "enum": [ + "tag" + ], + "title": "tag" + } + ] + }, + "reference": { + "description": "Reference value, can be a commit hash, branch name, or release tag", + "type": "string", + "example": "<REFERENCE>" + }, + "activate": { + "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", + "default": false, + "example": false + } + }, + "required": [ + "repository", + "owner", + "rootDirectory", + "type", + "reference" + ] + } + } + } + } + } + }, + "\/sites\/{siteId}\/deployments\/vcs": { + "post": { + "summary": "Create VCS deployment", + "operationId": "sitesCreateVcsDeployment", + "tags": [ + "sites" + ], + "description": "Create a deployment when a site is connected to VCS.\n\nThis endpoint lets you create deployment from a branch, commit, or a tag.", + "responses": { + "202": { + "description": "Deployment", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/deployment" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "deployments", + "cookies": false, + "type": "", + "demo": "sites\/create-vcs-deployment.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "sites.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "siteId", + "description": "Site ID.", + "required": true, + "schema": { + "type": "string", + "example": "<SITE_ID>" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { "type": { + "description": "Type of reference passed. Allowed values are: branch, commit", "type": "string", - "description": "Type for the reference provided. Can be commit, branch, or tag", "example": "branch", - "enum": [ - "branch", - "commit", - "tag" - ], - "x-enum-name": "TemplateReferenceType", - "x-enum-keys": [ - "branch", - "commit", - "tag" + "title": "VCSReferenceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "branch" + ], + "title": "branch" + }, + { + "type": "string", + "enum": [ + "commit" + ], + "title": "commit" + }, + { + "type": "string", + "enum": [ + "tag" + ], + "title": "tag" + } ] }, "reference": { + "description": "VCS reference to create deployment from. Depending on type this can be: branch name, commit hash", "type": "string", - "description": "Reference value, can be a commit hash, branch name, or release tag", "example": "<REFERENCE>" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", - "default": false, - "example": false - } - }, - "required": [ - "repository", - "owner", - "rootDirectory", - "type", - "reference" - ] - } - } - } - } - } - }, - "\/sites\/{siteId}\/deployments\/vcs": { - "post": { - "summary": "Create VCS deployment", - "operationId": "sitesCreateVcsDeployment", - "tags": [ - "sites" - ], - "description": "Create a deployment when a site is connected to VCS.\n\nThis endpoint lets you create deployment from a branch, commit, or a tag.", - "responses": { - "202": { - "description": "Deployment", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/deployment" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "deployments", - "cookies": false, - "type": "", - "demo": "sites\/create-vcs-deployment.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "sites.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "siteId", - "description": "Site ID.", - "required": true, - "schema": { - "type": "string", - "example": "<SITE_ID>" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Type of reference passed. Allowed values are: branch, commit", - "example": "branch", - "enum": [ - "branch", - "commit", - "tag" - ], - "x-enum-name": "VCSReferenceType", - "x-enum-keys": [ - "branch", - "commit", - "tag" - ] - }, - "reference": { - "type": "string", - "description": "VCS reference to create deployment from. Depending on type this can be: branch name, commit hash", - "example": "<REFERENCE>" - }, - "activate": { "type": "boolean", - "description": "Automatically activate the deployment when it is finished building.", "default": false, "example": false } @@ -71334,14 +86359,22 @@ "schema": { "type": "string", "example": "source", - "enum": [ - "source", - "output" - ], - "x-enum-name": "DeploymentDownloadType", - "x-enum-keys": [ - "source", - "output" + "title": "DeploymentDownloadType", + "oneOf": [ + { + "type": "string", + "enum": [ + "source" + ], + "title": "source" + }, + { + "type": "string", + "enum": [ + "output" + ], + "title": "output" + } ], "default": "source" }, @@ -71796,26 +86829,26 @@ "type": "object", "properties": { "variableId": { - "type": "string", "description": "Variable 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.", + "type": "string", "example": "<VARIABLE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>" }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>" }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only sites can read them during build and runtime.", + "type": "boolean", "default": true, "example": false } @@ -71974,20 +87007,20 @@ "type": "object", "properties": { "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>", "nullable": true }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>", "nullable": true }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only sites can read them during build and runtime.", + "type": "boolean", "example": false, "nullable": true } @@ -72197,21 +87230,21 @@ "type": "object", "properties": { "bucketId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<BUCKET_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Bucket name", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -72221,64 +87254,77 @@ "nullable": true }, "fileSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual file. A user needs one of file or bucket level permissions to access a file. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is bucket enabled? When set to 'disabled', users cannot access the files in this bucket but Server SDKs with and API key can still access the bucket. No files are lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "maximumFileSize": { - "type": "integer", "description": "Maximum file size allowed in bytes. Maximum allowed value is 0B.", + "type": "integer", "default": {}, "example": 1, "format": "int32" }, "allowedFileExtensions": { - "type": "array", "description": "Allowed file extensions. Maximum of 100 extensions are allowed, each 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "compression": { - "type": "string", "description": "Compression algorithm chosen for compression. Can be one of none, [gzip](https:\/\/en.wikipedia.org\/wiki\/Gzip), or [zstd](https:\/\/en.wikipedia.org\/wiki\/Zstd), For file size above 20MB compression is skipped even if it's enabled", + "type": "string", "default": "none", "example": "none", - "enum": [ - "none", - "gzip", - "zstd" - ], - "x-enum-name": "Compression", - "x-enum-keys": [ - "none", - "gzip", - "zstd" + "title": "Compression", + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "gzip" + ], + "title": "gzip" + }, + { + "type": "string", + "enum": [ + "zstd" + ], + "title": "zstd" + } ] }, "encryption": { - "type": "boolean", "description": "Is encryption enabled? For file size above 20MB encryption is skipped even if it's enabled", + "type": "boolean", "default": true, "example": false }, "antivirus": { - "type": "boolean", "description": "Is virus scanning enabled? For file size above 20MB AntiVirus scanning is skipped even if it's enabled", + "type": "boolean", "default": true, "example": false }, "transformations": { - "type": "boolean", "description": "Are image transformations enabled?", + "type": "boolean", "default": true, "example": false } @@ -72418,13 +87464,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Bucket name", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -72434,64 +87480,77 @@ "nullable": true }, "fileSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual file. A user needs one of file or bucket level permissions to access a file. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is bucket enabled? When set to 'disabled', users cannot access the files in this bucket but Server SDKs with and API key can still access the bucket. No files are lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "maximumFileSize": { - "type": "integer", "description": "Maximum file size allowed in bytes. Maximum allowed value is 0B.", + "type": "integer", "default": {}, "example": 1, "format": "int32" }, "allowedFileExtensions": { - "type": "array", "description": "Allowed file extensions. Maximum of 100 extensions are allowed, each 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "compression": { - "type": "string", "description": "Compression algorithm chosen for compression. Can be one of none, [gzip](https:\/\/en.wikipedia.org\/wiki\/Gzip), or [zstd](https:\/\/en.wikipedia.org\/wiki\/Zstd), For file size above 20MB compression is skipped even if it's enabled", + "type": "string", "default": "none", "example": "none", - "enum": [ - "none", - "gzip", - "zstd" - ], - "x-enum-name": "Compression", - "x-enum-keys": [ - "none", - "gzip", - "zstd" + "title": "Compression", + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "gzip" + ], + "title": "gzip" + }, + { + "type": "string", + "enum": [ + "zstd" + ], + "title": "zstd" + } ] }, "encryption": { - "type": "boolean", "description": "Is encryption enabled? For file size above 20MB encryption is skipped even if it's enabled", + "type": "boolean", "default": true, "example": false }, "antivirus": { - "type": "boolean", "description": "Is virus scanning enabled? For file size above 20MB AntiVirus scanning is skipped even if it's enabled", + "type": "boolean", "default": true, "example": false }, "transformations": { - "type": "boolean", "description": "Are image transformations enabled?", + "type": "boolean", "default": true, "example": false } @@ -72723,8 +87782,8 @@ "type": "object", "properties": { "fileId": { - "type": "string", "description": "File 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.", + "type": "string", "example": "<FILE_ID>", "x-upload-id": true, "x-appwrite": { @@ -72732,13 +87791,13 @@ } }, "file": { - "type": "string", "description": "Binary file. Appwrite SDKs provide helpers to handle file input. [Learn about file input](https:\/\/appwrite.io\/docs\/products\/storage\/upload-download#input-file).", + "type": "string", "format": "binary" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -72748,8 +87807,8 @@ "nullable": true }, "folder": { - "type": "string", "description": "Virtual folder to place the file in, for example \"photos\/2026\". Nest folders with `\/`. Defaults to the bucket root.", + "type": "string", "default": "" } }, @@ -72914,13 +87973,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "File name.", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -73194,28 +88253,71 @@ "schema": { "type": "string", "example": "center", - "enum": [ - "center", - "top-left", - "top", - "top-right", - "left", - "right", - "bottom-left", - "bottom", - "bottom-right" - ], - "x-enum-name": "ImageGravity", - "x-enum-keys": [ - "center", - "top-left", - "top", - "top-right", - "left", - "right", - "bottom-left", - "bottom", - "bottom-right" + "title": "ImageGravity", + "oneOf": [ + { + "type": "string", + "enum": [ + "center" + ], + "title": "center" + }, + { + "type": "string", + "enum": [ + "top-left" + ], + "title": "top-left" + }, + { + "type": "string", + "enum": [ + "top" + ], + "title": "top" + }, + { + "type": "string", + "enum": [ + "top-right" + ], + "title": "top-right" + }, + { + "type": "string", + "enum": [ + "left" + ], + "title": "left" + }, + { + "type": "string", + "enum": [ + "right" + ], + "title": "right" + }, + { + "type": "string", + "enum": [ + "bottom-left" + ], + "title": "bottom-left" + }, + { + "type": "string", + "enum": [ + "bottom" + ], + "title": "bottom" + }, + { + "type": "string", + "enum": [ + "bottom-right" + ], + "title": "bottom-right" + } ], "default": "center" }, @@ -73308,25 +88410,59 @@ "schema": { "type": "string", "example": "jpg", - "enum": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" + "title": "ImageFormat", + "oneOf": [ + { + "type": "string", + "enum": [ + "jpg" + ], + "title": "jpg" + }, + { + "type": "string", + "enum": [ + "jpeg" + ], + "title": "jpeg" + }, + { + "type": "string", + "enum": [ + "png" + ], + "title": "png" + }, + { + "type": "string", + "enum": [ + "webp" + ], + "title": "webp" + }, + { + "type": "string", + "enum": [ + "heic" + ], + "title": "heic" + }, + { + "type": "string", + "enum": [ + "avif" + ], + "title": "avif" + }, + { + "type": "string", + "enum": [ + "gif" + ], + "title": "gif" + } ], - "x-enum-name": "ImageFormat", - "x-enum-keys": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" - ] + "default": "" }, "in": "query" }, @@ -73570,40 +88706,40 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Defaults to `serverless`, which creates the database on the shared pool. Any other value provisions a dedicated database on that specification.", + "type": "string", "default": "serverless", "example": "serverless" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Requires a dedicated `specification`; must be 0 for a serverless database. High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Requires a dedicated `specification`; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -73794,8 +88930,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -73944,14 +89080,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -74092,8 +89228,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -74242,32 +89378,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Resizing between dedicated specifications changes cpu, memory, storage and the connection ceiling via a rolling cutover with zero downtime. Moving a `serverless` database onto a dedicated specification is a data migration, not a resize.", + "type": "string", "example": "serverless", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification. High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -74395,8 +89531,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -74530,13 +89666,13 @@ "type": "object", "properties": { "specification": { - "type": "string", "description": "Dedicated compute specification to provision as the migration target (e.g. s-2vcpu-4gb). The migration always targets a dedicated compute, so `serverless` is not accepted.", + "type": "string", "example": "s-1vcpu-1gb" }, "autoCutover": { - "type": "boolean", "description": "Whether to cut over automatically once the copy is verified. When disabled the migration parks at ready_to_cutover and holds there until the cutover is performed manually.", + "type": "boolean", "default": true, "example": false } @@ -75134,21 +90270,21 @@ "type": "object", "properties": { "tableId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<TABLE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Table name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -75158,28 +90294,28 @@ "nullable": true }, "rowSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual rows. A user needs one of row or table level permissions to access a row. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is table enabled? When set to 'disabled', users cannot access the table but Server SDKs with and API key can still read and write to the table. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "columns": { - "type": "array", "description": "Array of column definitions to create. Each column should contain: key (string), type (string: string, varchar, text, mediumtext, longtext, integer, bigint, double, boolean, datetime, point, linestring, polygon, email, url, ip, enum), size (integer, required for string and varchar types), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.", + "type": "array", "default": [], "items": { "type": "object" } }, "indexes": { - "type": "array", "description": "Array of index definitions to create. Each index should contain: key (string), type (string: key, fulltext, unique, spatial), attributes (array of column keys), orders (array of ASC\/DESC, optional), and lengths (array of integers, optional).", + "type": "array", "default": [], "items": { "type": "object" @@ -75347,13 +90483,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Table name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -75363,20 +90499,20 @@ "nullable": true }, "rowSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual rows. A user needs one of row or table-level permissions to access a row. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is table enabled? When set to 'disabled', users cannot access the table but Server SDKs with and API key can still read and write to the table. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "purge": { - "type": "boolean", "description": "When true, purge all cached list responses for this table as part of the update. Use this to force readers to see fresh data immediately instead of waiting for the cache TTL to expire.", + "type": "boolean", "default": false, "example": false } @@ -75633,35 +90769,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when column is required.", + "type": "integer", "format": "int64", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -75766,31 +90902,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when column is required.", + "type": "integer", "format": "int64", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -75885,23 +91021,23 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "boolean", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "boolean", "example": false, "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -76006,19 +91142,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "boolean", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "boolean", "example": false, "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -76113,24 +91249,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for the column in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Cannot be set when column is required.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -76235,20 +91371,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -76343,24 +91479,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -76465,20 +91601,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -76573,30 +91709,30 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "elements": { - "type": "array", "description": "Array of enum values.", + "type": "array", "items": { "type": "string" } }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -76702,26 +91838,26 @@ "type": "object", "properties": { "elements": { - "type": "array", "description": "Updated list of enum values.", + "type": "array", "items": { "type": "string" } }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -76817,35 +91953,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "number", "description": "Minimum value", + "type": "number", "format": "float", "nullable": true }, "max": { - "type": "number", "description": "Maximum value", + "type": "number", "format": "float", "nullable": true }, "default": { - "type": "number", "description": "Default value. Cannot be set when required.", + "type": "number", "format": "float", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -76950,31 +92086,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "number", "description": "Minimum value", + "type": "number", "format": "float", "nullable": true }, "max": { - "type": "number", "description": "Maximum value", + "type": "number", "format": "float", "nullable": true }, "default": { - "type": "number", "description": "Default value. Cannot be set when required.", + "type": "number", "format": "float", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -77069,35 +92205,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when column is required.", + "type": "integer", "format": "int64", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -77202,31 +92338,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when column is required.", + "type": "integer", "format": "int64", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -77321,22 +92457,22 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value. Cannot be set when column is required.", + "type": "string", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -77441,18 +92577,18 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value. Cannot be set when column is required.", + "type": "string", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -77547,17 +92683,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ 1, @@ -77682,13 +92818,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ 1, @@ -77713,8 +92849,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -77808,29 +92944,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -77935,19 +93071,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -78042,29 +93178,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -78169,19 +93305,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -78276,17 +93412,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ 1, 2 @@ -78398,13 +93534,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ 1, 2 @@ -78416,8 +93552,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -78511,17 +93647,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ [ @@ -78655,13 +93791,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ [ @@ -78695,8 +93831,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -78790,59 +93926,90 @@ "type": "object", "properties": { "relatedTableId": { - "type": "string", "description": "Related Table ID.", + "type": "string", "example": "<RELATED_TABLE_ID>" }, "type": { - "type": "string", "description": "Relationship type. Possible values are: oneToOne, oneToMany, manyToOne, manyToMany.", + "type": "string", "example": "oneToOne", - "enum": [ - "oneToOne", - "manyToOne", - "manyToMany", - "oneToMany" - ], - "x-enum-name": "RelationshipType", - "x-enum-keys": [ - "oneToOne", - "manyToOne", - "manyToMany", - "oneToMany" + "title": "RelationshipType", + "oneOf": [ + { + "type": "string", + "enum": [ + "oneToOne" + ], + "title": "oneToOne" + }, + { + "type": "string", + "enum": [ + "manyToOne" + ], + "title": "manyToOne" + }, + { + "type": "string", + "enum": [ + "manyToMany" + ], + "title": "manyToMany" + }, + { + "type": "string", + "enum": [ + "oneToMany" + ], + "title": "oneToMany" + } ] }, "twoWay": { - "type": "boolean", "description": "Is Two Way?", + "type": "boolean", "default": false, "example": false }, "key": { - "type": "string", "description": "Column Key.", + "type": "string", "nullable": true }, "twoWayKey": { - "type": "string", "description": "Two Way Column Key.", + "type": "string", "nullable": true }, "onDelete": { - "type": "string", "description": "Delete constraint. Possible values are: cascade, restrict, setNull.", + "type": "string", "default": "restrict", "example": "cascade", - "enum": [ - "cascade", - "restrict", - "setNull" - ], - "x-enum-name": "RelationMutate", - "x-enum-keys": [ - "cascade", - "restrict", - "setNull" + "title": "RelationMutate", + "oneOf": [ + { + "type": "string", + "enum": [ + "cascade" + ], + "title": "cascade" + }, + { + "type": "string", + "enum": [ + "restrict" + ], + "title": "restrict" + }, + { + "type": "string", + "enum": [ + "setNull" + ], + "title": "setNull" + } ] } }, @@ -78941,35 +94108,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "size": { - "type": "integer", "description": "Column size for text columns, in number of characters.", + "type": "integer", "example": 1, "format": "int32" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -79079,26 +94246,26 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "size": { - "type": "integer", "description": "Maximum size of the string column.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -79193,29 +94360,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -79320,19 +94487,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -79427,24 +94594,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -79549,20 +94716,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -79657,35 +94824,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "size": { - "type": "integer", "description": "Column size for varchar columns, in number of characters. Maximum size is 16381.", + "type": "integer", "example": 1, "format": "int32" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -79791,26 +94958,26 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "size": { - "type": "integer", "description": "Maximum size of the varchar column.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -80157,25 +95324,38 @@ "type": "object", "properties": { "onDelete": { - "type": "string", "description": "Delete constraint. Possible values are: cascade, restrict, setNull.", + "type": "string", "example": "cascade", - "enum": [ - "cascade", - "restrict", - "setNull" - ], - "x-enum-name": "RelationMutate", - "x-enum-keys": [ - "cascade", - "restrict", - "setNull" + "title": "RelationMutate", + "oneOf": [ + { + "type": "string", + "enum": [ + "cascade" + ], + "title": "cascade" + }, + { + "type": "string", + "enum": [ + "restrict" + ], + "title": "restrict" + }, + { + "type": "string", + "enum": [ + "setNull" + ], + "title": "setNull" + } ], "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } } @@ -80362,54 +95542,80 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Index Key." + "description": "Index Key.", + "type": "string" }, "type": { - "type": "string", "description": "Index type.", + "type": "string", "example": "key", - "enum": [ - "key", - "fulltext", - "unique", - "spatial" - ], - "x-enum-name": "TablesDBIndexType", - "x-enum-keys": [ - "key", - "fulltext", - "unique", - "spatial" + "title": "TablesDBIndexType", + "oneOf": [ + { + "type": "string", + "enum": [ + "key" + ], + "title": "key" + }, + { + "type": "string", + "enum": [ + "fulltext" + ], + "title": "fulltext" + }, + { + "type": "string", + "enum": [ + "unique" + ], + "title": "unique" + }, + { + "type": "string", + "enum": [ + "spatial" + ], + "title": "spatial" + } ] }, "columns": { - "type": "array", "description": "Array of columns to index. Maximum of 100 columns are allowed, each 32 characters long.", + "type": "array", "items": { "type": "string" } }, "orders": { - "type": "array", "description": "Array of index orders. Maximum of 100 orders are allowed.", + "type": "array", "default": [], "items": { + "title": "OrderBy", "type": "string", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "OrderBy", - "x-enum-keys": [ - "asc", - "desc" + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ] } }, "lengths": { - "type": "array", "description": "Length of index. Maximum of 100", + "type": "array", "default": [], "items": { "type": "integer" @@ -80850,16 +96056,16 @@ "type": "object", "properties": { "rowId": { - "type": "string", "description": "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.", + "type": "string", "example": "<ROW_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Row data as JSON object.", + "type": "object", "default": {}, "example": { "username": "walter.obrien", @@ -80870,8 +96076,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -80881,16 +96087,16 @@ "nullable": true }, "rows": { - "type": "array", "description": "Array of rows data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -81012,15 +96218,15 @@ "type": "object", "properties": { "rows": { - "type": "array", "description": "Array of row data as JSON objects. May contain partial rows.", + "type": "array", "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -81111,8 +96317,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Row data as JSON object. Include only column and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -81123,16 +96329,16 @@ } }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -81470,8 +96676,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Row data as JSON object. Include all required columns of the row to be created or updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -81482,8 +96688,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -81493,8 +96699,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -81595,8 +96801,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Row data as JSON object. Include only columns and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -81607,8 +96813,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -81618,8 +96824,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -81819,20 +97025,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the column by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "min": { - "type": "number", "description": "Minimum value for the column. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -81944,20 +97150,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the column by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "max": { - "type": "number", "description": "Maximum value for the column. If the current value is greater than this value, an error will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -82112,21 +97318,21 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "Team 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.", + "type": "string", "example": "<TEAM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Team name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "roles": { - "type": "array", "description": "Array of strings. Use this param to set the roles in the team for the user who created it. The default role is **owner**. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 32 characters long.", + "type": "array", "default": [ "owner" ], @@ -82276,8 +97482,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "New team name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -82498,13 +97704,13 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application unique ID.", + "type": "string", "example": "<APP_ID>" }, "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. The Appwrite Console stores authorized project IDs here.", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" } @@ -82667,8 +97873,8 @@ "type": "object", "properties": { "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. Omit to keep the current value.", + "type": "string", "example": "<AUTHORIZATION_DETAILS>", "nullable": true } @@ -82995,42 +98201,42 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "Email of the new team member.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "userId": { - "type": "string", "description": "ID of the user to be added to a team.", + "type": "string", "default": "", "example": "<USER_ID>" }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "roles": { - "type": "array", "description": "Array of strings. Use this param to set the user roles in the team. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the invitation email. This parameter is not required when an API key is supplied. 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.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "name": { - "type": "string", "description": "Name of the new team member. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -83195,8 +98401,8 @@ "type": "object", "properties": { "roles": { - "type": "array", "description": "An array of strings. Use this param to set the user's roles in the team. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } @@ -83354,13 +98560,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "secret": { - "type": "string", "description": "Secret key.", + "type": "string", "example": "<SECRET>" } }, @@ -83503,8 +98709,8 @@ "type": "object", "properties": { "prefs": { - "type": "object", "description": "Prefs key-value JSON object.", + "type": "object", "default": {}, "example": {} } @@ -83685,8 +98891,8 @@ "type": "object", "properties": { "expire": { - "type": "string", "description": "Token expiry date", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -83821,8 +99027,8 @@ "type": "object", "properties": { "expire": { - "type": "string", "description": "File token expiry date", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -83943,98 +99149,387 @@ "type": "array", "items": { "type": "string", - "enum": [ - "network.requests", - "network.inbound", - "network.outbound", - "executions", - "executions.compute", - "executions.mbSeconds", - "functions.executions", - "sites.executions", - "functions.executions.compute", - "sites.executions.compute", - "functions.executions.mbSeconds", - "sites.executions.mbSeconds", - "builds", - "builds.success", - "builds.failed", - "builds.compute", - "builds.compute.success", - "builds.compute.failed", - "builds.mbSeconds", - "databases.operations.reads", - "databases.operations.writes", - "documentsdb.databases.operations.reads", - "documentsdb.databases.operations.writes", - "vectorsdb.databases.operations.reads", - "vectorsdb.databases.operations.writes", - "files.imagesTransformed", - "avatars.screenshotsGenerated", - "realtime.messages.sent", - "realtime.inbound", - "realtime.outbound", - "embeddings.text", - "embeddings.text.totalTokens", - "embeddings.text.totalDuration", - "embeddings.text.totalErrors", - "waf.requests.denied", - "waf.requests.challenged", - "waf.requests.rateLimited", - "waf.requests.redirected", - "affiliates.clicks", - "affiliates.signups", - "affiliates.conversions", - "dedicatedDatabases.{databaseInternalId}.inbound", - "dedicatedDatabases.{databaseInternalId}.outbound", - "dedicatedDatabases.{databaseInternalId}.compute" - ], - "x-enum-name": "UsageEventMetric", - "x-enum-keys": [ - "network.requests", - "network.inbound", - "network.outbound", - "executions", - "executions.compute", - "executions.mbSeconds", - "functions.executions", - "sites.executions", - "functions.executions.compute", - "sites.executions.compute", - "functions.executions.mbSeconds", - "sites.executions.mbSeconds", - "builds", - "builds.success", - "builds.failed", - "builds.compute", - "builds.compute.success", - "builds.compute.failed", - "builds.mbSeconds", - "databases.operations.reads", - "databases.operations.writes", - "documentsdb.databases.operations.reads", - "documentsdb.databases.operations.writes", - "vectorsdb.databases.operations.reads", - "vectorsdb.databases.operations.writes", - "files.imagesTransformed", - "avatars.screenshotsGenerated", - "realtime.messages.sent", - "realtime.inbound", - "realtime.outbound", - "embeddings.text", - "embeddings.text.totalTokens", - "embeddings.text.totalDuration", - "embeddings.text.totalErrors", - "waf.requests.denied", - "waf.requests.challenged", - "waf.requests.rateLimited", - "waf.requests.redirected", - "affiliates.clicks", - "affiliates.signups", - "affiliates.conversions", - "dedicatedDatabases.{databaseInternalId}.inbound", - "dedicatedDatabases.{databaseInternalId}.outbound", - "dedicatedDatabases.{databaseInternalId}.compute" + "anyOf": [ + { + "title": "UsageEventMetric", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "network.requests" + ], + "title": "network.requests" + }, + { + "type": "string", + "enum": [ + "network.inbound" + ], + "title": "network.inbound" + }, + { + "type": "string", + "enum": [ + "network.outbound" + ], + "title": "network.outbound" + }, + { + "type": "string", + "enum": [ + "webhooks.events.sent" + ], + "title": "webhooks.events.sent" + }, + { + "type": "string", + "enum": [ + "webhooks.events.failed" + ], + "title": "webhooks.events.failed" + }, + { + "type": "string", + "enum": [ + "auth.method.phone" + ], + "title": "auth.method.phone" + }, + { + "type": "string", + "enum": [ + "messages.sent" + ], + "title": "messages.sent" + }, + { + "type": "string", + "enum": [ + "messages.sms.sent" + ], + "title": "messages.sms.sent" + }, + { + "type": "string", + "enum": [ + "executions" + ], + "title": "executions" + }, + { + "type": "string", + "enum": [ + "executions.compute" + ], + "title": "executions.compute" + }, + { + "type": "string", + "enum": [ + "executions.mbSeconds" + ], + "title": "executions.mbSeconds" + }, + { + "type": "string", + "enum": [ + "functions.executions" + ], + "title": "functions.executions" + }, + { + "type": "string", + "enum": [ + "sites.executions" + ], + "title": "sites.executions" + }, + { + "type": "string", + "enum": [ + "functions.executions.compute" + ], + "title": "functions.executions.compute" + }, + { + "type": "string", + "enum": [ + "sites.executions.compute" + ], + "title": "sites.executions.compute" + }, + { + "type": "string", + "enum": [ + "functions.executions.mbSeconds" + ], + "title": "functions.executions.mbSeconds" + }, + { + "type": "string", + "enum": [ + "sites.executions.mbSeconds" + ], + "title": "sites.executions.mbSeconds" + }, + { + "type": "string", + "enum": [ + "builds" + ], + "title": "builds" + }, + { + "type": "string", + "enum": [ + "builds.success" + ], + "title": "builds.success" + }, + { + "type": "string", + "enum": [ + "builds.failed" + ], + "title": "builds.failed" + }, + { + "type": "string", + "enum": [ + "builds.compute" + ], + "title": "builds.compute" + }, + { + "type": "string", + "enum": [ + "builds.compute.success" + ], + "title": "builds.compute.success" + }, + { + "type": "string", + "enum": [ + "builds.compute.failed" + ], + "title": "builds.compute.failed" + }, + { + "type": "string", + "enum": [ + "builds.mbSeconds" + ], + "title": "builds.mbSeconds" + }, + { + "type": "string", + "enum": [ + "functions.builds.mbSeconds" + ], + "title": "functions.builds.mbSeconds" + }, + { + "type": "string", + "enum": [ + "sites.builds.mbSeconds" + ], + "title": "sites.builds.mbSeconds" + }, + { + "type": "string", + "enum": [ + "databases.operations.reads" + ], + "title": "databases.operations.reads" + }, + { + "type": "string", + "enum": [ + "databases.operations.writes" + ], + "title": "databases.operations.writes" + }, + { + "type": "string", + "enum": [ + "documentsdb.databases.operations.reads" + ], + "title": "documentsdb.databases.operations.reads" + }, + { + "type": "string", + "enum": [ + "documentsdb.databases.operations.writes" + ], + "title": "documentsdb.databases.operations.writes" + }, + { + "type": "string", + "enum": [ + "vectorsdb.databases.operations.reads" + ], + "title": "vectorsdb.databases.operations.reads" + }, + { + "type": "string", + "enum": [ + "vectorsdb.databases.operations.writes" + ], + "title": "vectorsdb.databases.operations.writes" + }, + { + "type": "string", + "enum": [ + "files.imagesTransformed" + ], + "title": "files.imagesTransformed" + }, + { + "type": "string", + "enum": [ + "avatars.screenshotsGenerated" + ], + "title": "avatars.screenshotsGenerated" + }, + { + "type": "string", + "enum": [ + "realtime.messages.sent" + ], + "title": "realtime.messages.sent" + }, + { + "type": "string", + "enum": [ + "realtime.inbound" + ], + "title": "realtime.inbound" + }, + { + "type": "string", + "enum": [ + "realtime.outbound" + ], + "title": "realtime.outbound" + }, + { + "type": "string", + "enum": [ + "embeddings.text" + ], + "title": "embeddings.text" + }, + { + "type": "string", + "enum": [ + "embeddings.text.totalTokens" + ], + "title": "embeddings.text.totalTokens" + }, + { + "type": "string", + "enum": [ + "embeddings.text.totalDuration" + ], + "title": "embeddings.text.totalDuration" + }, + { + "type": "string", + "enum": [ + "embeddings.text.totalErrors" + ], + "title": "embeddings.text.totalErrors" + }, + { + "type": "string", + "enum": [ + "waf.requests.denied" + ], + "title": "waf.requests.denied" + }, + { + "type": "string", + "enum": [ + "waf.requests.challenged" + ], + "title": "waf.requests.challenged" + }, + { + "type": "string", + "enum": [ + "waf.requests.rateLimited" + ], + "title": "waf.requests.rateLimited" + }, + { + "type": "string", + "enum": [ + "waf.requests.redirected" + ], + "title": "waf.requests.redirected" + }, + { + "type": "string", + "enum": [ + "waf.requests.challengeSolved" + ], + "title": "waf.requests.challengeSolved" + }, + { + "type": "string", + "enum": [ + "waf.challenge.solveTimeMs" + ], + "title": "waf.challenge.solveTimeMs" + }, + { + "type": "string", + "enum": [ + "affiliates.clicks" + ], + "title": "affiliates.clicks" + }, + { + "type": "string", + "enum": [ + "affiliates.signups" + ], + "title": "affiliates.signups" + }, + { + "type": "string", + "enum": [ + "affiliates.conversions" + ], + "title": "affiliates.conversions" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.{databaseInternalId}.inbound" + ], + "title": "dedicatedDatabases.{databaseInternalId}.inbound" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.{databaseInternalId}.outbound" + ], + "title": "dedicatedDatabases.{databaseInternalId}.outbound" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.{databaseInternalId}.compute" + ], + "title": "dedicatedDatabases.{databaseInternalId}.compute" + } + ] + }, + { + "type": "string" + } ] } }, @@ -84060,20 +99555,43 @@ "schema": { "type": "string", "example": "1m", - "enum": [ - "1m", - "15m", - "30m", - "1h", - "1d" - ], - "x-enum-name": "UsageInterval", - "x-enum-keys": [ - "One Minute", - "Fifteen Minutes", - "Thirty Minutes", - "One Hour", - "One Day" + "title": "UsageInterval", + "oneOf": [ + { + "type": "string", + "enum": [ + "1m" + ], + "title": "One Minute" + }, + { + "type": "string", + "enum": [ + "15m" + ], + "title": "Fifteen Minutes" + }, + { + "type": "string", + "enum": [ + "30m" + ], + "title": "Thirty Minutes" + }, + { + "type": "string", + "enum": [ + "1h" + ], + "title": "One Hour" + }, + { + "type": "string", + "enum": [ + "1d" + ], + "title": "One Day" + } ] }, "in": "query" @@ -84085,49 +99603,142 @@ "schema": { "type": "array", "items": { + "title": "UsageEventDimension", "type": "string", - "enum": [ - "path", - "method", - "status", - "service", - "resourceType", - "country", - "continentCode", - "city", - "region", - "hostname", - "ip", - "osName", - "clientType", - "clientName", - "deviceName", - "sdk", - "sdkVersion", - "teamId", - "resourceId" - ], - "x-enum-name": "UsageEventDimension", - "x-enum-keys": [ - "path", - "method", - "status", - "service", - "resourceType", - "country", - "continentCode", - "city", - "region", - "hostname", - "ip", - "osName", - "clientType", - "clientName", - "deviceName", - "sdk", - "sdkVersion", - "teamId", - "resourceId" + "oneOf": [ + { + "type": "string", + "enum": [ + "path" + ], + "title": "path" + }, + { + "type": "string", + "enum": [ + "method" + ], + "title": "method" + }, + { + "type": "string", + "enum": [ + "status" + ], + "title": "status" + }, + { + "type": "string", + "enum": [ + "service" + ], + "title": "service" + }, + { + "type": "string", + "enum": [ + "resourceType" + ], + "title": "resourceType" + }, + { + "type": "string", + "enum": [ + "country" + ], + "title": "country" + }, + { + "type": "string", + "enum": [ + "continentCode" + ], + "title": "continentCode" + }, + { + "type": "string", + "enum": [ + "city" + ], + "title": "city" + }, + { + "type": "string", + "enum": [ + "region" + ], + "title": "region" + }, + { + "type": "string", + "enum": [ + "hostname" + ], + "title": "hostname" + }, + { + "type": "string", + "enum": [ + "ip" + ], + "title": "ip" + }, + { + "type": "string", + "enum": [ + "osName" + ], + "title": "osName" + }, + { + "type": "string", + "enum": [ + "clientType" + ], + "title": "clientType" + }, + { + "type": "string", + "enum": [ + "clientName" + ], + "title": "clientName" + }, + { + "type": "string", + "enum": [ + "deviceName" + ], + "title": "deviceName" + }, + { + "type": "string", + "enum": [ + "sdk" + ], + "title": "sdk" + }, + { + "type": "string", + "enum": [ + "sdkVersion" + ], + "title": "sdkVersion" + }, + { + "type": "string", + "enum": [ + "teamId" + ], + "title": "teamId" + }, + { + "type": "string", + "enum": [ + "resourceId" + ], + "title": "resourceId" + } ] }, "default": [] @@ -84165,14 +99776,22 @@ "schema": { "type": "string", "example": "time", - "enum": [ - "time", - "value" - ], - "x-enum-name": "UsageOrderBy", - "x-enum-keys": [ - "time", - "value" + "title": "UsageOrderBy", + "oneOf": [ + { + "type": "string", + "enum": [ + "time" + ], + "title": "time" + }, + { + "type": "string", + "enum": [ + "value" + ], + "title": "value" + } ], "default": "time" }, @@ -84185,14 +99804,22 @@ "schema": { "type": "string", "example": "asc", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "UsageOrderDirection", - "x-enum-keys": [ - "asc", - "desc" + "title": "UsageOrderDirection", + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ], "default": "desc" }, @@ -84280,106 +99907,352 @@ "type": "array", "items": { "type": "string", - "enum": [ - "teams", - "users", - "messages", - "sessions", - "databases", - "collections", - "documents", - "databases.storage", - "documentsdb.databases", - "documentsdb.collections", - "documentsdb.documents", - "documentsdb.databases.storage", - "vectorsdb.databases", - "vectorsdb.collections", - "vectorsdb.documents", - "vectorsdb.databases.storage", - "buckets", - "files", - "files.storage", - "sites", - "functions", - "deployments", - "deployments.storage", - "builds", - "builds.storage", - "users.mau", - "users.dau", - "users.wau", - "webhooks", - "platforms", - "providers", - "topics", - "targets", - "keys", - "domains", - "realtime.connections", - "backups.policies", - "backups.storage", - "dedicatedDatabases.storage", - "dedicatedDatabases.connections", - "dedicatedDatabases.cpu", - "dedicatedDatabases.memory", - "dedicatedDatabases.qps", - "dedicatedDatabases.iopsRead", - "dedicatedDatabases.iopsWrite", - "apps", - "apps.users", - "apps.installations" - ], - "x-enum-name": "UsageGaugeMetric", - "x-enum-keys": [ - "teams", - "users", - "messages", - "sessions", - "databases", - "collections", - "documents", - "databases.storage", - "documentsdb.databases", - "documentsdb.collections", - "documentsdb.documents", - "documentsdb.databases.storage", - "vectorsdb.databases", - "vectorsdb.collections", - "vectorsdb.documents", - "vectorsdb.databases.storage", - "buckets", - "files", - "files.storage", - "sites", - "functions", - "deployments", - "deployments.storage", - "builds", - "builds.storage", - "users.mau", - "users.dau", - "users.wau", - "webhooks", - "platforms", - "providers", - "topics", - "targets", - "keys", - "domains", - "realtime.connections", - "backups.policies", - "backups.storage", - "dedicatedDatabases.storage", - "dedicatedDatabases.connections", - "dedicatedDatabases.cpu", - "dedicatedDatabases.memory", - "dedicatedDatabases.qps", - "dedicatedDatabases.iopsRead", - "dedicatedDatabases.iopsWrite", - "apps", - "apps.users", - "apps.installations" + "anyOf": [ + { + "title": "UsageGaugeMetric", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "teams" + ], + "title": "teams" + }, + { + "type": "string", + "enum": [ + "users" + ], + "title": "users" + }, + { + "type": "string", + "enum": [ + "messages" + ], + "title": "messages" + }, + { + "type": "string", + "enum": [ + "sessions" + ], + "title": "sessions" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "collections" + ], + "title": "collections" + }, + { + "type": "string", + "enum": [ + "documents" + ], + "title": "documents" + }, + { + "type": "string", + "enum": [ + "databases.storage" + ], + "title": "databases.storage" + }, + { + "type": "string", + "enum": [ + "documentsdb.databases" + ], + "title": "documentsdb.databases" + }, + { + "type": "string", + "enum": [ + "documentsdb.collections" + ], + "title": "documentsdb.collections" + }, + { + "type": "string", + "enum": [ + "documentsdb.documents" + ], + "title": "documentsdb.documents" + }, + { + "type": "string", + "enum": [ + "documentsdb.databases.storage" + ], + "title": "documentsdb.databases.storage" + }, + { + "type": "string", + "enum": [ + "vectorsdb.databases" + ], + "title": "vectorsdb.databases" + }, + { + "type": "string", + "enum": [ + "vectorsdb.collections" + ], + "title": "vectorsdb.collections" + }, + { + "type": "string", + "enum": [ + "vectorsdb.documents" + ], + "title": "vectorsdb.documents" + }, + { + "type": "string", + "enum": [ + "vectorsdb.databases.storage" + ], + "title": "vectorsdb.databases.storage" + }, + { + "type": "string", + "enum": [ + "buckets" + ], + "title": "buckets" + }, + { + "type": "string", + "enum": [ + "files" + ], + "title": "files" + }, + { + "type": "string", + "enum": [ + "files.storage" + ], + "title": "files.storage" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "deployments" + ], + "title": "deployments" + }, + { + "type": "string", + "enum": [ + "deployments.storage" + ], + "title": "deployments.storage" + }, + { + "type": "string", + "enum": [ + "builds" + ], + "title": "builds" + }, + { + "type": "string", + "enum": [ + "builds.storage" + ], + "title": "builds.storage" + }, + { + "type": "string", + "enum": [ + "users.mau" + ], + "title": "users.mau" + }, + { + "type": "string", + "enum": [ + "users.dau" + ], + "title": "users.dau" + }, + { + "type": "string", + "enum": [ + "users.wau" + ], + "title": "users.wau" + }, + { + "type": "string", + "enum": [ + "webhooks" + ], + "title": "webhooks" + }, + { + "type": "string", + "enum": [ + "platforms" + ], + "title": "platforms" + }, + { + "type": "string", + "enum": [ + "providers" + ], + "title": "providers" + }, + { + "type": "string", + "enum": [ + "topics" + ], + "title": "topics" + }, + { + "type": "string", + "enum": [ + "targets" + ], + "title": "targets" + }, + { + "type": "string", + "enum": [ + "keys" + ], + "title": "keys" + }, + { + "type": "string", + "enum": [ + "domains" + ], + "title": "domains" + }, + { + "type": "string", + "enum": [ + "realtime.connections" + ], + "title": "realtime.connections" + }, + { + "type": "string", + "enum": [ + "backups.policies" + ], + "title": "backups.policies" + }, + { + "type": "string", + "enum": [ + "backups.storage" + ], + "title": "backups.storage" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.storage" + ], + "title": "dedicatedDatabases.storage" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.connections" + ], + "title": "dedicatedDatabases.connections" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.cpu" + ], + "title": "dedicatedDatabases.cpu" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.memory" + ], + "title": "dedicatedDatabases.memory" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.qps" + ], + "title": "dedicatedDatabases.qps" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.iopsRead" + ], + "title": "dedicatedDatabases.iopsRead" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases.iopsWrite" + ], + "title": "dedicatedDatabases.iopsWrite" + }, + { + "type": "string", + "enum": [ + "apps" + ], + "title": "apps" + }, + { + "type": "string", + "enum": [ + "apps.users" + ], + "title": "apps.users" + }, + { + "type": "string", + "enum": [ + "apps.installations" + ], + "title": "apps.installations" + } + ] + }, + { + "type": "string" + } ] } }, @@ -84405,20 +100278,43 @@ "schema": { "type": "string", "example": "1m", - "enum": [ - "1m", - "15m", - "30m", - "1h", - "1d" - ], - "x-enum-name": "UsageInterval", - "x-enum-keys": [ - "One Minute", - "Fifteen Minutes", - "Thirty Minutes", - "One Hour", - "One Day" + "title": "UsageInterval", + "oneOf": [ + { + "type": "string", + "enum": [ + "1m" + ], + "title": "One Minute" + }, + { + "type": "string", + "enum": [ + "15m" + ], + "title": "Fifteen Minutes" + }, + { + "type": "string", + "enum": [ + "30m" + ], + "title": "Thirty Minutes" + }, + { + "type": "string", + "enum": [ + "1h" + ], + "title": "One Hour" + }, + { + "type": "string", + "enum": [ + "1d" + ], + "title": "One Day" + } ] }, "in": "query" @@ -84430,21 +100326,44 @@ "schema": { "type": "array", "items": { + "title": "UsageGaugeDimension", "type": "string", - "enum": [ - "resourceId", - "teamId", - "service", - "resourceType", - "ordinal" - ], - "x-enum-name": "UsageGaugeDimension", - "x-enum-keys": [ - "resourceId", - "teamId", - "service", - "resourceType", - "ordinal" + "oneOf": [ + { + "type": "string", + "enum": [ + "resourceId" + ], + "title": "resourceId" + }, + { + "type": "string", + "enum": [ + "teamId" + ], + "title": "teamId" + }, + { + "type": "string", + "enum": [ + "service" + ], + "title": "service" + }, + { + "type": "string", + "enum": [ + "resourceType" + ], + "title": "resourceType" + }, + { + "type": "string", + "enum": [ + "ordinal" + ], + "title": "ordinal" + } ] }, "default": [] @@ -84482,14 +100401,22 @@ "schema": { "type": "string", "example": "time", - "enum": [ - "time", - "value" - ], - "x-enum-name": "UsageOrderBy", - "x-enum-keys": [ - "time", - "value" + "title": "UsageOrderBy", + "oneOf": [ + { + "type": "string", + "enum": [ + "time" + ], + "title": "time" + }, + { + "type": "string", + "enum": [ + "value" + ], + "title": "value" + } ], "default": "time" }, @@ -84502,14 +100429,22 @@ "schema": { "type": "string", "example": "asc", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "UsageOrderDirection", - "x-enum-keys": [ - "asc", - "desc" + "title": "UsageOrderDirection", + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ], "default": "desc" }, @@ -84691,37 +100626,37 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "example": "+12065550100", "format": "phone", "nullable": true }, "password": { - "type": "string", "description": "Plain text user password. Must be at least 8 chars.", + "type": "string", "default": "", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -84789,28 +100724,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using Argon2.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -84880,28 +100815,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using Bcrypt.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -85111,28 +101046,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using MD5.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -85202,28 +101137,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID. Choose a custom ID or pass the string `ID.unique()`to auto generate it. 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using PHPass.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -85293,53 +101228,53 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using Scrypt.", + "type": "string", "example": "password", "format": "password" }, "passwordSalt": { - "type": "string", "description": "Optional salt used to hash password.", + "type": "string", "example": "<PASSWORD_SALT>" }, "passwordCpu": { - "type": "integer", "description": "Optional CPU cost used to hash password.", + "type": "integer", "format": "int32" }, "passwordMemory": { - "type": "integer", "description": "Optional memory cost used to hash password.", + "type": "integer", "format": "int32" }, "passwordParallel": { - "type": "integer", "description": "Optional parallelization cost used to hash password.", + "type": "integer", "format": "int32" }, "passwordLength": { - "type": "integer", "description": "Optional hash length used to hash password.", + "type": "integer", "format": "int32" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -85414,43 +101349,43 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using Scrypt Modified.", + "type": "string", "example": "password", "format": "password" }, "passwordSalt": { - "type": "string", "description": "Salt used to hash password.", + "type": "string", "example": "<PASSWORD_SALT>" }, "passwordSaltSeparator": { - "type": "string", "description": "Salt separator used to hash password.", + "type": "string", "example": "<PASSWORD_SALT_SEPARATOR>" }, "passwordSignerKey": { - "type": "string", "description": "Signer key used to hash password.", + "type": "string", "example": "<PASSWORD_SIGNER_KEY>" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -85523,60 +101458,114 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using SHA.", + "type": "string", "example": "password", "format": "password" }, "passwordVersion": { - "type": "string", "description": "Optional SHA version used to hash password. Allowed values are: 'sha1', 'sha224', 'sha256', 'sha384', 'sha512\/224', 'sha512\/256', 'sha512', 'sha3-224', 'sha3-256', 'sha3-384', 'sha3-512'", + "type": "string", + "default": "", "example": "sha1", - "enum": [ - "sha1", - "sha224", - "sha256", - "sha384", - "sha512\/224", - "sha512\/256", - "sha512", - "sha3-224", - "sha3-256", - "sha3-384", - "sha3-512" - ], - "x-enum-name": "PasswordHash", - "x-enum-keys": [ - "sha1", - "sha224", - "sha256", - "sha384", - "sha512\/224", - "sha512\/256", - "sha512", - "sha3-224", - "sha3-256", - "sha3-384", - "sha3-512" + "title": "PasswordHash", + "oneOf": [ + { + "type": "string", + "enum": [ + "sha1" + ], + "title": "sha1" + }, + { + "type": "string", + "enum": [ + "sha224" + ], + "title": "sha224" + }, + { + "type": "string", + "enum": [ + "sha256" + ], + "title": "sha256" + }, + { + "type": "string", + "enum": [ + "sha384" + ], + "title": "sha384" + }, + { + "type": "string", + "enum": [ + "sha512\/224" + ], + "title": "sha512\/224" + }, + { + "type": "string", + "enum": [ + "sha512\/256" + ], + "title": "sha512\/256" + }, + { + "type": "string", + "enum": [ + "sha512" + ], + "title": "sha512" + }, + { + "type": "string", + "enum": [ + "sha3-224" + ], + "title": "sha3-224" + }, + { + "type": "string", + "enum": [ + "sha3-256" + ], + "title": "sha3-256" + }, + { + "type": "string", + "enum": [ + "sha3-384" + ], + "title": "sha3-384" + }, + { + "type": "string", + "enum": [ + "sha3-512" + ], + "title": "sha3-512" + } ] }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -85645,16 +101634,29 @@ "schema": { "type": "string", "example": "24h", - "enum": [ - "24h", - "30d", - "90d" - ], - "x-enum-name": "UsageRange", - "x-enum-keys": [ - "24h", - "30d", - "90d" + "title": "UsageRange", + "oneOf": [ + { + "type": "string", + "enum": [ + "24h" + ], + "title": "24h" + }, + { + "type": "string", + "enum": [ + "30d" + ], + "title": "30d" + }, + { + "type": "string", + "enum": [ + "90d" + ], + "title": "90d" + } ], "default": "30d" }, @@ -85842,8 +101844,8 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" } @@ -85923,8 +101925,8 @@ "type": "object", "properties": { "impersonator": { - "type": "boolean", "description": "Whether the user can impersonate other users. When true, the user can browse project users to choose a target and can pass impersonation headers to act as that user. Internal audit logs still attribute impersonated actions to the original impersonator and store the target user details only in internal audit payload data.", + "type": "boolean", "example": false } }, @@ -86003,14 +102005,14 @@ "type": "object", "properties": { "sessionId": { - "type": "string", "description": "Session ID. Use the string 'recent' to use the most recent session. Defaults to the most recent session.", + "type": "string", "default": "recent", "example": "<SESSION_ID>" }, "duration": { - "type": "integer", "description": "Time in seconds before JWT expires. Default duration is 900 seconds, and maximum is 3600 seconds.", + "type": "integer", "default": 900, "example": 0, "format": "int32" @@ -86088,8 +102090,8 @@ "type": "object", "properties": { "labels": { - "type": "array", "description": "Array of user labels. Replaces the previous labels. Maximum of 1000 labels are allowed, each up to 36 alphanumeric characters long.", + "type": "array", "items": { "type": "string" } @@ -86411,8 +102413,8 @@ "type": "object", "properties": { "mfa": { - "type": "boolean", "description": "Enable or disable MFA.", + "type": "boolean", "example": false } }, @@ -86541,12 +102543,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -87181,8 +103186,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -87261,8 +103266,8 @@ "type": "object", "properties": { "password": { - "type": "string", "description": "New user password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -87342,8 +103347,8 @@ "type": "object", "properties": { "number": { - "type": "string", "description": "User phone number.", + "type": "string", "example": "+12065550100", "format": "phone" } @@ -87482,8 +103487,8 @@ "type": "object", "properties": { "prefs": { - "type": "object", "description": "Prefs key-value JSON object.", + "type": "object", "default": {}, "example": {} } @@ -87825,8 +103830,8 @@ "type": "object", "properties": { "status": { - "type": "boolean", "description": "User Status. To activate the user pass `true` and to block the user pass `false`.", + "type": "boolean", "example": false } }, @@ -87988,43 +103993,56 @@ "type": "object", "properties": { "targetId": { - "type": "string", "description": "Target 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.", + "type": "string", "example": "<TARGET_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "providerType": { - "type": "string", "description": "The target provider type. Can be one of the following: `email`, `sms` or `push`.", + "type": "string", "example": "email", - "enum": [ - "email", - "sms", - "push" - ], - "x-enum-name": "MessagingProviderType", - "x-enum-keys": [ - "email", - "sms", - "push" + "title": "MessagingProviderType", + "oneOf": [ + { + "type": "string", + "enum": [ + "email" + ], + "title": "email" + }, + { + "type": "string", + "enum": [ + "sms" + ], + "title": "sms" + }, + { + "type": "string", + "enum": [ + "push" + ], + "title": "push" + } ] }, "identifier": { - "type": "string", "description": "The target identifier (token, email, phone etc.)", + "type": "string", "example": "<IDENTIFIER>" }, "providerId": { - "type": "string", "description": "Provider ID. Message will be sent to this target from the specified provider ID. If no provider ID is set the first setup provider will be used.", + "type": "string", "default": "", "example": "<PROVIDER_ID>" }, "name": { - "type": "string", "description": "Target name. Max length: 128 chars. For example: My Awesome App Galaxy S23.", + "type": "string", "default": "", "example": "<NAME>" } @@ -88185,20 +104203,20 @@ "type": "object", "properties": { "identifier": { - "type": "string", "description": "The target identifier (token, email, phone etc.)", + "type": "string", "default": "", "example": "<IDENTIFIER>" }, "providerId": { - "type": "string", "description": "Provider ID. Message will be sent to this target from the specified provider ID. If no provider ID is set the first setup provider will be used.", + "type": "string", "default": "", "example": "<PROVIDER_ID>" }, "name": { - "type": "string", "description": "Target name. Max length: 128 chars. For example: My Awesome App Galaxy S23.", + "type": "string", "default": "", "example": "<NAME>" } @@ -88337,15 +104355,15 @@ "type": "object", "properties": { "length": { - "type": "integer", "description": "Token length in characters. The default length is 6 characters", + "type": "integer", "default": 6, "example": 4, "format": "int32" }, "expire": { - "type": "integer", "description": "Token expiration period in seconds. The default expiration is 15 minutes.", + "type": "integer", "default": 900, "example": 60, "format": "int32" @@ -88423,8 +104441,8 @@ "type": "object", "properties": { "emailVerification": { - "type": "boolean", "description": "User email verification status.", + "type": "boolean", "example": false } }, @@ -88503,8 +104521,8 @@ "type": "object", "properties": { "phoneVerification": { - "type": "boolean", "description": "User phone verification status.", + "type": "boolean", "example": false } }, @@ -88595,27 +104613,35 @@ "type": "object", "properties": { "providerRepositoryId": { - "type": "string", "description": "Repository Id", + "type": "string", "example": "<PROVIDER_REPOSITORY_ID>" }, "type": { - "type": "string", "description": "Detector type. Must be one of the following: runtime, framework", + "type": "string", "example": "runtime", - "enum": [ - "runtime", - "framework" - ], - "x-enum-name": "VCSDetectionType", - "x-enum-keys": [ - "runtime", - "framework" + "title": "VCSDetectionType", + "oneOf": [ + { + "type": "string", + "enum": [ + "runtime" + ], + "title": "runtime" + }, + { + "type": "string", + "enum": [ + "framework" + ], + "title": "framework" + } ] }, "providerRootDirectory": { - "type": "string", "description": "Path to Root Directory", + "type": "string", "default": "", "example": "<PROVIDER_ROOT_DIRECTORY>" } @@ -88707,14 +104733,22 @@ "schema": { "type": "string", "example": "runtime", - "enum": [ - "runtime", - "framework" - ], - "x-enum-name": "VCSDetectionType", - "x-enum-keys": [ - "runtime", - "framework" + "title": "VCSDetectionType", + "oneOf": [ + { + "type": "string", + "enum": [ + "runtime" + ], + "title": "runtime" + }, + { + "type": "string", + "enum": [ + "framework" + ], + "title": "framework" + } ] }, "in": "query" @@ -88808,18 +104842,18 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Repository name (slug)", + "type": "string", "example": "<NAME>" }, "private": { - "type": "boolean", "description": "Mark repository public or private", + "type": "boolean", "example": false }, "providerNamespace": { - "type": "string", "description": "Namespace of the git repository. Defaults to the installation's own namespace.", + "type": "string", "default": "", "example": "<PROVIDER_NAMESPACE>" } @@ -89157,8 +105191,8 @@ "type": "object", "properties": { "providerPullRequestId": { - "type": "string", "description": "GitHub Pull Request Id", + "type": "string", "example": "<PROVIDER_PULL_REQUEST_ID>" } }, @@ -89573,40 +105607,40 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Defaults to `serverless`, which creates the database on the shared pool. Any other value provisions a dedicated database on that specification.", + "type": "string", "default": "serverless", "example": "serverless" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Requires a dedicated `specification`; must be 0 for a serverless database. High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Requires a dedicated `specification`; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -89791,8 +105825,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -89935,14 +105969,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -90077,8 +106111,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -90227,32 +106261,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Resizing between dedicated specifications changes cpu, memory, storage and the connection ceiling via a rolling cutover with zero downtime. Moving a `serverless` database onto a dedicated specification is a data migration, not a resize.", + "type": "string", "example": "serverless", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification. High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -90478,27 +106512,27 @@ "type": "object", "properties": { "collectionId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<COLLECTION_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "dimension": { - "type": "integer", "description": "Embedding dimension.", + "type": "integer", "example": 1, "format": "int32" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -90507,14 +106541,14 @@ } }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false } @@ -90675,19 +106709,19 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "dimension": { - "type": "integer", "description": "Embedding dimensions.", + "type": "integer", "example": 1, "format": "int32" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -90696,14 +106730,14 @@ } }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false } @@ -90852,7 +106886,7 @@ }, { "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 524288 characters long.", "required": false, "schema": { "type": "array", @@ -91035,16 +107069,16 @@ "type": "object", "properties": { "documentId": { - "type": "string", "description": "Document 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.", + "type": "string", "example": "<DOCUMENT_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Document data as JSON object.", + "type": "object", "default": {}, "example": { "embeddings": [ @@ -91059,8 +107093,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -91069,16 +107103,16 @@ } }, "documents": { - "type": "array", "description": "Array of documents data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } }, @@ -91196,15 +107230,15 @@ "type": "object", "properties": { "documents": { - "type": "array", "description": "Array of document data as JSON objects. May contain partial documents.", + "type": "array", "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } }, @@ -91291,22 +107325,22 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", "default": [], "example": {} }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } } @@ -91487,27 +107521,27 @@ "type": "object", "properties": { "queries": { + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 524288 characters long.", "type": "array", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID to read uncommitted changes within the transaction.", + "type": "string", "example": "<TRANSACTION_ID>" }, "total": { - "type": "boolean", "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "type": "boolean", "default": true, "example": false }, "ttl": { - "type": "integer", "description": "TTL (seconds) for cached responses when caching is enabled for select queries. Must be between 0 and 86400 (24 hours).", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -91748,14 +107782,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include all required fields of the document to be created or updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -91764,8 +107798,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } } @@ -91862,14 +107896,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only fields and value pairs to be updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -91878,8 +107912,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } } @@ -92143,58 +108177,94 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Index Key." + "description": "Index Key.", + "type": "string" }, "type": { - "type": "string", "description": "Index type.", + "type": "string", "example": "hnsw_euclidean", - "enum": [ - "hnsw_euclidean", - "hnsw_dot", - "hnsw_cosine", - "object", - "key", - "unique" - ], - "x-enum-name": "VectorsDBIndexType", - "x-enum-keys": [ - "hnsw_euclidean", - "hnsw_dot", - "hnsw_cosine", - "object", - "key", - "unique" + "title": "VectorsDBIndexType", + "oneOf": [ + { + "type": "string", + "enum": [ + "hnsw_euclidean" + ], + "title": "hnsw_euclidean" + }, + { + "type": "string", + "enum": [ + "hnsw_dot" + ], + "title": "hnsw_dot" + }, + { + "type": "string", + "enum": [ + "hnsw_cosine" + ], + "title": "hnsw_cosine" + }, + { + "type": "string", + "enum": [ + "object" + ], + "title": "object" + }, + { + "type": "string", + "enum": [ + "key" + ], + "title": "key" + }, + { + "type": "string", + "enum": [ + "unique" + ], + "title": "unique" + } ] }, "attributes": { - "type": "array", "description": "Array of attributes to index. Maximum of 100 attributes are allowed, each 32 characters long.", + "type": "array", "items": { "type": "string" } }, "orders": { - "type": "array", "description": "Array of index orders. Maximum of 100 orders are allowed.", + "type": "array", "default": [], "items": { + "title": "OrderBy", "type": "string", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "OrderBy", - "x-enum-keys": [ - "asc", - "desc" + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ] } }, "lengths": { - "type": "array", "description": "Length of index. Maximum of 100", + "type": "array", "default": [], "items": { "type": "integer" @@ -92428,8 +108498,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -92794,51 +108864,51 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Leave empty for the API resource type.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] } }, @@ -92919,45 +108989,45 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true } } @@ -93021,69 +109091,69 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "challengeType": { - "type": "string", "description": "Challenge type enforced by the rule.", + "type": "string", "default": "compute", "example": "compute" }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] }, "difficulty": { - "type": "integer", "description": "Challenge difficulty from 1 (easiest) to 5 (hardest). Higher values demand more client-side proof-of-work.", + "type": "integer", "default": 3, "example": 1, "format": "int32" }, "ttl": { - "type": "integer", "description": "How long, in seconds, a visitor stays cleared after passing the challenge before being challenged again.", + "type": "integer", "default": 1800, "example": 900, "format": "int32" @@ -93166,63 +109236,63 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "challengeType": { - "type": "string", "description": "Challenge type enforced by the rule.", + "type": "string", "example": "compute", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true }, "difficulty": { - "type": "integer", "description": "Challenge difficulty from 1 (easiest) to 5 (hardest). Higher values demand more client-side proof-of-work.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "ttl": { - "type": "integer", "description": "How long, in seconds, a visitor stays cleared after passing the challenge before being challenged again.", + "type": "integer", "example": 900, "format": "int32", "nullable": true @@ -93288,51 +109358,51 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] } }, @@ -93413,45 +109483,45 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true } } @@ -93515,82 +109585,82 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "limit": { - "type": "integer", "description": "Maximum number of matching requests allowed in the configured interval.", + "type": "integer", "example": 1, "format": "int32" }, "interval": { - "type": "integer", "description": "Interval in seconds used for rate limiting.", + "type": "integer", "example": 1, "format": "int32" }, "key": { - "type": "string", "description": "Rate limit key. Use `ip` to limit per client IP or `userId` to limit per authenticated user. Requests without an authenticated user skip `userId` rules.", + "type": "string", "default": "ip", "example": "ip" }, "strategy": { - "type": "string", "description": "Rate limit strategy. `fixedWindow` counts requests in discrete intervals, `slidingWindow` weights the previous interval for smoother limiting, and `tokenBucket` refills allowance continuously to permit short bursts.", + "type": "string", "default": "fixedWindow", "example": "fixedWindow" }, "maxBucketSize": { - "type": "integer", "description": "Maximum number of tokens the bucket can hold for the `tokenBucket` strategy, controlling how large a burst is allowed. The sustained refill rate is `limit \/ interval`. Defaults to `limit` when omitted. Ignored by other strategies.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] } }, @@ -93673,72 +109743,72 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "limit": { - "type": "integer", "description": "Maximum number of matching requests allowed in the configured interval.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "interval": { - "type": "integer", "description": "Interval in seconds used for rate limiting.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "key": { - "type": "string", "description": "Rate limit key. Use `ip` to limit per client IP or `userId` to limit per authenticated user. Requests without an authenticated user skip `userId` rules.", + "type": "string", "example": "ip", "nullable": true }, "maxBucketSize": { - "type": "integer", "description": "Maximum number of tokens the bucket can hold for the `tokenBucket` strategy, controlling how large a burst is allowed. The sustained refill rate is `limit \/ interval`. Ignored by other strategies. The strategy itself cannot be changed after creation.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true } } @@ -93802,62 +109872,62 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "location": { - "type": "string", "description": "Location used for redirect responses.", + "type": "string", "example": "<LOCATION>" }, "statusCode": { - "type": "integer", "description": "Integer status code used for redirect responses.", + "type": "integer", "example": 300, "format": "int32" }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] } }, @@ -93940,58 +110010,58 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "location": { - "type": "string", "description": "Location used for redirect responses.", + "type": "string", "example": "<LOCATION>", "nullable": true }, "statusCode": { - "type": "integer", "description": "Integer status code used for redirect responses.", + "type": "integer", "example": 300, "format": "int32", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true } } @@ -94242,57 +110312,57 @@ "type": "object", "properties": { "webhookId": { - "type": "string", "description": "Webhook 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.", + "type": "string", "example": "<WEBHOOK_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "url": { - "type": "string", - "description": "Webhook URL." + "description": "Webhook URL.", + "type": "string" }, "name": { - "type": "string", "description": "Webhook name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "events": { - "type": "array", "description": "Events list. Maximum of 100 events are allowed.", + "type": "array", "items": { "type": "string" } }, "enabled": { - "type": "boolean", "description": "Enable or disable a webhook.", + "type": "boolean", "default": true, "example": false }, "tls": { - "type": "boolean", "description": "Certificate verification, false for disabled or true for enabled.", + "type": "boolean", "default": false, "example": false }, "authUsername": { - "type": "string", "description": "Webhook HTTP user. Max length: 256 chars.", + "type": "string", "default": "", "example": "<AUTH_USERNAME>" }, "authPassword": { - "type": "string", "description": "Webhook HTTP password. Max length: 256 chars.", + "type": "string", "default": "", "example": "password", "format": "password" }, "secret": { - "type": "string", "description": "Webhook secret key. If not provided, a new key will be generated automatically. Key must be at least 8 characters long, and at max 256 characters.", + "type": "string", "example": "<SECRET>", "nullable": true } @@ -94432,42 +110502,42 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Webhook name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "url": { - "type": "string", - "description": "Webhook URL." + "description": "Webhook URL.", + "type": "string" }, "events": { - "type": "array", "description": "Events list. Maximum of 100 events are allowed.", + "type": "array", "items": { "type": "string" } }, "enabled": { - "type": "boolean", "description": "Enable or disable a webhook.", + "type": "boolean", "default": true, "example": false }, "tls": { - "type": "boolean", "description": "Certificate verification, false for disabled or true for enabled.", + "type": "boolean", "default": false, "example": false }, "authUsername": { - "type": "string", "description": "Webhook HTTP user. Max length: 256 chars.", + "type": "string", "default": "", "example": "<AUTH_USERNAME>" }, "authPassword": { - "type": "string", "description": "Webhook HTTP password. Max length: 256 chars.", + "type": "string", "default": "", "example": "password", "format": "password" @@ -94600,8 +110670,8 @@ "type": "object", "properties": { "secret": { - "type": "string", "description": "Webhook secret key. If not provided, a new key will be generated automatically. Key must be at least 8 characters long, and at max 256 characters.", + "type": "string", "example": "<SECRET>", "nullable": true } @@ -96646,42 +112716,168 @@ "example": false }, "type": { - "type": "string", "description": "Database type.", "example": "legacy", - "enum": [ - "legacy", - "tablesdb", - "documentsdb", - "vectorsdb", - "mysql", - "postgresql", - "mongodb" - ], - "x-enum-name": "DatabaseType" + "title": "DatabaseType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "legacy" + ], + "title": "legacy" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "mysql" + ], + "title": "mysql" + }, + { + "type": "string", + "enum": [ + "postgresql" + ], + "title": "postgresql" + }, + { + "type": "string", + "enum": [ + "mongodb" + ], + "title": "mongodb" + } + ] }, "status": { - "type": "string", "description": "Dedicated database lifecycle status. Null when the database has no valid dedicated backing.", "readOnly": true, "example": "ready", - "enum": [ - "provisioning", - "ready", - "inactive", - "paused", - "failed", - "deleting", - "deleted", - "restoring", - "scaling", - "upgrading", - "migrating", - "pausing", - "resuming", - "failing-over" + "title": "DatabaseStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "provisioning" + ], + "title": "provisioning" + }, + { + "type": "string", + "enum": [ + "ready" + ], + "title": "ready" + }, + { + "type": "string", + "enum": [ + "inactive" + ], + "title": "inactive" + }, + { + "type": "string", + "enum": [ + "paused" + ], + "title": "paused" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "deleted" + ], + "title": "deleted" + }, + { + "type": "string", + "enum": [ + "restoring" + ], + "title": "restoring" + }, + { + "type": "string", + "enum": [ + "scaling" + ], + "title": "scaling" + }, + { + "type": "string", + "enum": [ + "upgrading" + ], + "title": "upgrading" + }, + { + "type": "string", + "enum": [ + "migrating" + ], + "title": "migrating" + }, + { + "type": "string", + "enum": [ + "pausing" + ], + "title": "pausing" + }, + { + "type": "string", + "enum": [ + "resuming" + ], + "title": "resuming" + }, + { + "type": "string", + "enum": [ + "failing-over" + ], + "title": "failing-over" + } ], - "x-enum-name": "DatabaseStatus", "nullable": true }, "engine": { @@ -97227,17 +113423,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -97323,17 +113549,47 @@ "example": "integer" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -97421,17 +113677,47 @@ "example": "bigint" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -97519,17 +113805,47 @@ "example": "double" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -97617,17 +113933,47 @@ "example": "boolean" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -97698,17 +114044,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -97786,17 +114162,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -97886,17 +114292,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -97974,17 +114410,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98062,17 +114528,47 @@ "example": "datetime" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98150,17 +114646,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98266,17 +114792,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98357,17 +114913,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98463,17 +115049,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98596,17 +115212,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98692,17 +115338,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98780,17 +115456,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -98868,17 +115574,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -99087,17 +115823,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -99161,17 +115927,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -99656,17 +116452,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -99752,17 +116578,47 @@ "example": "integer" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -99850,17 +116706,47 @@ "example": "bigint" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -99948,17 +116834,47 @@ "example": "double" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100046,17 +116962,47 @@ "example": "boolean" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100127,17 +117073,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100215,17 +117191,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100315,17 +117321,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100403,17 +117439,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100491,17 +117557,47 @@ "example": "datetime" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100579,17 +117675,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100695,17 +117821,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100786,17 +117942,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -100892,17 +118078,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -101025,17 +118241,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -101121,17 +118367,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -101209,17 +118485,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -101297,17 +118603,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -101400,15 +118736,45 @@ "example": "primary" }, "status": { - "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } ] }, "error": { @@ -104896,11 +122262,17 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Repository detection type.", "example": "framework", - "enum": [ - "framework" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "framework" + ], + "title": "framework" + } ] }, "variables": { @@ -104954,11 +122326,17 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Repository detection type.", "example": "runtime", - "enum": [ - "runtime" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "runtime" + ], + "title": "runtime" + } ] }, "variables": { @@ -105340,16 +122718,52 @@ "example": "5e5ea5c16897e" }, "status": { - "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", \"canceled\" and \"failed\".", "example": "ready", - "enum": [ - "waiting", - "processing", - "building", - "ready", - "canceled", - "failed" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "waiting" + ], + "title": "waiting" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "building" + ], + "title": "building" + }, + { + "type": "string", + "enum": [ + "ready" + ], + "title": "ready" + }, + { + "type": "string", + "enum": [ + "canceled" + ], + "title": "canceled" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } ] }, "buildLogs": { @@ -105508,12 +122922,24 @@ "example": "5e5ea6g16897e" }, "resourceType": { - "type": "string", "description": "Execution resource type.", "example": "functions", - "enum": [ - "functions", - "sites" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + } ] }, "deploymentId": { @@ -105522,25 +122948,73 @@ "example": "5e5ea5c16897e" }, "trigger": { - "type": "string", "description": "The trigger that caused the resource to execute. Possible values can be: `http`, `schedule`, or `event`.", "example": "http", - "enum": [ - "http", - "schedule", - "event" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "http" + ], + "title": "http" + }, + { + "type": "string", + "enum": [ + "schedule" + ], + "title": "schedule" + }, + { + "type": "string", + "enum": [ + "event" + ], + "title": "event" + } ] }, "status": { - "type": "string", "description": "The status of the resource execution. Possible values can be: `waiting`, `processing`, `completed`, `failed`, or `scheduled`.", "example": "processing", - "enum": [ - "waiting", - "processing", - "completed", - "failed", - "scheduled" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "waiting" + ], + "title": "waiting" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "completed" + ], + "title": "completed" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + }, + { + "type": "string", + "enum": [ + "scheduled" + ], + "title": "scheduled" + } ] }, "requestMethod": { @@ -105829,7 +123303,8 @@ "wafEnabled": { "type": "boolean", "description": "Whether WAF enforcement is enabled for the project.", - "example": true + "example": true, + "nullable": true }, "billingLimits": { "type": "object", @@ -105999,8 +123474,7 @@ "services", "protocols", "blocks", - "consoleAccessedAt", - "wafEnabled" + "consoleAccessedAt" ], "example": { "$id": "5e5ea5c16897e", @@ -106067,19 +123541,61 @@ "type": "object", "properties": { "$id": { - "type": "string", "description": "Auth method ID.", "example": "email-password", - "enum": [ - "email-password", - "magic-url", - "email-otp", - "anonymous", - "invites", - "jwt", - "phone" - ], - "x-enum-name": "ProjectAuthMethodId" + "title": "ProjectAuthMethodId", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "email-password" + ], + "title": "email-password" + }, + { + "type": "string", + "enum": [ + "magic-url" + ], + "title": "magic-url" + }, + { + "type": "string", + "enum": [ + "email-otp" + ], + "title": "email-otp" + }, + { + "type": "string", + "enum": [ + "anonymous" + ], + "title": "anonymous" + }, + { + "type": "string", + "enum": [ + "invites" + ], + "title": "invites" + }, + { + "type": "string", + "enum": [ + "jwt" + ], + "title": "jwt" + }, + { + "type": "string", + "enum": [ + "phone" + ], + "title": "phone" + } + ] }, "enabled": { "type": "boolean", @@ -106101,30 +123617,138 @@ "type": "object", "properties": { "$id": { - "type": "string", "description": "Service ID.", "example": "sites", - "enum": [ - "account", - "avatars", - "databases", - "tablesdb", - "locale", - "health", - "project", - "storage", - "teams", - "users", - "vcs", - "sites", - "functions", - "proxy", - "graphql", - "migrations", - "messaging", - "advisor" - ], - "x-enum-name": "ProjectServiceId" + "title": "ProjectServiceId", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "account" + ], + "title": "account" + }, + { + "type": "string", + "enum": [ + "avatars" + ], + "title": "avatars" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "locale" + ], + "title": "locale" + }, + { + "type": "string", + "enum": [ + "health" + ], + "title": "health" + }, + { + "type": "string", + "enum": [ + "project" + ], + "title": "project" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + }, + { + "type": "string", + "enum": [ + "teams" + ], + "title": "teams" + }, + { + "type": "string", + "enum": [ + "users" + ], + "title": "users" + }, + { + "type": "string", + "enum": [ + "vcs" + ], + "title": "vcs" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "proxy" + ], + "title": "proxy" + }, + { + "type": "string", + "enum": [ + "graphql" + ], + "title": "graphql" + }, + { + "type": "string", + "enum": [ + "migrations" + ], + "title": "migrations" + }, + { + "type": "string", + "enum": [ + "messaging" + ], + "title": "messaging" + }, + { + "type": "string", + "enum": [ + "advisor" + ], + "title": "advisor" + } + ] }, "enabled": { "type": "boolean", @@ -106146,15 +123770,33 @@ "type": "object", "properties": { "$id": { - "type": "string", "description": "Protocol ID.", "example": "graphql", - "enum": [ - "rest", - "graphql", - "websocket" - ], - "x-enum-name": "ProjectProtocolId" + "title": "ProjectProtocolId", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "rest" + ], + "title": "rest" + }, + { + "type": "string", + "enum": [ + "graphql" + ], + "title": "graphql" + }, + { + "type": "string", + "enum": [ + "websocket" + ], + "title": "websocket" + } + ] }, "enabled": { "type": "boolean", @@ -106929,10 +124571,28 @@ "description": "Google OAuth2 prompt values.", "items": { "type": "string", - "enum": [ - "none", - "consent", - "select_account" + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "consent" + ], + "title": "consent" + }, + { + "type": "string", + "enum": [ + "select_account" + ], + "title": "select_account" + } ] }, "example": [ @@ -107451,6 +125111,44 @@ "clientSecret": "cf978f0000000000000000000000000000c5e2e9" } }, + "oAuth2HuggingFace": { + "description": "OAuth2HuggingFace", + "type": "object", + "properties": { + "$id": { + "type": "string", + "description": "OAuth2 provider ID.", + "example": "github" + }, + "enabled": { + "type": "boolean", + "description": "OAuth2 provider is active and can be used to create sessions.", + "example": false + }, + "clientId": { + "type": "string", + "description": "Hugging Face OAuth2 client ID.", + "example": "2ab9cff9-d711-40ad-a91e-b08a49c42d24" + }, + "clientSecret": { + "type": "string", + "description": "Hugging Face OAuth2 client secret.", + "example": "oauth_app_secret_wcLhRtl000000000000000000000xbNdLt" + } + }, + "required": [ + "$id", + "enabled", + "clientId", + "clientSecret" + ], + "example": { + "$id": "github", + "enabled": false, + "clientId": "2ab9cff9-d711-40ad-a91e-b08a49c42d24", + "clientSecret": "oauth_app_secret_wcLhRtl000000000000000000000xbNdLt" + } + }, "oAuth2Linkedin": { "description": "OAuth2Linkedin", "type": "object", @@ -108036,11 +125734,35 @@ "description": "OpenID Connect prompt values controlling the authentication and consent screens.", "items": { "type": "string", - "enum": [ - "none", - "login", - "consent", - "select_account" + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "login" + ], + "title": "login" + }, + { + "type": "string", + "enum": [ + "consent" + ], + "title": "consent" + }, + { + "type": "string", + "enum": [ + "select_account" + ], + "title": "select_account" + } ] }, "example": [ @@ -108405,6 +126127,9 @@ }, { "$ref": "#\/components\/schemas\/oAuth2Microsoft" + }, + { + "$ref": "#\/components\/schemas\/oAuth2HuggingFace" } ], "discriminator": { @@ -108452,7 +126177,8 @@ "apple": "#\/components\/schemas\/oAuth2Apple", "okta": "#\/components\/schemas\/oAuth2Okta", "kick": "#\/components\/schemas\/oAuth2Kick", - "microsoft": "#\/components\/schemas\/oAuth2Microsoft" + "microsoft": "#\/components\/schemas\/oAuth2Microsoft", + "huggingface": "#\/components\/schemas\/oAuth2HuggingFace" } } }, @@ -108846,78 +126572,138 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" - }, - "hostname": { - "type": "string", - "description": "Web app hostname. Empty string for other platforms.", - "example": "app.example.com" - } - }, - "required": [ - "$id", - "$createdAt", - "$updatedAt", - "name", - "type", - "hostname", - "key" - ], - "example": { - "$id": "5e5ea5c16897e", - "$createdAt": "2020-10-15T06:38:00.000+00:00", - "$updatedAt": "2020-10-15T06:38:00.000+00:00", - "name": "My Web App", - "type": "web", - "hostname": "app.example.com" - } - }, - "platformApple": { - "description": "Platform Apple", - "type": "object", - "properties": { - "$id": { - "type": "string", - "description": "Platform ID.", - "example": "5e5ea5c16897e" - }, - "$createdAt": { - "type": "string", - "description": "Platform creation date in ISO 8601 format.", - "example": "2020-10-15T06:38:00.000+00:00" - }, - "$updatedAt": { + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] + }, + "hostname": { + "type": "string", + "description": "Web app hostname. Empty string for other platforms.", + "example": "app.example.com" + } + }, + "required": [ + "$id", + "$createdAt", + "$updatedAt", + "name", + "type", + "hostname", + "key" + ], + "example": { + "$id": "5e5ea5c16897e", + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "name": "My Web App", + "type": "web", + "hostname": "app.example.com" + } + }, + "platformApple": { + "description": "Platform Apple", + "type": "object", + "properties": { + "$id": { + "type": "string", + "description": "Platform ID.", + "example": "5e5ea5c16897e" + }, + "$createdAt": { + "type": "string", + "description": "Platform creation date in ISO 8601 format.", + "example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "Platform update date in ISO 8601 format.", + "example": "2020-10-15T06:38:00.000+00:00" + }, + "name": { + "type": "string", + "description": "Platform name.", + "example": "My Web App" + }, + "type": { + "description": "Platform type. Possible values are: windows, apple, android, linux, web.", + "example": "web", + "title": "PlatformType", "type": "string", - "description": "Platform update date in ISO 8601 format.", - "example": "2020-10-15T06:38:00.000+00:00" - }, - "name": { - "type": "string", - "description": "Platform name.", - "example": "My Web App" - }, - "type": { - "type": "string", - "description": "Platform type. Possible values are: windows, apple, android, linux, web.", - "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "bundleIdentifier": { "type": "string", @@ -108967,17 +126753,47 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "applicationId": { "type": "string", @@ -109027,17 +126843,47 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "packageIdentifierName": { "type": "string", @@ -109087,17 +126933,47 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "packageName": { "type": "string", @@ -110289,12 +128165,24 @@ "example": "n3u9feiwmf" }, "deploymentResourceType": { - "type": "string", "description": "Type of deployment. Possible values are \"function\", \"site\". Used if rule's type is \"deployment\".", "example": "function", - "enum": [ - "function", - "site" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "function" + ], + "title": "function" + }, + { + "type": "string", + "enum": [ + "site" + ], + "title": "site" + } ], "nullable": true }, @@ -110309,13 +128197,31 @@ "example": "main" }, "status": { - "type": "string", "description": "Domain verification status. Possible values are \"unverified\", \"verifying\", \"verified\"", "example": "verified", - "enum": [ - "unverified", - "verifying", - "verified" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "unverified" + ], + "title": "unverified" + }, + { + "type": "string", + "enum": [ + "verifying" + ], + "title": "verifying" + }, + { + "type": "string", + "enum": [ + "verified" + ], + "title": "verified" + } ] }, "logs": { @@ -110624,6 +128530,26 @@ "github" ] }, + "_APP_VCS_PROVIDERS_WITH_REPOSITORY_CREATION": { + "type": "array", + "description": "List of configured VCS providers that support repository creation.", + "items": { + "type": "string" + }, + "example": [ + "github" + ] + }, + "_APP_VCS_PROVIDERS_WITH_PUBLIC_REPOSITORIES": { + "type": "array", + "description": "List of configured VCS providers that can host public repositories.", + "items": { + "type": "string" + }, + "example": [ + "github" + ] + }, "_APP_DOMAIN_ENABLED": { "type": "boolean", "description": "Defines if main domain is configured. If so, custom domains can be created.", @@ -110727,6 +128653,8 @@ "_APP_USAGE_STATS", "_APP_VCS_ENABLED", "_APP_VCS_PROVIDERS", + "_APP_VCS_PROVIDERS_WITH_REPOSITORY_CREATION", + "_APP_VCS_PROVIDERS_WITH_PUBLIC_REPOSITORIES", "_APP_DOMAIN_ENABLED", "_APP_ASSISTANT_ENABLED", "_APP_DOMAIN_SITES", @@ -110759,6 +128687,12 @@ "_APP_VCS_PROVIDERS": [ "github" ], + "_APP_VCS_PROVIDERS_WITH_REPOSITORY_CREATION": [ + "github" + ], + "_APP_VCS_PROVIDERS_WITH_PUBLIC_REPOSITORIES": [ + "github" + ], "_APP_DOMAIN_ENABLED": true, "_APP_ASSISTANT_ENABLED": true, "_APP_DOMAIN_SITES": "sites.localhost,sites.example.com", @@ -111291,15 +129225,45 @@ } }, "status": { - "type": "string", "description": "Status of delivery.", "example": "processing", - "enum": [ - "draft", - "processing", - "scheduled", - "sent", - "failed" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "draft" + ], + "title": "draft" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "scheduled" + ], + "title": "scheduled" + }, + { + "type": "string", + "enum": [ + "sent" + ], + "title": "sent" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } ] } }, @@ -114225,13 +132189,31 @@ "nullable": true }, "group": { - "type": "string", "description": "Group of this billing plan for variants", "example": "pro", - "enum": [ - "starter", - "pro", - "scale" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "starter" + ], + "title": "starter" + }, + { + "type": "string", + "enum": [ + "pro" + ], + "title": "pro" + }, + { + "type": "string", + "enum": [ + "scale" + ], + "title": "scale" + } ] }, "program": { @@ -114902,7 +132884,7 @@ }, "database": { "type": "string", - "description": "Database name the client sends for routing to the branch.", + "description": "Advertised catalog the client connects to. MySQL\/MariaDB use default; Postgres uses the routing label.", "example": "db-myproject-mydb-a1b2c3d4" }, "username": { @@ -116311,20 +134293,68 @@ "example": 2599 }, "transferStatus": { - "type": "string", "description": "Transfer status for domains being transferred in. Null when the domain is not being transferred.", "example": "pending_registry", - "enum": [ - "transferrable", - "not_transferrable", - "pending_owner", - "pending_admin", - "pending_registry", - "completed", - "cancelled", - "service_unavailable" + "title": "DomainTransferStatusEnum", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "transferrable" + ], + "title": "transferrable" + }, + { + "type": "string", + "enum": [ + "not_transferrable" + ], + "title": "not_transferrable" + }, + { + "type": "string", + "enum": [ + "pending_owner" + ], + "title": "pending_owner" + }, + { + "type": "string", + "enum": [ + "pending_admin" + ], + "title": "pending_admin" + }, + { + "type": "string", + "enum": [ + "pending_registry" + ], + "title": "pending_registry" + }, + { + "type": "string", + "enum": [ + "completed" + ], + "title": "completed" + }, + { + "type": "string", + "enum": [ + "cancelled" + ], + "title": "cancelled" + }, + { + "type": "string", + "enum": [ + "service_unavailable" + ], + "title": "service_unavailable" + } ], - "x-enum-name": "DomainTransferStatusEnum", "nullable": true }, "teamId": { @@ -116460,16 +134490,40 @@ "example": "5e5ea5c16897e" }, "status": { - "type": "string", "description": "Domain purchase status.", "example": "pending", - "enum": [ - "pending", - "succeeded", - "failed", - "cancelled" - ], - "x-enum-name": "DomainPurchaseStatus" + "title": "DomainPurchaseStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "pending" + ], + "title": "pending" + }, + { + "type": "string", + "enum": [ + "succeeded" + ], + "title": "succeeded" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + }, + { + "type": "string", + "enum": [ + "cancelled" + ], + "title": "cancelled" + } + ] }, "clientSecret": { "type": "string", @@ -116574,20 +134628,68 @@ "type": "object", "properties": { "status": { - "type": "string", "description": "Transfer status.", "example": "pending_registry", - "enum": [ - "transferrable", - "not_transferrable", - "pending_owner", - "pending_admin", - "pending_registry", - "completed", - "cancelled", - "service_unavailable" - ], - "x-enum-name": "DomainTransferStatusEnum" + "title": "DomainTransferStatusEnum", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "transferrable" + ], + "title": "transferrable" + }, + { + "type": "string", + "enum": [ + "not_transferrable" + ], + "title": "not_transferrable" + }, + { + "type": "string", + "enum": [ + "pending_owner" + ], + "title": "pending_owner" + }, + { + "type": "string", + "enum": [ + "pending_admin" + ], + "title": "pending_admin" + }, + { + "type": "string", + "enum": [ + "pending_registry" + ], + "title": "pending_registry" + }, + { + "type": "string", + "enum": [ + "completed" + ], + "title": "completed" + }, + { + "type": "string", + "enum": [ + "cancelled" + ], + "title": "cancelled" + }, + { + "type": "string", + "enum": [ + "service_unavailable" + ], + "title": "service_unavailable" + } + ] }, "reason": { "type": "string", @@ -121325,155 +139427,215 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" - }, - "priority": { - "type": "integer", - "description": "Evaluation priority. Lower values execute earlier.", - "format": "int32", - "example": 100 - }, - "enabled": { - "type": "boolean", - "description": "Whether the rule is active.", - "example": true - }, - "conditions": { - "type": "array", - "description": "List of conditions evaluated for this rule.", - "items": { - "type": "object" - }, - "example": [ + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] + }, + "priority": { + "type": "integer", + "description": "Evaluation priority. Lower values execute earlier.", + "format": "int32", + "example": 100 + }, + "enabled": { + "type": "boolean", + "description": "Whether the rule is active.", + "example": true + }, + "conditions": { + "type": "array", + "description": "List of conditions evaluated for this rule.", + "items": { + "type": "object" + }, + "example": [ + { + "method": "equal", + "attribute": "ip", + "values": [ + "127.0.0.1" + ] + } + ] + }, + "config": { + "type": "object", + "additionalProperties": true, + "description": "Action specific configuration.", + "example": {} + } + }, + "required": [ + "$id", + "$createdAt", + "$updatedAt", + "name", + "description", + "teamId", + "projectId", + "resourceType", + "resourceId", + "action", + "priority", + "enabled", + "conditions", + "config" + ], + "example": { + "$id": "wafRule1", + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "name": "Block anonymous POST traffic", + "description": "Blocks anonymous POST calls to \/v1\/graphql", + "teamId": "5e5ea5c16897e", + "projectId": "cloudConsole", + "resourceType": "functions", + "resourceId": "functionId", + "action": "deny", + "priority": 100, + "enabled": true, + "conditions": [ + { + "method": "equal", + "attribute": "ip", + "values": [ + "127.0.0.1" + ] + } + ], + "config": [] + } + }, + "wafRuleBypass": { + "description": "WafRuleBypass", + "type": "object", + "properties": { + "$id": { + "type": "string", + "description": "Rule ID.", + "example": "wafRule1" + }, + "$createdAt": { + "type": "string", + "description": "WAF rule creation time in ISO 8601 format.", + "example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "WAF rule last update time in ISO 8601 format.", + "example": "2020-10-15T06:38:00.000+00:00" + }, + "name": { + "type": "string", + "description": "Human friendly rule name.", + "example": "Block anonymous POST traffic" + }, + "description": { + "type": "string", + "description": "Optional description for the rule.", + "example": "Blocks anonymous POST calls to \/v1\/graphql" + }, + "teamId": { + "type": "string", + "description": "Team ID.", + "example": "5e5ea5c16897e" + }, + "projectId": { + "type": "string", + "description": "Project ID.", + "example": "cloudConsole" + }, + "resourceType": { + "type": "string", + "description": "Resource type the rule is scoped to.", + "example": "functions" + }, + "resourceId": { + "type": "string", + "description": "Resource identifier. Empty for API-wide rules.", + "example": "functionId" + }, + "action": { + "description": "Action performed when the rule matches.", + "example": "deny", + "title": "WafRuleAction", + "type": "string", + "oneOf": [ { - "method": "equal", - "attribute": "ip", - "values": [ - "127.0.0.1" - ] + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" } ] }, - "config": { - "type": "object", - "additionalProperties": true, - "description": "Action specific configuration.", - "example": {} - } - }, - "required": [ - "$id", - "$createdAt", - "$updatedAt", - "name", - "description", - "teamId", - "projectId", - "resourceType", - "resourceId", - "action", - "priority", - "enabled", - "conditions", - "config" - ], - "example": { - "$id": "wafRule1", - "$createdAt": "2020-10-15T06:38:00.000+00:00", - "$updatedAt": "2020-10-15T06:38:00.000+00:00", - "name": "Block anonymous POST traffic", - "description": "Blocks anonymous POST calls to \/v1\/graphql", - "teamId": "5e5ea5c16897e", - "projectId": "cloudConsole", - "resourceType": "functions", - "resourceId": "functionId", - "action": "deny", - "priority": 100, - "enabled": true, - "conditions": [ - { - "method": "equal", - "attribute": "ip", - "values": [ - "127.0.0.1" - ] - } - ], - "config": [] - } - }, - "wafRuleBypass": { - "description": "WafRuleBypass", - "type": "object", - "properties": { - "$id": { - "type": "string", - "description": "Rule ID.", - "example": "wafRule1" - }, - "$createdAt": { - "type": "string", - "description": "WAF rule creation time in ISO 8601 format.", - "example": "2020-10-15T06:38:00.000+00:00" - }, - "$updatedAt": { - "type": "string", - "description": "WAF rule last update time in ISO 8601 format.", - "example": "2020-10-15T06:38:00.000+00:00" - }, - "name": { - "type": "string", - "description": "Human friendly rule name.", - "example": "Block anonymous POST traffic" - }, - "description": { - "type": "string", - "description": "Optional description for the rule.", - "example": "Blocks anonymous POST calls to \/v1\/graphql" - }, - "teamId": { - "type": "string", - "description": "Team ID.", - "example": "5e5ea5c16897e" - }, - "projectId": { - "type": "string", - "description": "Project ID.", - "example": "cloudConsole" - }, - "resourceType": { - "type": "string", - "description": "Resource type the rule is scoped to.", - "example": "functions" - }, - "resourceId": { - "type": "string", - "description": "Resource identifier. Empty for API-wide rules.", - "example": "functionId" - }, - "action": { - "type": "string", - "description": "Action performed when the rule matches.", - "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" - }, "priority": { "type": "integer", "description": "Evaluation priority. Lower values execute earlier.", @@ -121599,17 +139761,47 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] }, "priority": { "type": "integer", @@ -121736,17 +139928,47 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] }, "priority": { "type": "integer", @@ -121896,17 +140118,47 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] }, "priority": { "type": "integer", @@ -122071,17 +140323,47 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] }, "priority": { "type": "integer", diff --git a/specs/latest/open-api3-latest-server.json b/specs/latest/open-api3-latest-server.json index e9d99abfb..c07c9ef25 100644 --- a/specs/latest/open-api3-latest-server.json +++ b/specs/latest/open-api3-latest-server.json @@ -139,28 +139,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "New user password. Must be between 8 and 256 chars.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -657,14 +657,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -949,8 +949,8 @@ "type": "object", "properties": { "mfa": { - "type": "boolean", "description": "Enable or disable MFA.", + "type": "boolean", "example": false } }, @@ -1079,12 +1079,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -1210,12 +1213,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -1228,8 +1234,8 @@ "type": "object", "properties": { "otp": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "<OTP>" } }, @@ -1347,12 +1353,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -1475,23 +1484,46 @@ "type": "object", "properties": { "factor": { - "type": "string", "description": "Factor used for verification. Must be one of following: `email`, `phone`, `totp`, `recoveryCode`, `custom`.", + "type": "string", "example": "email", - "enum": [ - "email", - "phone", - "totp", - "recoverycode", - "custom" - ], - "x-enum-name": "AuthenticationFactor", - "x-enum-keys": [ - "email", - "phone", - "totp", - "recoverycode", - "custom" + "title": "AuthenticationFactor", + "oneOf": [ + { + "type": "string", + "enum": [ + "email" + ], + "title": "email" + }, + { + "type": "string", + "enum": [ + "phone" + ], + "title": "phone" + }, + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + }, + { + "type": "string", + "enum": [ + "recoverycode" + ], + "title": "recoverycode" + }, + { + "type": "string", + "enum": [ + "custom" + ], + "title": "custom" + } ] } }, @@ -1621,13 +1653,13 @@ "type": "object", "properties": { "challengeId": { - "type": "string", "description": "ID of the challenge.", + "type": "string", "example": "<CHALLENGE_ID>" }, "otp": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "<OTP>" } }, @@ -2102,8 +2134,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -2173,14 +2205,14 @@ "type": "object", "properties": { "password": { - "type": "string", "description": "New user password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" }, "oldPassword": { - "type": "string", "description": "Current user password. Max length: 256 chars.", + "type": "string", "default": "", "example": "password", "format": "password" @@ -2252,14 +2284,14 @@ "type": "object", "properties": { "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "example": "+12065550100", "format": "phone" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -2381,8 +2413,8 @@ "type": "object", "properties": { "prefs": { - "type": "object", "description": "Prefs key-value JSON object.", + "type": "object", "default": {}, "example": { "language": "en", @@ -2460,14 +2492,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the recovery 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.", + "type": "string", "example": "https:\/\/example.com", "format": "url" } @@ -2537,18 +2569,18 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "secret": { - "type": "string", "description": "Valid reset token.", + "type": "string", "example": "<SECRET>" }, "password": { - "type": "string", "description": "New user password. Must be between 8 and 256 chars.", + "type": "string", "example": "password", "format": "password" } @@ -2768,14 +2800,14 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -2851,16 +2883,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "<SECRET>" } }, @@ -2935,16 +2967,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "<SECRET>" } }, @@ -3015,16 +3047,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "secret": { - "type": "string", "description": "Secret of a token generated by login methods. For example, the `createMagicURLToken` or `createPhoneToken` methods.", + "type": "string", "example": "<SECRET>" } }, @@ -3334,22 +3366,22 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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. If the email address has never been used, a new account is created using the provided userId. Otherwise, if the email address is already attached to an account, the user ID is ignored.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "phrase": { - "type": "boolean", "description": "Toggle for security phrase. If enabled, email will be send with a randomly generated phrase and the phrase will also be included in the response. Confirming phrases match increases the security of your authentication flow.", + "type": "boolean", "default": false, "example": false } @@ -3424,29 +3456,29 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "Unique 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. If the email address has never been used, a new account is created using the provided userId. Otherwise, if the email address is already attached to an account, the user ID is ignored.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the magic URL login. 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.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "phrase": { - "type": "boolean", "description": "Toggle for security phrase. If enabled, email will be send with a randomly generated phrase and the phrase will also be included in the response. Confirming phrases match increases the security of your authentication flow.", + "type": "boolean", "default": false, "example": false } @@ -3515,103 +3547,328 @@ "parameters": [ { "name": "provider", - "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", + "description": "OAuth2 Provider. Currently, supported providers are: amazon, apple, appwrite, auth0, authentik, autodesk, bitbucket, bitly, box, dailymotion, discord, disqus, dropbox, etsy, facebook, figma, fusionauth, github, gitlab, google, huggingface, keycloak, kick, linkedin, microsoft, notion, oidc, okta, paypal, paypalSandbox, podio, salesforce, slack, spotify, stripe, tradeshift, tradeshiftBox, twitch, wordpress, x, yahoo, yammer, yandex, zoho, zoom.", "required": true, "schema": { "type": "string", "example": "amazon", - "enum": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" - ], - "x-enum-name": "OAuthProvider", - "x-enum-keys": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" + "title": "OAuthProvider", + "oneOf": [ + { + "type": "string", + "enum": [ + "amazon" + ], + "title": "amazon" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "auth0" + ], + "title": "auth0" + }, + { + "type": "string", + "enum": [ + "authentik" + ], + "title": "authentik" + }, + { + "type": "string", + "enum": [ + "autodesk" + ], + "title": "autodesk" + }, + { + "type": "string", + "enum": [ + "bitbucket" + ], + "title": "bitbucket" + }, + { + "type": "string", + "enum": [ + "bitly" + ], + "title": "bitly" + }, + { + "type": "string", + "enum": [ + "box" + ], + "title": "box" + }, + { + "type": "string", + "enum": [ + "dailymotion" + ], + "title": "dailymotion" + }, + { + "type": "string", + "enum": [ + "discord" + ], + "title": "discord" + }, + { + "type": "string", + "enum": [ + "disqus" + ], + "title": "disqus" + }, + { + "type": "string", + "enum": [ + "dropbox" + ], + "title": "dropbox" + }, + { + "type": "string", + "enum": [ + "etsy" + ], + "title": "etsy" + }, + { + "type": "string", + "enum": [ + "facebook" + ], + "title": "facebook" + }, + { + "type": "string", + "enum": [ + "figma" + ], + "title": "figma" + }, + { + "type": "string", + "enum": [ + "fusionauth" + ], + "title": "fusionauth" + }, + { + "type": "string", + "enum": [ + "github" + ], + "title": "github" + }, + { + "type": "string", + "enum": [ + "gitlab" + ], + "title": "gitlab" + }, + { + "type": "string", + "enum": [ + "google" + ], + "title": "google" + }, + { + "type": "string", + "enum": [ + "huggingface" + ], + "title": "huggingface" + }, + { + "type": "string", + "enum": [ + "keycloak" + ], + "title": "keycloak" + }, + { + "type": "string", + "enum": [ + "kick" + ], + "title": "kick" + }, + { + "type": "string", + "enum": [ + "linkedin" + ], + "title": "linkedin" + }, + { + "type": "string", + "enum": [ + "microsoft" + ], + "title": "microsoft" + }, + { + "type": "string", + "enum": [ + "notion" + ], + "title": "notion" + }, + { + "type": "string", + "enum": [ + "oidc" + ], + "title": "oidc" + }, + { + "type": "string", + "enum": [ + "okta" + ], + "title": "okta" + }, + { + "type": "string", + "enum": [ + "paypal" + ], + "title": "paypal" + }, + { + "type": "string", + "enum": [ + "paypalSandbox" + ], + "title": "paypalSandbox" + }, + { + "type": "string", + "enum": [ + "podio" + ], + "title": "podio" + }, + { + "type": "string", + "enum": [ + "salesforce" + ], + "title": "salesforce" + }, + { + "type": "string", + "enum": [ + "slack" + ], + "title": "slack" + }, + { + "type": "string", + "enum": [ + "spotify" + ], + "title": "spotify" + }, + { + "type": "string", + "enum": [ + "stripe" + ], + "title": "stripe" + }, + { + "type": "string", + "enum": [ + "tradeshift" + ], + "title": "tradeshift" + }, + { + "type": "string", + "enum": [ + "tradeshiftBox" + ], + "title": "tradeshiftBox" + }, + { + "type": "string", + "enum": [ + "twitch" + ], + "title": "twitch" + }, + { + "type": "string", + "enum": [ + "wordpress" + ], + "title": "wordpress" + }, + { + "type": "string", + "enum": [ + "x" + ], + "title": "x" + }, + { + "type": "string", + "enum": [ + "yahoo" + ], + "title": "yahoo" + }, + { + "type": "string", + "enum": [ + "yammer" + ], + "title": "yammer" + }, + { + "type": "string", + "enum": [ + "yandex" + ], + "title": "yandex" + }, + { + "type": "string", + "enum": [ + "zoho" + ], + "title": "zoho" + }, + { + "type": "string", + "enum": [ + "zoom" + ], + "title": "zoom" + } ] }, "in": "path" @@ -3716,16 +3973,16 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "Unique 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. If the phone number has never been used, a new account is created using the provided userId. Otherwise, if the phone number is already attached to an account, the user ID is ignored.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "example": "+12065550100", "format": "phone" } @@ -3851,8 +4108,8 @@ "type": "object", "properties": { "url": { - "type": "string", "description": "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.", + "type": "string", "example": "https:\/\/example.com", "format": "url" } @@ -3979,13 +4236,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "<SECRET>" } }, @@ -4109,13 +4366,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "secret": { - "type": "string", "description": "Valid verification token.", + "type": "string", "example": "<SECRET>" } }, @@ -4389,132 +4646,132 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application 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.", + "type": "string", "example": "<APP_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Application name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Application description shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "clientUri": { - "type": "string", "description": "Application homepage URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "logoUri": { - "type": "string", "description": "Application logo URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "privacyPolicyUrl": { - "type": "string", "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "termsUrl": { - "type": "string", "description": "Application terms of service URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "contacts": { - "type": "array", "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "tagline": { - "type": "string", "description": "Application tagline shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "<TAGLINE>" }, "tags": { - "type": "array", "description": "Application tags shown to users during OAuth2 consent. Maximum of 100 tags are allowed, each up to 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "images": { - "type": "array", "description": "Application image URLs shown to users during OAuth2 consent. Maximum of 100 images are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "supportUrl": { - "type": "string", "description": "Application support URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "dataDeletionUrl": { - "type": "string", "description": "Application data deletion URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "redirectUris": { - "type": "array", "description": "Redirect URIs. Each must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI (e.g. com.example.app:\/oauth), and must not contain a fragment.", + "type": "array", "items": { "type": "string" } }, "postLogoutRedirectUris": { - "type": "array", "description": "Post-logout redirect URIs for OpenID Connect RP-Initiated Logout. Each must be an https URL, an http loopback URL, or a private-use scheme URI, and must not contain a fragment. After ending the user session, the logout endpoint only redirects to URIs in this list.", + "type": "array", "default": [], "items": { "type": "string" } }, "enabled": { - "type": "boolean", "description": "Is application enabled?", + "type": "boolean", "default": true, "example": false }, "type": { - "type": "string", "description": "OAuth2 client type. Use `public` for SPAs, mobile, and native apps that cannot keep a `client_secret` \u2014 PKCE is then required at the token endpoint. Use `confidential` for server-side clients that present a `client_secret`. Defaults to `confidential`.", + "type": "string", "default": "confidential", "example": "public" }, "deviceFlow": { - "type": "boolean", "description": "Allow this client to use the OAuth2 Device Authorization Grant (RFC 8628) for input-constrained devices such as TVs and CLIs. Defaults to false.", + "type": "boolean", "default": false, "example": false }, "teamId": { - "type": "string", "description": "Team unique ID.", + "type": "string", "default": "", "example": "<TEAM_ID>" } @@ -4765,133 +5022,133 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Application name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Application description shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "clientUri": { - "type": "string", "description": "Application homepage URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "logoUri": { - "type": "string", "description": "Application logo URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "privacyPolicyUrl": { - "type": "string", "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "termsUrl": { - "type": "string", "description": "Application terms of service URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "contacts": { - "type": "array", "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "tagline": { - "type": "string", "description": "Application tagline shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "<TAGLINE>" }, "tags": { - "type": "array", "description": "Application tags shown to users during OAuth2 consent. Maximum of 100 tags are allowed, each up to 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "images": { - "type": "array", "description": "Application image URLs shown to users during OAuth2 consent. Maximum of 100 images are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "supportUrl": { - "type": "string", "description": "Application support URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "dataDeletionUrl": { - "type": "string", "description": "Application data deletion URL shown to users during OAuth2 consent.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "enabled": { - "type": "boolean", "description": "Is application enabled?", + "type": "boolean", "default": true, "example": false }, "redirectUris": { - "type": "array", "description": "Redirect URIs. Each must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI (e.g. com.example.app:\/oauth), and must not contain a fragment.", + "type": "array", "default": [], "items": { "type": "string" } }, "postLogoutRedirectUris": { - "type": "array", "description": "Post-logout redirect URIs for OpenID Connect RP-Initiated Logout. Each must be an https URL, an http loopback URL, or a private-use scheme URI, and must not contain a fragment. After ending the user session, the logout endpoint only redirects to URIs in this list.", + "type": "array", "default": [], "items": { "type": "string" } }, "type": { - "type": "string", "description": "OAuth2 client type. Use `public` for SPAs, mobile, and native apps that cannot keep a `client_secret` \u2014 PKCE is then required at the token endpoint. Use `confidential` for server-side clients that present a `client_secret`. Defaults to `confidential`.", + "type": "string", "default": "confidential", "example": "public" }, "deviceFlow": { - "type": "boolean", "description": "Allow this client to use the OAuth2 Device Authorization Grant (RFC 8628) for input-constrained devices such as TVs and CLIs. Defaults to false.", + "type": "boolean", "default": false, "example": false }, "installationScopes": { - "type": "array", "description": "Scopes the application requests when installed on a team. Only scopes allowed by the project's OAuth2 server installation scopes configuration are accepted; use the list installation scopes endpoint to discover available values. Maximum of 100 scopes are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "installationRedirectUrl": { - "type": "string", "description": "URL users are redirected to after creating or updating an installation of this application. Must be an https URL, an http loopback URL (localhost, 127.0.0.1, [::1]), or a private-use scheme URI, and must not contain a fragment. Leave empty for no redirect.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" @@ -5635,8 +5892,8 @@ "type": "object", "properties": { "labels": { - "type": "array", "description": "Array of application labels. Replaces the previous labels. Maximum of 1000 labels are allowed, each up to 36 alphanumeric characters long.", + "type": "array", "items": { "type": "string" } @@ -6012,8 +6269,8 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "Team ID of the team to transfer application to.", + "type": "string", "example": "<TEAM_ID>" } }, @@ -6148,38 +6405,106 @@ "schema": { "type": "string", "example": "aa", - "enum": [ - "aa", - "an", - "ch", - "ci", - "cm", - "cr", - "ff", - "sf", - "mf", - "ps", - "oi", - "om", - "op", - "on" - ], - "x-enum-name": "Browser", - "x-enum-keys": [ - "Avant Browser", - "Android WebView Beta", - "Google Chrome", - "Google Chrome (iOS)", - "Google Chrome (Mobile)", - "Chromium", - "Mozilla Firefox", - "Safari", - "Mobile Safari", - "Microsoft Edge", - "Microsoft Edge (iOS)", - "Opera Mini", - "Opera", - "Opera (Next)" + "title": "Browser", + "oneOf": [ + { + "type": "string", + "enum": [ + "aa" + ], + "title": "Avant Browser" + }, + { + "type": "string", + "enum": [ + "an" + ], + "title": "Android WebView Beta" + }, + { + "type": "string", + "enum": [ + "ch" + ], + "title": "Google Chrome" + }, + { + "type": "string", + "enum": [ + "ci" + ], + "title": "Google Chrome (iOS)" + }, + { + "type": "string", + "enum": [ + "cm" + ], + "title": "Google Chrome (Mobile)" + }, + { + "type": "string", + "enum": [ + "cr" + ], + "title": "Chromium" + }, + { + "type": "string", + "enum": [ + "ff" + ], + "title": "Mozilla Firefox" + }, + { + "type": "string", + "enum": [ + "sf" + ], + "title": "Safari" + }, + { + "type": "string", + "enum": [ + "mf" + ], + "title": "Mobile Safari" + }, + { + "type": "string", + "enum": [ + "ps" + ], + "title": "Microsoft Edge" + }, + { + "type": "string", + "enum": [ + "oi" + ], + "title": "Microsoft Edge (iOS)" + }, + { + "type": "string", + "enum": [ + "om" + ], + "title": "Opera Mini" + }, + { + "type": "string", + "enum": [ + "op" + ], + "title": "Opera" + }, + { + "type": "string", + "enum": [ + "on" + ], + "title": "Opera (Next)" + } ] }, "in": "path" @@ -6285,612 +6610,127 @@ "schema": { "type": "string", "example": "amex", - "enum": [ - "amex", - "argencard", - "cabal", - "cencosud", - "diners", - "discover", - "elo", - "hipercard", - "jcb", - "mastercard", - "naranja", - "targeta-shopping", - "unionpay", - "visa", - "mir", - "maestro", - "rupay" - ], - "x-enum-name": "CreditCard", - "x-enum-keys": [ - "American Express", - "Argencard", - "Cabal", - "Cencosud", - "Diners Club", - "Discover", - "Elo", - "Hipercard", - "JCB", - "Mastercard", - "Naranja", - "Tarjeta Shopping", - "Union Pay", - "Visa", - "MIR", - "Maestro", - "Rupay" - ] - }, - "in": "path" - }, - { - "name": "width", - "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 100 - }, - "in": "query" - }, - { - "name": "height", - "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 100 - }, - "in": "query" - }, - { - "name": "quality", - "description": "Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": -1, - "default": -1 - }, - "in": "query" - } - ] - } - }, - "\/avatars\/favicon": { - "get": { - "summary": "Get favicon", - "operationId": "avatarsGetFavicon", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to fetch the favorite icon (AKA favicon) of any remote website URL.\n\nThis endpoint does not follow HTTP redirects.", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/*": { - "schema": { + "title": "CreditCard", + "oneOf": [ + { "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-favicon.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-favicon.md", - "auth": { - "Project": [], - "Session": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "Key": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "url", - "description": "Website URL which you want to fetch the favicon from.", - "required": true, - "schema": { - "type": "string", - "format": "url", - "example": "https:\/\/example.com" - }, - "in": "query" - } - ] - } - }, - "\/avatars\/flags\/{code}": { - "get": { - "summary": "Get country flag", - "operationId": "avatarsGetFlag", - "tags": [ - "avatars" - ], - "description": "You can use this endpoint to show different country flags icons to your users. The code argument receives the 2 letter country code. Use width, height and quality arguments to change the output settings. Country codes follow the [ISO 3166-1](https:\/\/en.wikipedia.org\/wiki\/ISO_3166-1) standard.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { + "enum": [ + "amex" + ], + "title": "American Express" + }, + { "type": "string", - "format": "binary" + "enum": [ + "argencard" + ], + "title": "Argencard" + }, + { + "type": "string", + "enum": [ + "cabal" + ], + "title": "Cabal" + }, + { + "type": "string", + "enum": [ + "cencosud" + ], + "title": "Cencosud" + }, + { + "type": "string", + "enum": [ + "diners" + ], + "title": "Diners Club" + }, + { + "type": "string", + "enum": [ + "discover" + ], + "title": "Discover" + }, + { + "type": "string", + "enum": [ + "elo" + ], + "title": "Elo" + }, + { + "type": "string", + "enum": [ + "hipercard" + ], + "title": "Hipercard" + }, + { + "type": "string", + "enum": [ + "jcb" + ], + "title": "JCB" + }, + { + "type": "string", + "enum": [ + "mastercard" + ], + "title": "Mastercard" + }, + { + "type": "string", + "enum": [ + "naranja" + ], + "title": "Naranja" + }, + { + "type": "string", + "enum": [ + "targeta-shopping" + ], + "title": "Tarjeta Shopping" + }, + { + "type": "string", + "enum": [ + "unionpay" + ], + "title": "Union Pay" + }, + { + "type": "string", + "enum": [ + "visa" + ], + "title": "Visa" + }, + { + "type": "string", + "enum": [ + "mir" + ], + "title": "MIR" + }, + { + "type": "string", + "enum": [ + "maestro" + ], + "title": "Maestro" + }, + { + "type": "string", + "enum": [ + "rupay" + ], + "title": "Rupay" } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-flag.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-flag.md", - "auth": { - "Project": [], - "Session": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "Key": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "code", - "description": "Country Code. ISO Alpha-2 country code format.", - "required": true, - "schema": { - "type": "string", - "example": "af", - "enum": [ - "af", - "ao", - "al", - "ad", - "ae", - "ar", - "am", - "ag", - "au", - "at", - "az", - "bi", - "be", - "bj", - "bf", - "bd", - "bg", - "bh", - "bs", - "ba", - "by", - "bz", - "bo", - "br", - "bb", - "bn", - "bt", - "bw", - "cf", - "ca", - "ch", - "cl", - "cn", - "ci", - "cm", - "cd", - "cg", - "co", - "km", - "cv", - "cr", - "cu", - "cy", - "cz", - "de", - "dj", - "dm", - "dk", - "do", - "dz", - "ec", - "eg", - "er", - "es", - "ee", - "et", - "fi", - "fj", - "fr", - "fm", - "ga", - "gb", - "ge", - "gh", - "gn", - "gm", - "gw", - "gq", - "gr", - "gd", - "gt", - "gy", - "hn", - "hr", - "ht", - "hu", - "id", - "in", - "ie", - "ir", - "iq", - "is", - "il", - "it", - "jm", - "jo", - "jp", - "kz", - "ke", - "kg", - "kh", - "ki", - "kn", - "kr", - "kw", - "la", - "lb", - "lr", - "ly", - "lc", - "li", - "lk", - "ls", - "lt", - "lu", - "lv", - "ma", - "mc", - "md", - "mg", - "mv", - "mx", - "mh", - "mk", - "ml", - "mt", - "mm", - "me", - "mn", - "mz", - "mr", - "mu", - "mw", - "my", - "na", - "ne", - "ng", - "ni", - "nl", - "no", - "np", - "nr", - "nz", - "om", - "pk", - "pa", - "pe", - "ph", - "pw", - "pg", - "pl", - "pf", - "kp", - "pt", - "py", - "qa", - "ro", - "ru", - "rw", - "sa", - "sd", - "sn", - "sg", - "sb", - "sl", - "sv", - "sm", - "so", - "rs", - "ss", - "st", - "sr", - "sk", - "si", - "se", - "sz", - "sc", - "sy", - "td", - "tg", - "th", - "tj", - "tm", - "tl", - "to", - "tt", - "tn", - "tr", - "tv", - "tz", - "ug", - "ua", - "uy", - "us", - "uz", - "va", - "vc", - "ve", - "vn", - "vu", - "ws", - "ye", - "za", - "zm", - "zw" - ], - "x-enum-name": "Flag", - "x-enum-keys": [ - "Afghanistan", - "Angola", - "Albania", - "Andorra", - "United Arab Emirates", - "Argentina", - "Armenia", - "Antigua and Barbuda", - "Australia", - "Austria", - "Azerbaijan", - "Burundi", - "Belgium", - "Benin", - "Burkina Faso", - "Bangladesh", - "Bulgaria", - "Bahrain", - "Bahamas", - "Bosnia and Herzegovina", - "Belarus", - "Belize", - "Bolivia", - "Brazil", - "Barbados", - "Brunei Darussalam", - "Bhutan", - "Botswana", - "Central African Republic", - "Canada", - "Switzerland", - "Chile", - "China", - "C\u00f4te d'Ivoire", - "Cameroon", - "Democratic Republic of the Congo", - "Republic of the Congo", - "Colombia", - "Comoros", - "Cape Verde", - "Costa Rica", - "Cuba", - "Cyprus", - "Czech Republic", - "Germany", - "Djibouti", - "Dominica", - "Denmark", - "Dominican Republic", - "Algeria", - "Ecuador", - "Egypt", - "Eritrea", - "Spain", - "Estonia", - "Ethiopia", - "Finland", - "Fiji", - "France", - "Micronesia (Federated States of)", - "Gabon", - "United Kingdom", - "Georgia", - "Ghana", - "Guinea", - "Gambia", - "Guinea-Bissau", - "Equatorial Guinea", - "Greece", - "Grenada", - "Guatemala", - "Guyana", - "Honduras", - "Croatia", - "Haiti", - "Hungary", - "Indonesia", - "India", - "Ireland", - "Iran (Islamic Republic of)", - "Iraq", - "Iceland", - "Israel", - "Italy", - "Jamaica", - "Jordan", - "Japan", - "Kazakhstan", - "Kenya", - "Kyrgyzstan", - "Cambodia", - "Kiribati", - "Saint Kitts and Nevis", - "South Korea", - "Kuwait", - "Lao People's Democratic Republic", - "Lebanon", - "Liberia", - "Libya", - "Saint Lucia", - "Liechtenstein", - "Sri Lanka", - "Lesotho", - "Lithuania", - "Luxembourg", - "Latvia", - "Morocco", - "Monaco", - "Moldova", - "Madagascar", - "Maldives", - "Mexico", - "Marshall Islands", - "North Macedonia", - "Mali", - "Malta", - "Myanmar", - "Montenegro", - "Mongolia", - "Mozambique", - "Mauritania", - "Mauritius", - "Malawi", - "Malaysia", - "Namibia", - "Niger", - "Nigeria", - "Nicaragua", - "Netherlands", - "Norway", - "Nepal", - "Nauru", - "New Zealand", - "Oman", - "Pakistan", - "Panama", - "Peru", - "Philippines", - "Palau", - "Papua New Guinea", - "Poland", - "French Polynesia", - "North Korea", - "Portugal", - "Paraguay", - "Qatar", - "Romania", - "Russia", - "Rwanda", - "Saudi Arabia", - "Sudan", - "Senegal", - "Singapore", - "Solomon Islands", - "Sierra Leone", - "El Salvador", - "San Marino", - "Somalia", - "Serbia", - "South Sudan", - "Sao Tome and Principe", - "Suriname", - "Slovakia", - "Slovenia", - "Sweden", - "Eswatini", - "Seychelles", - "Syria", - "Chad", - "Togo", - "Thailand", - "Tajikistan", - "Turkmenistan", - "Timor-Leste", - "Tonga", - "Trinidad and Tobago", - "Tunisia", - "Turkey", - "Tuvalu", - "Tanzania", - "Uganda", - "Ukraine", - "Uruguay", - "United States", - "Uzbekistan", - "Vatican City", - "Saint Vincent and the Grenadines", - "Venezuela", - "Vietnam", - "Vanuatu", - "Samoa", - "Yemen", - "South Africa", - "Zambia", - "Zimbabwe" ] }, "in": "path" @@ -6934,14 +6774,14 @@ ] } }, - "\/avatars\/image": { + "\/avatars\/favicon": { "get": { - "summary": "Get image from URL", - "operationId": "avatarsGetImage", + "summary": "Get favicon", + "operationId": "avatarsGetFavicon", "tags": [ "avatars" ], - "description": "Use this endpoint to fetch a remote image URL and crop it to any image size you want. This endpoint is very useful if you need to crop and display remote images in your app or in case you want to make sure a 3rd party image is properly served using a TLS protocol.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 400x400px.\n\nThis endpoint does not follow HTTP redirects.", + "description": "Use this endpoint to fetch the favorite icon (AKA favicon) of any remote website URL.\n\nThis endpoint does not follow HTTP redirects.", "responses": { "200": { "description": "Image", @@ -6960,7 +6800,7 @@ "group": null, "cookies": false, "type": "location", - "demo": "avatars\/get-image.md", + "demo": "avatars\/get-favicon.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -6972,7 +6812,7 @@ ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-favicon.md", "auth": { "Project": [], "Session": [], @@ -6991,7 +6831,7 @@ "parameters": [ { "name": "url", - "description": "Image URL which you want to crop.", + "description": "Website URL which you want to fetch the favicon from.", "required": true, "schema": { "type": "string", @@ -6999,145 +6839,18 @@ "example": "https:\/\/example.com" }, "in": "query" - }, - { - "name": "width", - "description": "Resize preview image width, Pass an integer between 0 to 2000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 400 - }, - "in": "query" - }, - { - "name": "height", - "description": "Resize preview image height, Pass an integer between 0 to 2000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 400 - }, - "in": "query" - } - ] - } - }, - "\/avatars\/initials": { - "get": { - "summary": "Get user initials", - "operationId": "avatarsGetInitials", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to show your user initials avatar icon on your website or app. By default, this route will try to print your logged-in user name or email initials. You can also overwrite the user name if you pass the 'name' parameter. If no name is given and no user is logged, an empty avatar will be returned.\n\nYou can use the color and background params to change the avatar colors. By default, a random theme will be selected. The random theme will persist for the user's initials when reloading the same theme will always return for the same initials.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { - "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-initials.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md", - "auth": { - "Project": [], - "Session": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "Key": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "name", - "description": "Full Name. When empty, current user name or email will be used. Max length: 128 chars.", - "required": false, - "schema": { - "type": "string", - "example": "<NAME>", - "default": "" - }, - "in": "query" - }, - { - "name": "width", - "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 500 - }, - "in": "query" - }, - { - "name": "height", - "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 500 - }, - "in": "query" - }, - { - "name": "background", - "description": "Changes background color. By default a random color will be picked and stay will persistent to the given name.", - "required": false, - "schema": { - "type": "string", - "default": "" - }, - "in": "query" } ] } }, - "\/avatars\/qr": { + "\/avatars\/flags\/{code}": { "get": { - "summary": "Get QR code", - "operationId": "avatarsGetQR", + "summary": "Get country flag", + "operationId": "avatarsGetFlag", "tags": [ "avatars" ], - "description": "Converts a given plain text to a QR code image. You can use the query parameters to change the size and style of the resulting image.\n", + "description": "You can use this endpoint to show different country flags icons to your users. The code argument receives the 2 letter country code. Use width, height and quality arguments to change the output settings. Country codes follow the [ISO 3166-1](https:\/\/en.wikipedia.org\/wiki\/ISO_3166-1) standard.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", "responses": { "200": { "description": "Image", @@ -7156,7 +6869,7 @@ "group": null, "cookies": false, "type": "location", - "demo": "avatars\/get-qr.md", + "demo": "avatars\/get-flag.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -7168,7 +6881,7 @@ ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-flag.md", "auth": { "Project": [], "Session": [], @@ -7186,1272 +6899,5289 @@ ], "parameters": [ { - "name": "text", - "description": "Plain text to be converted to QR code image.", + "name": "code", + "description": "Country Code. ISO Alpha-2 country code format.", "required": true, "schema": { "type": "string", - "example": "<TEXT>" - }, - "in": "query" - }, - { - "name": "size", - "description": "QR code size. Pass an integer between 1 to 1000. Defaults to 400.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1, - "default": 400 - }, - "in": "query" - }, - { - "name": "margin", - "description": "Margin from edge. Pass an integer between 0 to 10. Defaults to 1.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 1 - }, - "in": "query" - }, - { - "name": "download", - "description": "Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": false - }, - "in": "query" - } - ] - } - }, - "\/avatars\/screenshots": { - "get": { - "summary": "Get webpage screenshot", - "operationId": "avatarsGetScreenshot", - "tags": [ - "avatars" - ], - "description": "Use this endpoint to capture a screenshot of any website URL. This endpoint uses a headless browser to render the webpage and capture it as an image.\n\nYou can configure the browser viewport size, theme, user agent, geolocation, permissions, and more. Capture either just the viewport or the full page scroll.\n\nWhen width and height are specified, the image is resized accordingly. If both dimensions are 0, the API provides an image at original size. If dimensions are not specified, the default viewport size is 1280x720px.", - "responses": { - "200": { - "description": "Image", - "content": { - "image\/png": { - "schema": { + "example": "af", + "title": "Flag", + "oneOf": [ + { "type": "string", - "format": "binary" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": null, - "cookies": false, - "type": "location", - "demo": "avatars\/get-screenshot.md", - "rate-limit": 60, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "avatars.read", - "platforms": [ - "console", - "client", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-screenshot.md", - "auth": { - "Project": [], - "Session": [], - "ImpersonateUserId": [] - } - }, - "security": [ - { - "Project": [], - "Session": [], - "Key": [], - "JWT": [], - "ImpersonateUserId": [] - } - ], - "parameters": [ - { - "name": "url", - "description": "Website URL which you want to capture.", - "required": true, - "schema": { - "type": "string", - "format": "url", - "example": "https:\/\/example.com" - }, - "in": "query" - }, - { - "name": "headers", - "description": "HTTP headers to send with the browser request. Defaults to empty.", - "required": false, - "schema": { - "type": "object", - "default": [], - "example": { - "Authorization": "Bearer token123", - "X-Custom-Header": "value" - } - }, - "in": "query" - }, - { - "name": "viewportWidth", - "description": "Browser viewport width. Pass an integer between 1 to 1920. Defaults to 1280.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1920, - "default": 1280 - }, - "in": "query" - }, - { - "name": "viewportHeight", - "description": "Browser viewport height. Pass an integer between 1 to 1080. Defaults to 720.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1080, - "default": 720 - }, - "in": "query" - }, - { - "name": "scale", - "description": "Browser scale factor. Pass a number between 0.1 to 3. Defaults to 1.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": 2, - "default": 1 - }, - "in": "query" - }, - { - "name": "theme", - "description": "Browser theme. Pass \"light\" or \"dark\". Defaults to \"light\".", - "required": false, - "schema": { - "type": "string", - "example": "dark", - "enum": [ - "light", - "dark" - ], - "x-enum-name": "BrowserTheme", - "x-enum-keys": [ - "light", - "dark" - ], - "default": "light" - }, - "in": "query" - }, - { - "name": "userAgent", - "description": "Custom user agent string. Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "Mozilla\/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit\/605.1.15", - "default": "" - }, - "in": "query" - }, - { - "name": "fullpage", - "description": "Capture full page scroll. Pass 0 for viewport only, or 1 for full page. Defaults to 0.", - "required": false, - "schema": { - "type": "boolean", - "example": true, - "default": false - }, - "in": "query" - }, - { - "name": "locale", - "description": "Browser locale (e.g., \"en-US\", \"fr-FR\"). Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "en-US", - "default": "" - }, - "in": "query" - }, - { - "name": "timezone", - "description": "IANA timezone identifier (e.g., \"America\/New_York\", \"Europe\/London\"). Defaults to browser default.", - "required": false, - "schema": { - "type": "string", - "example": "America\/New_York", - "enum": [ - "africa\/abidjan", - "africa\/accra", - "africa\/addis_ababa", - "africa\/algiers", - "africa\/asmara", - "africa\/bamako", - "africa\/bangui", - "africa\/banjul", - "africa\/bissau", - "africa\/blantyre", - "africa\/brazzaville", - "africa\/bujumbura", - "africa\/cairo", - "africa\/casablanca", - "africa\/ceuta", - "africa\/conakry", - "africa\/dakar", - "africa\/dar_es_salaam", - "africa\/djibouti", - "africa\/douala", - "africa\/el_aaiun", - "africa\/freetown", - "africa\/gaborone", - "africa\/harare", - "africa\/johannesburg", - "africa\/juba", - "africa\/kampala", - "africa\/khartoum", - "africa\/kigali", - "africa\/kinshasa", - "africa\/lagos", - "africa\/libreville", - "africa\/lome", - "africa\/luanda", - "africa\/lubumbashi", - "africa\/lusaka", - "africa\/malabo", - "africa\/maputo", - "africa\/maseru", - "africa\/mbabane", - "africa\/mogadishu", - "africa\/monrovia", - "africa\/nairobi", - "africa\/ndjamena", - "africa\/niamey", - "africa\/nouakchott", - "africa\/ouagadougou", - "africa\/porto-novo", - "africa\/sao_tome", - "africa\/tripoli", - "africa\/tunis", - "africa\/windhoek", - "america\/adak", - "america\/anchorage", - "america\/anguilla", - "america\/antigua", - "america\/araguaina", - "america\/argentina\/buenos_aires", - "america\/argentina\/catamarca", - "america\/argentina\/cordoba", - "america\/argentina\/jujuy", - "america\/argentina\/la_rioja", - "america\/argentina\/mendoza", - "america\/argentina\/rio_gallegos", - "america\/argentina\/salta", - "america\/argentina\/san_juan", - "america\/argentina\/san_luis", - "america\/argentina\/tucuman", - "america\/argentina\/ushuaia", - "america\/aruba", - "america\/asuncion", - "america\/atikokan", - "america\/bahia", - "america\/bahia_banderas", - "america\/barbados", - "america\/belem", - "america\/belize", - "america\/blanc-sablon", - "america\/boa_vista", - "america\/bogota", - "america\/boise", - "america\/cambridge_bay", - "america\/campo_grande", - "america\/cancun", - "america\/caracas", - "america\/cayenne", - "america\/cayman", - "america\/chicago", - "america\/chihuahua", - "america\/ciudad_juarez", - "america\/costa_rica", - "america\/coyhaique", - "america\/creston", - "america\/cuiaba", - "america\/curacao", - "america\/danmarkshavn", - "america\/dawson", - "america\/dawson_creek", - "america\/denver", - "america\/detroit", - "america\/dominica", - "america\/edmonton", - "america\/eirunepe", - "america\/el_salvador", - "america\/fort_nelson", - "america\/fortaleza", - "america\/glace_bay", - "america\/goose_bay", - "america\/grand_turk", - "america\/grenada", - "america\/guadeloupe", - "america\/guatemala", - "america\/guayaquil", - "america\/guyana", - "america\/halifax", - "america\/havana", - "america\/hermosillo", - "america\/indiana\/indianapolis", - "america\/indiana\/knox", - "america\/indiana\/marengo", - "america\/indiana\/petersburg", - "america\/indiana\/tell_city", - "america\/indiana\/vevay", - "america\/indiana\/vincennes", - "america\/indiana\/winamac", - "america\/inuvik", - "america\/iqaluit", - "america\/jamaica", - "america\/juneau", - "america\/kentucky\/louisville", - "america\/kentucky\/monticello", - "america\/kralendijk", - "america\/la_paz", - "america\/lima", - "america\/los_angeles", - "america\/lower_princes", - "america\/maceio", - "america\/managua", - "america\/manaus", - "america\/marigot", - "america\/martinique", - "america\/matamoros", - "america\/mazatlan", - "america\/menominee", - "america\/merida", - "america\/metlakatla", - "america\/mexico_city", - "america\/miquelon", - "america\/moncton", - "america\/monterrey", - "america\/montevideo", - "america\/montserrat", - "america\/nassau", - "america\/new_york", - "america\/nome", - "america\/noronha", - "america\/north_dakota\/beulah", - "america\/north_dakota\/center", - "america\/north_dakota\/new_salem", - "america\/nuuk", - "america\/ojinaga", - "america\/panama", - "america\/paramaribo", - "america\/phoenix", - "america\/port-au-prince", - "america\/port_of_spain", - "america\/porto_velho", - "america\/puerto_rico", - "america\/punta_arenas", - "america\/rankin_inlet", - "america\/recife", - "america\/regina", - "america\/resolute", - "america\/rio_branco", - "america\/santarem", - "america\/santiago", - "america\/santo_domingo", - "america\/sao_paulo", - "america\/scoresbysund", - "america\/sitka", - "america\/st_barthelemy", - "america\/st_johns", - "america\/st_kitts", - "america\/st_lucia", - "america\/st_thomas", - "america\/st_vincent", - "america\/swift_current", - "america\/tegucigalpa", - "america\/thule", - "america\/tijuana", - "america\/toronto", - "america\/tortola", - "america\/vancouver", - "america\/whitehorse", - "america\/winnipeg", - "america\/yakutat", - "antarctica\/casey", - "antarctica\/davis", - "antarctica\/dumontdurville", - "antarctica\/macquarie", - "antarctica\/mawson", - "antarctica\/mcmurdo", - "antarctica\/palmer", - "antarctica\/rothera", - "antarctica\/syowa", - "antarctica\/troll", - "antarctica\/vostok", - "arctic\/longyearbyen", - "asia\/aden", - "asia\/almaty", - "asia\/amman", - "asia\/anadyr", - "asia\/aqtau", - "asia\/aqtobe", - "asia\/ashgabat", - "asia\/atyrau", - "asia\/baghdad", - "asia\/bahrain", - "asia\/baku", - "asia\/bangkok", - "asia\/barnaul", - "asia\/beirut", - "asia\/bishkek", - "asia\/brunei", - "asia\/chita", - "asia\/colombo", - "asia\/damascus", - "asia\/dhaka", - "asia\/dili", - "asia\/dubai", - "asia\/dushanbe", - "asia\/famagusta", - "asia\/gaza", - "asia\/hebron", - "asia\/ho_chi_minh", - "asia\/hong_kong", - "asia\/hovd", - "asia\/irkutsk", - "asia\/jakarta", - "asia\/jayapura", - "asia\/jerusalem", - "asia\/kabul", - "asia\/kamchatka", - "asia\/karachi", - "asia\/kathmandu", - "asia\/khandyga", - "asia\/kolkata", - "asia\/krasnoyarsk", - "asia\/kuala_lumpur", - "asia\/kuching", - "asia\/kuwait", - "asia\/macau", - "asia\/magadan", - "asia\/makassar", - "asia\/manila", - "asia\/muscat", - "asia\/nicosia", - "asia\/novokuznetsk", - "asia\/novosibirsk", - "asia\/omsk", - "asia\/oral", - "asia\/phnom_penh", - "asia\/pontianak", - "asia\/pyongyang", - "asia\/qatar", - "asia\/qostanay", - "asia\/qyzylorda", - "asia\/riyadh", - "asia\/sakhalin", - "asia\/samarkand", - "asia\/seoul", - "asia\/shanghai", - "asia\/singapore", - "asia\/srednekolymsk", - "asia\/taipei", - "asia\/tashkent", - "asia\/tbilisi", - "asia\/tehran", - "asia\/thimphu", - "asia\/tokyo", - "asia\/tomsk", - "asia\/ulaanbaatar", - "asia\/urumqi", - "asia\/ust-nera", - "asia\/vientiane", - "asia\/vladivostok", - "asia\/yakutsk", - "asia\/yangon", - "asia\/yekaterinburg", - "asia\/yerevan", - "atlantic\/azores", - "atlantic\/bermuda", - "atlantic\/canary", - "atlantic\/cape_verde", - "atlantic\/faroe", - "atlantic\/madeira", - "atlantic\/reykjavik", - "atlantic\/south_georgia", - "atlantic\/st_helena", - "atlantic\/stanley", - "australia\/adelaide", - "australia\/brisbane", - "australia\/broken_hill", - "australia\/darwin", - "australia\/eucla", - "australia\/hobart", - "australia\/lindeman", - "australia\/lord_howe", - "australia\/melbourne", - "australia\/perth", - "australia\/sydney", - "europe\/amsterdam", - "europe\/andorra", - "europe\/astrakhan", - "europe\/athens", - "europe\/belgrade", - "europe\/berlin", - "europe\/bratislava", - "europe\/brussels", - "europe\/bucharest", - "europe\/budapest", - "europe\/busingen", - "europe\/chisinau", - "europe\/copenhagen", - "europe\/dublin", - "europe\/gibraltar", - "europe\/guernsey", - "europe\/helsinki", - "europe\/isle_of_man", - "europe\/istanbul", - "europe\/jersey", - "europe\/kaliningrad", - "europe\/kirov", - "europe\/kyiv", - "europe\/lisbon", - "europe\/ljubljana", - "europe\/london", - "europe\/luxembourg", - "europe\/madrid", - "europe\/malta", - "europe\/mariehamn", - "europe\/minsk", - "europe\/monaco", - "europe\/moscow", - "europe\/oslo", - "europe\/paris", - "europe\/podgorica", - "europe\/prague", - "europe\/riga", - "europe\/rome", - "europe\/samara", - "europe\/san_marino", - "europe\/sarajevo", - "europe\/saratov", - "europe\/simferopol", - "europe\/skopje", - "europe\/sofia", - "europe\/stockholm", - "europe\/tallinn", - "europe\/tirane", - "europe\/ulyanovsk", - "europe\/vaduz", - "europe\/vatican", - "europe\/vienna", - "europe\/vilnius", - "europe\/volgograd", - "europe\/warsaw", - "europe\/zagreb", - "europe\/zurich", - "indian\/antananarivo", - "indian\/chagos", - "indian\/christmas", - "indian\/cocos", - "indian\/comoro", - "indian\/kerguelen", - "indian\/mahe", - "indian\/maldives", - "indian\/mauritius", - "indian\/mayotte", - "indian\/reunion", - "pacific\/apia", - "pacific\/auckland", - "pacific\/bougainville", - "pacific\/chatham", - "pacific\/chuuk", - "pacific\/easter", - "pacific\/efate", - "pacific\/fakaofo", - "pacific\/fiji", - "pacific\/funafuti", - "pacific\/galapagos", - "pacific\/gambier", - "pacific\/guadalcanal", - "pacific\/guam", - "pacific\/honolulu", - "pacific\/kanton", - "pacific\/kiritimati", - "pacific\/kosrae", - "pacific\/kwajalein", - "pacific\/majuro", - "pacific\/marquesas", - "pacific\/midway", - "pacific\/nauru", - "pacific\/niue", - "pacific\/norfolk", - "pacific\/noumea", - "pacific\/pago_pago", - "pacific\/palau", - "pacific\/pitcairn", - "pacific\/pohnpei", - "pacific\/port_moresby", - "pacific\/rarotonga", - "pacific\/saipan", - "pacific\/tahiti", - "pacific\/tarawa", - "pacific\/tongatapu", - "pacific\/wake", - "pacific\/wallis", - "utc" - ], - "x-enum-name": "Timezone", - "x-enum-keys": [ - "africa\/abidjan", - "africa\/accra", - "africa\/addis_ababa", - "africa\/algiers", - "africa\/asmara", - "africa\/bamako", - "africa\/bangui", - "africa\/banjul", - "africa\/bissau", - "africa\/blantyre", - "africa\/brazzaville", - "africa\/bujumbura", - "africa\/cairo", - "africa\/casablanca", - "africa\/ceuta", - "africa\/conakry", - "africa\/dakar", - "africa\/dar_es_salaam", - "africa\/djibouti", - "africa\/douala", - "africa\/el_aaiun", - "africa\/freetown", - "africa\/gaborone", - "africa\/harare", - "africa\/johannesburg", - "africa\/juba", - "africa\/kampala", - "africa\/khartoum", - "africa\/kigali", - "africa\/kinshasa", - "africa\/lagos", - "africa\/libreville", - "africa\/lome", - "africa\/luanda", - "africa\/lubumbashi", - "africa\/lusaka", - "africa\/malabo", - "africa\/maputo", - "africa\/maseru", - "africa\/mbabane", - "africa\/mogadishu", - "africa\/monrovia", - "africa\/nairobi", - "africa\/ndjamena", - "africa\/niamey", - "africa\/nouakchott", - "africa\/ouagadougou", - "africa\/porto-novo", - "africa\/sao_tome", - "africa\/tripoli", - "africa\/tunis", - "africa\/windhoek", - "america\/adak", - "america\/anchorage", - "america\/anguilla", - "america\/antigua", - "america\/araguaina", - "america\/argentina\/buenos_aires", - "america\/argentina\/catamarca", - "america\/argentina\/cordoba", - "america\/argentina\/jujuy", - "america\/argentina\/la_rioja", - "america\/argentina\/mendoza", - "america\/argentina\/rio_gallegos", - "america\/argentina\/salta", - "america\/argentina\/san_juan", - "america\/argentina\/san_luis", - "america\/argentina\/tucuman", - "america\/argentina\/ushuaia", - "america\/aruba", - "america\/asuncion", - "america\/atikokan", - "america\/bahia", - "america\/bahia_banderas", - "america\/barbados", - "america\/belem", - "america\/belize", - "america\/blanc-sablon", - "america\/boa_vista", - "america\/bogota", - "america\/boise", - "america\/cambridge_bay", - "america\/campo_grande", - "america\/cancun", - "america\/caracas", - "america\/cayenne", - "america\/cayman", - "america\/chicago", - "america\/chihuahua", - "america\/ciudad_juarez", - "america\/costa_rica", - "america\/coyhaique", - "america\/creston", - "america\/cuiaba", - "america\/curacao", - "america\/danmarkshavn", - "america\/dawson", - "america\/dawson_creek", - "america\/denver", - "america\/detroit", - "america\/dominica", - "america\/edmonton", - "america\/eirunepe", - "america\/el_salvador", - "america\/fort_nelson", - "america\/fortaleza", - "america\/glace_bay", - "america\/goose_bay", - "america\/grand_turk", - "america\/grenada", - "america\/guadeloupe", - "america\/guatemala", - "america\/guayaquil", - "america\/guyana", - "america\/halifax", - "america\/havana", - "america\/hermosillo", - "america\/indiana\/indianapolis", - "america\/indiana\/knox", - "america\/indiana\/marengo", - "america\/indiana\/petersburg", - "america\/indiana\/tell_city", - "america\/indiana\/vevay", - "america\/indiana\/vincennes", - "america\/indiana\/winamac", - "america\/inuvik", - "america\/iqaluit", - "america\/jamaica", - "america\/juneau", - "america\/kentucky\/louisville", - "america\/kentucky\/monticello", - "america\/kralendijk", - "america\/la_paz", - "america\/lima", - "america\/los_angeles", - "america\/lower_princes", - "america\/maceio", - "america\/managua", - "america\/manaus", - "america\/marigot", - "america\/martinique", - "america\/matamoros", - "america\/mazatlan", - "america\/menominee", - "america\/merida", - "america\/metlakatla", - "america\/mexico_city", - "america\/miquelon", - "america\/moncton", - "america\/monterrey", - "america\/montevideo", - "america\/montserrat", - "america\/nassau", - "america\/new_york", - "america\/nome", - "america\/noronha", - "america\/north_dakota\/beulah", - "america\/north_dakota\/center", - "america\/north_dakota\/new_salem", - "america\/nuuk", - "america\/ojinaga", - "america\/panama", - "america\/paramaribo", - "america\/phoenix", - "america\/port-au-prince", - "america\/port_of_spain", - "america\/porto_velho", - "america\/puerto_rico", - "america\/punta_arenas", - "america\/rankin_inlet", - "america\/recife", - "america\/regina", - "america\/resolute", - "america\/rio_branco", - "america\/santarem", - "america\/santiago", - "america\/santo_domingo", - "america\/sao_paulo", - "america\/scoresbysund", - "america\/sitka", - "america\/st_barthelemy", - "america\/st_johns", - "america\/st_kitts", - "america\/st_lucia", - "america\/st_thomas", - "america\/st_vincent", - "america\/swift_current", - "america\/tegucigalpa", - "america\/thule", - "america\/tijuana", - "america\/toronto", - "america\/tortola", - "america\/vancouver", - "america\/whitehorse", - "america\/winnipeg", - "america\/yakutat", - "antarctica\/casey", - "antarctica\/davis", - "antarctica\/dumontdurville", - "antarctica\/macquarie", - "antarctica\/mawson", - "antarctica\/mcmurdo", - "antarctica\/palmer", - "antarctica\/rothera", - "antarctica\/syowa", - "antarctica\/troll", - "antarctica\/vostok", - "arctic\/longyearbyen", - "asia\/aden", - "asia\/almaty", - "asia\/amman", - "asia\/anadyr", - "asia\/aqtau", - "asia\/aqtobe", - "asia\/ashgabat", - "asia\/atyrau", - "asia\/baghdad", - "asia\/bahrain", - "asia\/baku", - "asia\/bangkok", - "asia\/barnaul", - "asia\/beirut", - "asia\/bishkek", - "asia\/brunei", - "asia\/chita", - "asia\/colombo", - "asia\/damascus", - "asia\/dhaka", - "asia\/dili", - "asia\/dubai", - "asia\/dushanbe", - "asia\/famagusta", - "asia\/gaza", - "asia\/hebron", - "asia\/ho_chi_minh", - "asia\/hong_kong", - "asia\/hovd", - "asia\/irkutsk", - "asia\/jakarta", - "asia\/jayapura", - "asia\/jerusalem", - "asia\/kabul", - "asia\/kamchatka", - "asia\/karachi", - "asia\/kathmandu", - "asia\/khandyga", - "asia\/kolkata", - "asia\/krasnoyarsk", - "asia\/kuala_lumpur", - "asia\/kuching", - "asia\/kuwait", - "asia\/macau", - "asia\/magadan", - "asia\/makassar", - "asia\/manila", - "asia\/muscat", - "asia\/nicosia", - "asia\/novokuznetsk", - "asia\/novosibirsk", - "asia\/omsk", - "asia\/oral", - "asia\/phnom_penh", - "asia\/pontianak", - "asia\/pyongyang", - "asia\/qatar", - "asia\/qostanay", - "asia\/qyzylorda", - "asia\/riyadh", - "asia\/sakhalin", - "asia\/samarkand", - "asia\/seoul", - "asia\/shanghai", - "asia\/singapore", - "asia\/srednekolymsk", - "asia\/taipei", - "asia\/tashkent", - "asia\/tbilisi", - "asia\/tehran", - "asia\/thimphu", - "asia\/tokyo", - "asia\/tomsk", - "asia\/ulaanbaatar", - "asia\/urumqi", - "asia\/ust-nera", - "asia\/vientiane", - "asia\/vladivostok", - "asia\/yakutsk", - "asia\/yangon", - "asia\/yekaterinburg", - "asia\/yerevan", - "atlantic\/azores", - "atlantic\/bermuda", - "atlantic\/canary", - "atlantic\/cape_verde", - "atlantic\/faroe", - "atlantic\/madeira", - "atlantic\/reykjavik", - "atlantic\/south_georgia", - "atlantic\/st_helena", - "atlantic\/stanley", - "australia\/adelaide", - "australia\/brisbane", - "australia\/broken_hill", - "australia\/darwin", - "australia\/eucla", - "australia\/hobart", - "australia\/lindeman", - "australia\/lord_howe", - "australia\/melbourne", - "australia\/perth", - "australia\/sydney", - "europe\/amsterdam", - "europe\/andorra", - "europe\/astrakhan", - "europe\/athens", - "europe\/belgrade", - "europe\/berlin", - "europe\/bratislava", - "europe\/brussels", - "europe\/bucharest", - "europe\/budapest", - "europe\/busingen", - "europe\/chisinau", - "europe\/copenhagen", - "europe\/dublin", - "europe\/gibraltar", - "europe\/guernsey", - "europe\/helsinki", - "europe\/isle_of_man", - "europe\/istanbul", - "europe\/jersey", - "europe\/kaliningrad", - "europe\/kirov", - "europe\/kyiv", - "europe\/lisbon", - "europe\/ljubljana", - "europe\/london", - "europe\/luxembourg", - "europe\/madrid", - "europe\/malta", - "europe\/mariehamn", - "europe\/minsk", - "europe\/monaco", - "europe\/moscow", - "europe\/oslo", - "europe\/paris", - "europe\/podgorica", - "europe\/prague", - "europe\/riga", - "europe\/rome", - "europe\/samara", - "europe\/san_marino", - "europe\/sarajevo", - "europe\/saratov", - "europe\/simferopol", - "europe\/skopje", - "europe\/sofia", - "europe\/stockholm", - "europe\/tallinn", - "europe\/tirane", - "europe\/ulyanovsk", - "europe\/vaduz", - "europe\/vatican", - "europe\/vienna", - "europe\/vilnius", - "europe\/volgograd", - "europe\/warsaw", - "europe\/zagreb", - "europe\/zurich", - "indian\/antananarivo", - "indian\/chagos", - "indian\/christmas", - "indian\/cocos", - "indian\/comoro", - "indian\/kerguelen", - "indian\/mahe", - "indian\/maldives", - "indian\/mauritius", - "indian\/mayotte", - "indian\/reunion", - "pacific\/apia", - "pacific\/auckland", - "pacific\/bougainville", - "pacific\/chatham", - "pacific\/chuuk", - "pacific\/easter", - "pacific\/efate", - "pacific\/fakaofo", - "pacific\/fiji", - "pacific\/funafuti", - "pacific\/galapagos", - "pacific\/gambier", - "pacific\/guadalcanal", - "pacific\/guam", - "pacific\/honolulu", - "pacific\/kanton", - "pacific\/kiritimati", - "pacific\/kosrae", - "pacific\/kwajalein", - "pacific\/majuro", - "pacific\/marquesas", - "pacific\/midway", - "pacific\/nauru", - "pacific\/niue", - "pacific\/norfolk", - "pacific\/noumea", - "pacific\/pago_pago", - "pacific\/palau", - "pacific\/pitcairn", - "pacific\/pohnpei", - "pacific\/port_moresby", - "pacific\/rarotonga", - "pacific\/saipan", - "pacific\/tahiti", - "pacific\/tarawa", - "pacific\/tongatapu", - "pacific\/wake", - "pacific\/wallis", - "utc" - ] - }, - "in": "query" - }, - { - "name": "latitude", - "description": "Geolocation latitude. Pass a number between -90 to 90. Defaults to 0.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": 37.7749, - "default": 0 - }, - "in": "query" - }, - { - "name": "longitude", - "description": "Geolocation longitude. Pass a number between -180 to 180. Defaults to 0.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": -122.4194, - "default": 0 - }, - "in": "query" - }, - { - "name": "accuracy", - "description": "Geolocation accuracy in meters. Pass a number between 0 to 100000. Defaults to 0.", - "required": false, - "schema": { - "type": "number", - "format": "float", - "example": 100, - "default": 0 - }, - "in": "query" - }, - { - "name": "touch", - "description": "Enable touch support. Pass 0 for no touch, or 1 for touch enabled. Defaults to 0.", - "required": false, - "schema": { - "type": "boolean", - "example": true, - "default": false - }, - "in": "query" - }, - { - "name": "permissions", - "description": "Browser permissions to grant. Pass an array of permission names like [\"geolocation\", \"camera\", \"microphone\"]. Defaults to empty.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "enum": [ - "geolocation", - "camera", - "microphone", - "notifications", - "midi", - "push", - "clipboard-read", - "clipboard-write", - "payment-handler", - "usb", - "bluetooth", - "accelerometer", - "gyroscope", - "magnetometer", - "ambient-light-sensor", - "background-sync", - "persistent-storage", - "screen-wake-lock", - "web-share", - "xr-spatial-tracking" - ], - "x-enum-name": "BrowserPermission", - "x-enum-keys": [ - "geolocation", - "camera", - "microphone", - "notifications", - "midi", - "push", - "clipboard-read", - "clipboard-write", - "payment-handler", - "usb", - "bluetooth", - "accelerometer", - "gyroscope", - "magnetometer", - "ambient-light-sensor", - "background-sync", - "persistent-storage", - "screen-wake-lock", - "web-share", - "xr-spatial-tracking" - ] - }, - "example": [ - "geolocation", - "notifications" - ], - "default": [] - }, - "in": "query" - }, - { - "name": "sleep", - "description": "Wait time in seconds before taking the screenshot. Pass an integer between 0 to 10. Defaults to 0.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 3, - "default": 0 - }, - "in": "query" - }, - { - "name": "width", - "description": "Output image width. Pass 0 to use original width, or an integer between 1 to 2000. Defaults to 0 (original width).", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 800, - "default": 0 - }, - "in": "query" - }, - { - "name": "height", - "description": "Output image height. Pass 0 to use original height, or an integer between 1 to 2000. Defaults to 0 (original height).", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 600, - "default": 0 - }, - "in": "query" - }, - { - "name": "quality", - "description": "Screenshot quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 85, - "default": -1 - }, - "in": "query" - }, - { - "name": "output", - "description": "Output format type (jpeg, jpg, png, gif and webp).", - "required": false, - "schema": { - "type": "string", - "example": "jpeg", - "enum": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" - ], - "x-enum-name": "ImageFormat", - "x-enum-keys": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" - ] - }, - "in": "query" - } - ] - } - }, - "\/backups\/archives": { - "get": { - "summary": "List archives", - "operationId": "backupsListArchives", - "tags": [ - "backups" - ], - "description": "List all archives for a project.", + "enum": [ + "af" + ], + "title": "Afghanistan" + }, + { + "type": "string", + "enum": [ + "ao" + ], + "title": "Angola" + }, + { + "type": "string", + "enum": [ + "al" + ], + "title": "Albania" + }, + { + "type": "string", + "enum": [ + "ad" + ], + "title": "Andorra" + }, + { + "type": "string", + "enum": [ + "ae" + ], + "title": "United Arab Emirates" + }, + { + "type": "string", + "enum": [ + "ar" + ], + "title": "Argentina" + }, + { + "type": "string", + "enum": [ + "am" + ], + "title": "Armenia" + }, + { + "type": "string", + "enum": [ + "ag" + ], + "title": "Antigua and Barbuda" + }, + { + "type": "string", + "enum": [ + "au" + ], + "title": "Australia" + }, + { + "type": "string", + "enum": [ + "at" + ], + "title": "Austria" + }, + { + "type": "string", + "enum": [ + "az" + ], + "title": "Azerbaijan" + }, + { + "type": "string", + "enum": [ + "bi" + ], + "title": "Burundi" + }, + { + "type": "string", + "enum": [ + "be" + ], + "title": "Belgium" + }, + { + "type": "string", + "enum": [ + "bj" + ], + "title": "Benin" + }, + { + "type": "string", + "enum": [ + "bf" + ], + "title": "Burkina Faso" + }, + { + "type": "string", + "enum": [ + "bd" + ], + "title": "Bangladesh" + }, + { + "type": "string", + "enum": [ + "bg" + ], + "title": "Bulgaria" + }, + { + "type": "string", + "enum": [ + "bh" + ], + "title": "Bahrain" + }, + { + "type": "string", + "enum": [ + "bs" + ], + "title": "Bahamas" + }, + { + "type": "string", + "enum": [ + "ba" + ], + "title": "Bosnia and Herzegovina" + }, + { + "type": "string", + "enum": [ + "by" + ], + "title": "Belarus" + }, + { + "type": "string", + "enum": [ + "bz" + ], + "title": "Belize" + }, + { + "type": "string", + "enum": [ + "bo" + ], + "title": "Bolivia" + }, + { + "type": "string", + "enum": [ + "br" + ], + "title": "Brazil" + }, + { + "type": "string", + "enum": [ + "bb" + ], + "title": "Barbados" + }, + { + "type": "string", + "enum": [ + "bn" + ], + "title": "Brunei Darussalam" + }, + { + "type": "string", + "enum": [ + "bt" + ], + "title": "Bhutan" + }, + { + "type": "string", + "enum": [ + "bw" + ], + "title": "Botswana" + }, + { + "type": "string", + "enum": [ + "cf" + ], + "title": "Central African Republic" + }, + { + "type": "string", + "enum": [ + "ca" + ], + "title": "Canada" + }, + { + "type": "string", + "enum": [ + "ch" + ], + "title": "Switzerland" + }, + { + "type": "string", + "enum": [ + "cl" + ], + "title": "Chile" + }, + { + "type": "string", + "enum": [ + "cn" + ], + "title": "China" + }, + { + "type": "string", + "enum": [ + "ci" + ], + "title": "C\u00f4te d'Ivoire" + }, + { + "type": "string", + "enum": [ + "cm" + ], + "title": "Cameroon" + }, + { + "type": "string", + "enum": [ + "cd" + ], + "title": "Democratic Republic of the Congo" + }, + { + "type": "string", + "enum": [ + "cg" + ], + "title": "Republic of the Congo" + }, + { + "type": "string", + "enum": [ + "co" + ], + "title": "Colombia" + }, + { + "type": "string", + "enum": [ + "km" + ], + "title": "Comoros" + }, + { + "type": "string", + "enum": [ + "cv" + ], + "title": "Cape Verde" + }, + { + "type": "string", + "enum": [ + "cr" + ], + "title": "Costa Rica" + }, + { + "type": "string", + "enum": [ + "cu" + ], + "title": "Cuba" + }, + { + "type": "string", + "enum": [ + "cy" + ], + "title": "Cyprus" + }, + { + "type": "string", + "enum": [ + "cz" + ], + "title": "Czech Republic" + }, + { + "type": "string", + "enum": [ + "de" + ], + "title": "Germany" + }, + { + "type": "string", + "enum": [ + "dj" + ], + "title": "Djibouti" + }, + { + "type": "string", + "enum": [ + "dm" + ], + "title": "Dominica" + }, + { + "type": "string", + "enum": [ + "dk" + ], + "title": "Denmark" + }, + { + "type": "string", + "enum": [ + "do" + ], + "title": "Dominican Republic" + }, + { + "type": "string", + "enum": [ + "dz" + ], + "title": "Algeria" + }, + { + "type": "string", + "enum": [ + "ec" + ], + "title": "Ecuador" + }, + { + "type": "string", + "enum": [ + "eg" + ], + "title": "Egypt" + }, + { + "type": "string", + "enum": [ + "er" + ], + "title": "Eritrea" + }, + { + "type": "string", + "enum": [ + "es" + ], + "title": "Spain" + }, + { + "type": "string", + "enum": [ + "ee" + ], + "title": "Estonia" + }, + { + "type": "string", + "enum": [ + "et" + ], + "title": "Ethiopia" + }, + { + "type": "string", + "enum": [ + "fi" + ], + "title": "Finland" + }, + { + "type": "string", + "enum": [ + "fj" + ], + "title": "Fiji" + }, + { + "type": "string", + "enum": [ + "fr" + ], + "title": "France" + }, + { + "type": "string", + "enum": [ + "fm" + ], + "title": "Micronesia (Federated States of)" + }, + { + "type": "string", + "enum": [ + "ga" + ], + "title": "Gabon" + }, + { + "type": "string", + "enum": [ + "gb" + ], + "title": "United Kingdom" + }, + { + "type": "string", + "enum": [ + "ge" + ], + "title": "Georgia" + }, + { + "type": "string", + "enum": [ + "gh" + ], + "title": "Ghana" + }, + { + "type": "string", + "enum": [ + "gn" + ], + "title": "Guinea" + }, + { + "type": "string", + "enum": [ + "gm" + ], + "title": "Gambia" + }, + { + "type": "string", + "enum": [ + "gw" + ], + "title": "Guinea-Bissau" + }, + { + "type": "string", + "enum": [ + "gq" + ], + "title": "Equatorial Guinea" + }, + { + "type": "string", + "enum": [ + "gr" + ], + "title": "Greece" + }, + { + "type": "string", + "enum": [ + "gd" + ], + "title": "Grenada" + }, + { + "type": "string", + "enum": [ + "gt" + ], + "title": "Guatemala" + }, + { + "type": "string", + "enum": [ + "gy" + ], + "title": "Guyana" + }, + { + "type": "string", + "enum": [ + "hn" + ], + "title": "Honduras" + }, + { + "type": "string", + "enum": [ + "hr" + ], + "title": "Croatia" + }, + { + "type": "string", + "enum": [ + "ht" + ], + "title": "Haiti" + }, + { + "type": "string", + "enum": [ + "hu" + ], + "title": "Hungary" + }, + { + "type": "string", + "enum": [ + "id" + ], + "title": "Indonesia" + }, + { + "type": "string", + "enum": [ + "in" + ], + "title": "India" + }, + { + "type": "string", + "enum": [ + "ie" + ], + "title": "Ireland" + }, + { + "type": "string", + "enum": [ + "ir" + ], + "title": "Iran (Islamic Republic of)" + }, + { + "type": "string", + "enum": [ + "iq" + ], + "title": "Iraq" + }, + { + "type": "string", + "enum": [ + "is" + ], + "title": "Iceland" + }, + { + "type": "string", + "enum": [ + "il" + ], + "title": "Israel" + }, + { + "type": "string", + "enum": [ + "it" + ], + "title": "Italy" + }, + { + "type": "string", + "enum": [ + "jm" + ], + "title": "Jamaica" + }, + { + "type": "string", + "enum": [ + "jo" + ], + "title": "Jordan" + }, + { + "type": "string", + "enum": [ + "jp" + ], + "title": "Japan" + }, + { + "type": "string", + "enum": [ + "kz" + ], + "title": "Kazakhstan" + }, + { + "type": "string", + "enum": [ + "ke" + ], + "title": "Kenya" + }, + { + "type": "string", + "enum": [ + "kg" + ], + "title": "Kyrgyzstan" + }, + { + "type": "string", + "enum": [ + "kh" + ], + "title": "Cambodia" + }, + { + "type": "string", + "enum": [ + "ki" + ], + "title": "Kiribati" + }, + { + "type": "string", + "enum": [ + "kn" + ], + "title": "Saint Kitts and Nevis" + }, + { + "type": "string", + "enum": [ + "kr" + ], + "title": "South Korea" + }, + { + "type": "string", + "enum": [ + "kw" + ], + "title": "Kuwait" + }, + { + "type": "string", + "enum": [ + "la" + ], + "title": "Lao People's Democratic Republic" + }, + { + "type": "string", + "enum": [ + "lb" + ], + "title": "Lebanon" + }, + { + "type": "string", + "enum": [ + "lr" + ], + "title": "Liberia" + }, + { + "type": "string", + "enum": [ + "ly" + ], + "title": "Libya" + }, + { + "type": "string", + "enum": [ + "lc" + ], + "title": "Saint Lucia" + }, + { + "type": "string", + "enum": [ + "li" + ], + "title": "Liechtenstein" + }, + { + "type": "string", + "enum": [ + "lk" + ], + "title": "Sri Lanka" + }, + { + "type": "string", + "enum": [ + "ls" + ], + "title": "Lesotho" + }, + { + "type": "string", + "enum": [ + "lt" + ], + "title": "Lithuania" + }, + { + "type": "string", + "enum": [ + "lu" + ], + "title": "Luxembourg" + }, + { + "type": "string", + "enum": [ + "lv" + ], + "title": "Latvia" + }, + { + "type": "string", + "enum": [ + "ma" + ], + "title": "Morocco" + }, + { + "type": "string", + "enum": [ + "mc" + ], + "title": "Monaco" + }, + { + "type": "string", + "enum": [ + "md" + ], + "title": "Moldova" + }, + { + "type": "string", + "enum": [ + "mg" + ], + "title": "Madagascar" + }, + { + "type": "string", + "enum": [ + "mv" + ], + "title": "Maldives" + }, + { + "type": "string", + "enum": [ + "mx" + ], + "title": "Mexico" + }, + { + "type": "string", + "enum": [ + "mh" + ], + "title": "Marshall Islands" + }, + { + "type": "string", + "enum": [ + "mk" + ], + "title": "North Macedonia" + }, + { + "type": "string", + "enum": [ + "ml" + ], + "title": "Mali" + }, + { + "type": "string", + "enum": [ + "mt" + ], + "title": "Malta" + }, + { + "type": "string", + "enum": [ + "mm" + ], + "title": "Myanmar" + }, + { + "type": "string", + "enum": [ + "me" + ], + "title": "Montenegro" + }, + { + "type": "string", + "enum": [ + "mn" + ], + "title": "Mongolia" + }, + { + "type": "string", + "enum": [ + "mz" + ], + "title": "Mozambique" + }, + { + "type": "string", + "enum": [ + "mr" + ], + "title": "Mauritania" + }, + { + "type": "string", + "enum": [ + "mu" + ], + "title": "Mauritius" + }, + { + "type": "string", + "enum": [ + "mw" + ], + "title": "Malawi" + }, + { + "type": "string", + "enum": [ + "my" + ], + "title": "Malaysia" + }, + { + "type": "string", + "enum": [ + "na" + ], + "title": "Namibia" + }, + { + "type": "string", + "enum": [ + "ne" + ], + "title": "Niger" + }, + { + "type": "string", + "enum": [ + "ng" + ], + "title": "Nigeria" + }, + { + "type": "string", + "enum": [ + "ni" + ], + "title": "Nicaragua" + }, + { + "type": "string", + "enum": [ + "nl" + ], + "title": "Netherlands" + }, + { + "type": "string", + "enum": [ + "no" + ], + "title": "Norway" + }, + { + "type": "string", + "enum": [ + "np" + ], + "title": "Nepal" + }, + { + "type": "string", + "enum": [ + "nr" + ], + "title": "Nauru" + }, + { + "type": "string", + "enum": [ + "nz" + ], + "title": "New Zealand" + }, + { + "type": "string", + "enum": [ + "om" + ], + "title": "Oman" + }, + { + "type": "string", + "enum": [ + "pk" + ], + "title": "Pakistan" + }, + { + "type": "string", + "enum": [ + "pa" + ], + "title": "Panama" + }, + { + "type": "string", + "enum": [ + "pe" + ], + "title": "Peru" + }, + { + "type": "string", + "enum": [ + "ph" + ], + "title": "Philippines" + }, + { + "type": "string", + "enum": [ + "pw" + ], + "title": "Palau" + }, + { + "type": "string", + "enum": [ + "pg" + ], + "title": "Papua New Guinea" + }, + { + "type": "string", + "enum": [ + "pl" + ], + "title": "Poland" + }, + { + "type": "string", + "enum": [ + "pf" + ], + "title": "French Polynesia" + }, + { + "type": "string", + "enum": [ + "kp" + ], + "title": "North Korea" + }, + { + "type": "string", + "enum": [ + "pt" + ], + "title": "Portugal" + }, + { + "type": "string", + "enum": [ + "py" + ], + "title": "Paraguay" + }, + { + "type": "string", + "enum": [ + "qa" + ], + "title": "Qatar" + }, + { + "type": "string", + "enum": [ + "ro" + ], + "title": "Romania" + }, + { + "type": "string", + "enum": [ + "ru" + ], + "title": "Russia" + }, + { + "type": "string", + "enum": [ + "rw" + ], + "title": "Rwanda" + }, + { + "type": "string", + "enum": [ + "sa" + ], + "title": "Saudi Arabia" + }, + { + "type": "string", + "enum": [ + "sd" + ], + "title": "Sudan" + }, + { + "type": "string", + "enum": [ + "sn" + ], + "title": "Senegal" + }, + { + "type": "string", + "enum": [ + "sg" + ], + "title": "Singapore" + }, + { + "type": "string", + "enum": [ + "sb" + ], + "title": "Solomon Islands" + }, + { + "type": "string", + "enum": [ + "sl" + ], + "title": "Sierra Leone" + }, + { + "type": "string", + "enum": [ + "sv" + ], + "title": "El Salvador" + }, + { + "type": "string", + "enum": [ + "sm" + ], + "title": "San Marino" + }, + { + "type": "string", + "enum": [ + "so" + ], + "title": "Somalia" + }, + { + "type": "string", + "enum": [ + "rs" + ], + "title": "Serbia" + }, + { + "type": "string", + "enum": [ + "ss" + ], + "title": "South Sudan" + }, + { + "type": "string", + "enum": [ + "st" + ], + "title": "Sao Tome and Principe" + }, + { + "type": "string", + "enum": [ + "sr" + ], + "title": "Suriname" + }, + { + "type": "string", + "enum": [ + "sk" + ], + "title": "Slovakia" + }, + { + "type": "string", + "enum": [ + "si" + ], + "title": "Slovenia" + }, + { + "type": "string", + "enum": [ + "se" + ], + "title": "Sweden" + }, + { + "type": "string", + "enum": [ + "sz" + ], + "title": "Eswatini" + }, + { + "type": "string", + "enum": [ + "sc" + ], + "title": "Seychelles" + }, + { + "type": "string", + "enum": [ + "sy" + ], + "title": "Syria" + }, + { + "type": "string", + "enum": [ + "td" + ], + "title": "Chad" + }, + { + "type": "string", + "enum": [ + "tg" + ], + "title": "Togo" + }, + { + "type": "string", + "enum": [ + "th" + ], + "title": "Thailand" + }, + { + "type": "string", + "enum": [ + "tj" + ], + "title": "Tajikistan" + }, + { + "type": "string", + "enum": [ + "tm" + ], + "title": "Turkmenistan" + }, + { + "type": "string", + "enum": [ + "tl" + ], + "title": "Timor-Leste" + }, + { + "type": "string", + "enum": [ + "to" + ], + "title": "Tonga" + }, + { + "type": "string", + "enum": [ + "tt" + ], + "title": "Trinidad and Tobago" + }, + { + "type": "string", + "enum": [ + "tn" + ], + "title": "Tunisia" + }, + { + "type": "string", + "enum": [ + "tr" + ], + "title": "Turkey" + }, + { + "type": "string", + "enum": [ + "tv" + ], + "title": "Tuvalu" + }, + { + "type": "string", + "enum": [ + "tz" + ], + "title": "Tanzania" + }, + { + "type": "string", + "enum": [ + "ug" + ], + "title": "Uganda" + }, + { + "type": "string", + "enum": [ + "ua" + ], + "title": "Ukraine" + }, + { + "type": "string", + "enum": [ + "uy" + ], + "title": "Uruguay" + }, + { + "type": "string", + "enum": [ + "us" + ], + "title": "United States" + }, + { + "type": "string", + "enum": [ + "uz" + ], + "title": "Uzbekistan" + }, + { + "type": "string", + "enum": [ + "va" + ], + "title": "Vatican City" + }, + { + "type": "string", + "enum": [ + "vc" + ], + "title": "Saint Vincent and the Grenadines" + }, + { + "type": "string", + "enum": [ + "ve" + ], + "title": "Venezuela" + }, + { + "type": "string", + "enum": [ + "vn" + ], + "title": "Vietnam" + }, + { + "type": "string", + "enum": [ + "vu" + ], + "title": "Vanuatu" + }, + { + "type": "string", + "enum": [ + "ws" + ], + "title": "Samoa" + }, + { + "type": "string", + "enum": [ + "ye" + ], + "title": "Yemen" + }, + { + "type": "string", + "enum": [ + "za" + ], + "title": "South Africa" + }, + { + "type": "string", + "enum": [ + "zm" + ], + "title": "Zambia" + }, + { + "type": "string", + "enum": [ + "zw" + ], + "title": "Zimbabwe" + } + ] + }, + "in": "path" + }, + { + "name": "width", + "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "height", + "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "quality", + "description": "Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": -1, + "default": -1 + }, + "in": "query" + } + ] + } + }, + "\/avatars\/image": { + "get": { + "summary": "Get image from URL", + "operationId": "avatarsGetImage", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to fetch a remote image URL and crop it to any image size you want. This endpoint is very useful if you need to crop and display remote images in your app or in case you want to make sure a 3rd party image is properly served using a TLS protocol.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 400x400px.\n\nThis endpoint does not follow HTTP redirects.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/*": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-image.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md", + "auth": { + "Project": [], + "Session": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "url", + "description": "Image URL which you want to crop.", + "required": true, + "schema": { + "type": "string", + "format": "url", + "example": "https:\/\/example.com" + }, + "in": "query" + }, + { + "name": "width", + "description": "Resize preview image width, Pass an integer between 0 to 2000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 400 + }, + "in": "query" + }, + { + "name": "height", + "description": "Resize preview image height, Pass an integer between 0 to 2000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 400 + }, + "in": "query" + } + ] + } + }, + "\/avatars\/initials": { + "get": { + "summary": "Get user initials", + "operationId": "avatarsGetInitials", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to show your user initials avatar icon on your website or app. By default, this route will try to print your logged-in user name or email initials. You can also overwrite the user name if you pass the 'name' parameter. If no name is given and no user is logged, an empty avatar will be returned.\n\nYou can use the color and background params to change the avatar colors. By default, a random theme will be selected. The random theme will persist for the user's initials when reloading the same theme will always return for the same initials.\n\nWhen one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.\n", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-initials.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md", + "auth": { + "Project": [], + "Session": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "name", + "description": "Full Name. When empty, current user name or email will be used. Max length: 128 chars.", + "required": false, + "schema": { + "type": "string", + "example": "<NAME>", + "default": "" + }, + "in": "query" + }, + { + "name": "width", + "description": "Image width. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 500 + }, + "in": "query" + }, + { + "name": "height", + "description": "Image height. Pass an integer between 0 to 2000. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 500 + }, + "in": "query" + }, + { + "name": "background", + "description": "Changes background color. By default a random color will be picked and stay will persistent to the given name.", + "required": false, + "schema": { + "type": "string", + "default": "" + }, + "in": "query" + } + ] + } + }, + "\/avatars\/photo": { + "get": { + "summary": "Get user photo", + "operationId": "avatarsGetPhoto", + "tags": [ + "avatars" + ], + "description": "Returns the best available profile photo for the currently authenticated user. The endpoint tries each source in priority order and returns the first successful result: Gravatar, Libavatar, Appwrite Initials, built-in static fallback file.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/*": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-photo.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Session": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "width", + "description": "Output image width in pixels. Pass an integer between 0 and 2000. Defaults to 256.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 256 + }, + "in": "query" + }, + { + "name": "height", + "description": "Output image height in pixels. Pass an integer between 0 and 2000. Defaults to 256.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 256 + }, + "in": "query" + }, + { + "name": "quality", + "description": "Output image quality between 0 and 100. Defaults to 100.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 100 + }, + "in": "query" + }, + { + "name": "output", + "description": "Output image format. Defaults to 'png'.", + "required": false, + "schema": { + "type": "string", + "example": "png", + "default": "png" + }, + "in": "query" + }, + { + "name": "rating", + "description": "Maximum image rating to fetch from Gravatar\/Libravatar. Defaults to 'g'.", + "required": false, + "schema": { + "type": "string", + "example": "g", + "default": "g" + }, + "in": "query" + } + ] + } + }, + "\/avatars\/qr": { + "get": { + "summary": "Get QR code", + "operationId": "avatarsGetQR", + "tags": [ + "avatars" + ], + "description": "Converts a given plain text to a QR code image. You can use the query parameters to change the size and style of the resulting image.\n", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-qr.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md", + "auth": { + "Project": [], + "Session": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "text", + "description": "Plain text to be converted to QR code image.", + "required": true, + "schema": { + "type": "string", + "example": "<TEXT>" + }, + "in": "query" + }, + { + "name": "size", + "description": "QR code size. Pass an integer between 1 to 1000. Defaults to 400.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1, + "default": 400 + }, + "in": "query" + }, + { + "name": "margin", + "description": "Margin from edge. Pass an integer between 0 to 10. Defaults to 1.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 1 + }, + "in": "query" + }, + { + "name": "download", + "description": "Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": false + }, + "in": "query" + } + ] + } + }, + "\/avatars\/screenshots": { + "get": { + "summary": "Get webpage screenshot", + "operationId": "avatarsGetScreenshot", + "tags": [ + "avatars" + ], + "description": "Use this endpoint to capture a screenshot of any website URL. This endpoint uses a headless browser to render the webpage and capture it as an image.\n\nYou can configure the browser viewport size, theme, user agent, geolocation, permissions, and more. Capture either just the viewport or the full page scroll.\n\nWhen width and height are specified, the image is resized accordingly. If both dimensions are 0, the API provides an image at original size. If dimensions are not specified, the default viewport size is 1280x720px.", + "responses": { + "200": { + "description": "Image", + "content": { + "image\/png": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": null, + "cookies": false, + "type": "location", + "demo": "avatars\/get-screenshot.md", + "rate-limit": 60, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "avatars.read", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-screenshot.md", + "auth": { + "Project": [], + "Session": [], + "ImpersonateUserId": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [], + "ImpersonateUserId": [] + } + ], + "parameters": [ + { + "name": "url", + "description": "Website URL which you want to capture.", + "required": true, + "schema": { + "type": "string", + "format": "url", + "example": "https:\/\/example.com" + }, + "in": "query" + }, + { + "name": "headers", + "description": "HTTP headers to send with the browser request. Defaults to empty.", + "required": false, + "schema": { + "type": "object", + "default": [], + "example": { + "Authorization": "Bearer token123", + "X-Custom-Header": "value" + } + }, + "in": "query" + }, + { + "name": "viewportWidth", + "description": "Browser viewport width. Pass an integer between 1 to 1920. Defaults to 1280.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1920, + "default": 1280 + }, + "in": "query" + }, + { + "name": "viewportHeight", + "description": "Browser viewport height. Pass an integer between 1 to 1080. Defaults to 720.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 1080, + "default": 720 + }, + "in": "query" + }, + { + "name": "scale", + "description": "Browser scale factor. Pass a number between 0.1 to 3. Defaults to 1.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": 2, + "default": 1 + }, + "in": "query" + }, + { + "name": "theme", + "description": "Browser theme. Pass \"light\" or \"dark\". Defaults to \"light\".", + "required": false, + "schema": { + "type": "string", + "example": "dark", + "title": "BrowserTheme", + "oneOf": [ + { + "type": "string", + "enum": [ + "light" + ], + "title": "light" + }, + { + "type": "string", + "enum": [ + "dark" + ], + "title": "dark" + } + ], + "default": "light" + }, + "in": "query" + }, + { + "name": "userAgent", + "description": "Custom user agent string. Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "Mozilla\/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit\/605.1.15", + "default": "" + }, + "in": "query" + }, + { + "name": "fullpage", + "description": "Capture full page scroll. Pass 0 for viewport only, or 1 for full page. Defaults to 0.", + "required": false, + "schema": { + "type": "boolean", + "example": true, + "default": false + }, + "in": "query" + }, + { + "name": "locale", + "description": "Browser locale (e.g., \"en-US\", \"fr-FR\"). Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "en-US", + "default": "" + }, + "in": "query" + }, + { + "name": "timezone", + "description": "IANA timezone identifier (e.g., \"America\/New_York\", \"Europe\/London\"). Defaults to browser default.", + "required": false, + "schema": { + "type": "string", + "example": "America\/New_York", + "title": "Timezone", + "oneOf": [ + { + "type": "string", + "enum": [ + "africa\/abidjan" + ], + "title": "africa\/abidjan" + }, + { + "type": "string", + "enum": [ + "africa\/accra" + ], + "title": "africa\/accra" + }, + { + "type": "string", + "enum": [ + "africa\/addis_ababa" + ], + "title": "africa\/addis_ababa" + }, + { + "type": "string", + "enum": [ + "africa\/algiers" + ], + "title": "africa\/algiers" + }, + { + "type": "string", + "enum": [ + "africa\/asmara" + ], + "title": "africa\/asmara" + }, + { + "type": "string", + "enum": [ + "africa\/bamako" + ], + "title": "africa\/bamako" + }, + { + "type": "string", + "enum": [ + "africa\/bangui" + ], + "title": "africa\/bangui" + }, + { + "type": "string", + "enum": [ + "africa\/banjul" + ], + "title": "africa\/banjul" + }, + { + "type": "string", + "enum": [ + "africa\/bissau" + ], + "title": "africa\/bissau" + }, + { + "type": "string", + "enum": [ + "africa\/blantyre" + ], + "title": "africa\/blantyre" + }, + { + "type": "string", + "enum": [ + "africa\/brazzaville" + ], + "title": "africa\/brazzaville" + }, + { + "type": "string", + "enum": [ + "africa\/bujumbura" + ], + "title": "africa\/bujumbura" + }, + { + "type": "string", + "enum": [ + "africa\/cairo" + ], + "title": "africa\/cairo" + }, + { + "type": "string", + "enum": [ + "africa\/casablanca" + ], + "title": "africa\/casablanca" + }, + { + "type": "string", + "enum": [ + "africa\/ceuta" + ], + "title": "africa\/ceuta" + }, + { + "type": "string", + "enum": [ + "africa\/conakry" + ], + "title": "africa\/conakry" + }, + { + "type": "string", + "enum": [ + "africa\/dakar" + ], + "title": "africa\/dakar" + }, + { + "type": "string", + "enum": [ + "africa\/dar_es_salaam" + ], + "title": "africa\/dar_es_salaam" + }, + { + "type": "string", + "enum": [ + "africa\/djibouti" + ], + "title": "africa\/djibouti" + }, + { + "type": "string", + "enum": [ + "africa\/douala" + ], + "title": "africa\/douala" + }, + { + "type": "string", + "enum": [ + "africa\/el_aaiun" + ], + "title": "africa\/el_aaiun" + }, + { + "type": "string", + "enum": [ + "africa\/freetown" + ], + "title": "africa\/freetown" + }, + { + "type": "string", + "enum": [ + "africa\/gaborone" + ], + "title": "africa\/gaborone" + }, + { + "type": "string", + "enum": [ + "africa\/harare" + ], + "title": "africa\/harare" + }, + { + "type": "string", + "enum": [ + "africa\/johannesburg" + ], + "title": "africa\/johannesburg" + }, + { + "type": "string", + "enum": [ + "africa\/juba" + ], + "title": "africa\/juba" + }, + { + "type": "string", + "enum": [ + "africa\/kampala" + ], + "title": "africa\/kampala" + }, + { + "type": "string", + "enum": [ + "africa\/khartoum" + ], + "title": "africa\/khartoum" + }, + { + "type": "string", + "enum": [ + "africa\/kigali" + ], + "title": "africa\/kigali" + }, + { + "type": "string", + "enum": [ + "africa\/kinshasa" + ], + "title": "africa\/kinshasa" + }, + { + "type": "string", + "enum": [ + "africa\/lagos" + ], + "title": "africa\/lagos" + }, + { + "type": "string", + "enum": [ + "africa\/libreville" + ], + "title": "africa\/libreville" + }, + { + "type": "string", + "enum": [ + "africa\/lome" + ], + "title": "africa\/lome" + }, + { + "type": "string", + "enum": [ + "africa\/luanda" + ], + "title": "africa\/luanda" + }, + { + "type": "string", + "enum": [ + "africa\/lubumbashi" + ], + "title": "africa\/lubumbashi" + }, + { + "type": "string", + "enum": [ + "africa\/lusaka" + ], + "title": "africa\/lusaka" + }, + { + "type": "string", + "enum": [ + "africa\/malabo" + ], + "title": "africa\/malabo" + }, + { + "type": "string", + "enum": [ + "africa\/maputo" + ], + "title": "africa\/maputo" + }, + { + "type": "string", + "enum": [ + "africa\/maseru" + ], + "title": "africa\/maseru" + }, + { + "type": "string", + "enum": [ + "africa\/mbabane" + ], + "title": "africa\/mbabane" + }, + { + "type": "string", + "enum": [ + "africa\/mogadishu" + ], + "title": "africa\/mogadishu" + }, + { + "type": "string", + "enum": [ + "africa\/monrovia" + ], + "title": "africa\/monrovia" + }, + { + "type": "string", + "enum": [ + "africa\/nairobi" + ], + "title": "africa\/nairobi" + }, + { + "type": "string", + "enum": [ + "africa\/ndjamena" + ], + "title": "africa\/ndjamena" + }, + { + "type": "string", + "enum": [ + "africa\/niamey" + ], + "title": "africa\/niamey" + }, + { + "type": "string", + "enum": [ + "africa\/nouakchott" + ], + "title": "africa\/nouakchott" + }, + { + "type": "string", + "enum": [ + "africa\/ouagadougou" + ], + "title": "africa\/ouagadougou" + }, + { + "type": "string", + "enum": [ + "africa\/porto-novo" + ], + "title": "africa\/porto-novo" + }, + { + "type": "string", + "enum": [ + "africa\/sao_tome" + ], + "title": "africa\/sao_tome" + }, + { + "type": "string", + "enum": [ + "africa\/tripoli" + ], + "title": "africa\/tripoli" + }, + { + "type": "string", + "enum": [ + "africa\/tunis" + ], + "title": "africa\/tunis" + }, + { + "type": "string", + "enum": [ + "africa\/windhoek" + ], + "title": "africa\/windhoek" + }, + { + "type": "string", + "enum": [ + "america\/adak" + ], + "title": "america\/adak" + }, + { + "type": "string", + "enum": [ + "america\/anchorage" + ], + "title": "america\/anchorage" + }, + { + "type": "string", + "enum": [ + "america\/anguilla" + ], + "title": "america\/anguilla" + }, + { + "type": "string", + "enum": [ + "america\/antigua" + ], + "title": "america\/antigua" + }, + { + "type": "string", + "enum": [ + "america\/araguaina" + ], + "title": "america\/araguaina" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/buenos_aires" + ], + "title": "america\/argentina\/buenos_aires" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/catamarca" + ], + "title": "america\/argentina\/catamarca" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/cordoba" + ], + "title": "america\/argentina\/cordoba" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/jujuy" + ], + "title": "america\/argentina\/jujuy" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/la_rioja" + ], + "title": "america\/argentina\/la_rioja" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/mendoza" + ], + "title": "america\/argentina\/mendoza" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/rio_gallegos" + ], + "title": "america\/argentina\/rio_gallegos" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/salta" + ], + "title": "america\/argentina\/salta" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/san_juan" + ], + "title": "america\/argentina\/san_juan" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/san_luis" + ], + "title": "america\/argentina\/san_luis" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/tucuman" + ], + "title": "america\/argentina\/tucuman" + }, + { + "type": "string", + "enum": [ + "america\/argentina\/ushuaia" + ], + "title": "america\/argentina\/ushuaia" + }, + { + "type": "string", + "enum": [ + "america\/aruba" + ], + "title": "america\/aruba" + }, + { + "type": "string", + "enum": [ + "america\/asuncion" + ], + "title": "america\/asuncion" + }, + { + "type": "string", + "enum": [ + "america\/atikokan" + ], + "title": "america\/atikokan" + }, + { + "type": "string", + "enum": [ + "america\/bahia" + ], + "title": "america\/bahia" + }, + { + "type": "string", + "enum": [ + "america\/bahia_banderas" + ], + "title": "america\/bahia_banderas" + }, + { + "type": "string", + "enum": [ + "america\/barbados" + ], + "title": "america\/barbados" + }, + { + "type": "string", + "enum": [ + "america\/belem" + ], + "title": "america\/belem" + }, + { + "type": "string", + "enum": [ + "america\/belize" + ], + "title": "america\/belize" + }, + { + "type": "string", + "enum": [ + "america\/blanc-sablon" + ], + "title": "america\/blanc-sablon" + }, + { + "type": "string", + "enum": [ + "america\/boa_vista" + ], + "title": "america\/boa_vista" + }, + { + "type": "string", + "enum": [ + "america\/bogota" + ], + "title": "america\/bogota" + }, + { + "type": "string", + "enum": [ + "america\/boise" + ], + "title": "america\/boise" + }, + { + "type": "string", + "enum": [ + "america\/cambridge_bay" + ], + "title": "america\/cambridge_bay" + }, + { + "type": "string", + "enum": [ + "america\/campo_grande" + ], + "title": "america\/campo_grande" + }, + { + "type": "string", + "enum": [ + "america\/cancun" + ], + "title": "america\/cancun" + }, + { + "type": "string", + "enum": [ + "america\/caracas" + ], + "title": "america\/caracas" + }, + { + "type": "string", + "enum": [ + "america\/cayenne" + ], + "title": "america\/cayenne" + }, + { + "type": "string", + "enum": [ + "america\/cayman" + ], + "title": "america\/cayman" + }, + { + "type": "string", + "enum": [ + "america\/chicago" + ], + "title": "america\/chicago" + }, + { + "type": "string", + "enum": [ + "america\/chihuahua" + ], + "title": "america\/chihuahua" + }, + { + "type": "string", + "enum": [ + "america\/ciudad_juarez" + ], + "title": "america\/ciudad_juarez" + }, + { + "type": "string", + "enum": [ + "america\/costa_rica" + ], + "title": "america\/costa_rica" + }, + { + "type": "string", + "enum": [ + "america\/coyhaique" + ], + "title": "america\/coyhaique" + }, + { + "type": "string", + "enum": [ + "america\/creston" + ], + "title": "america\/creston" + }, + { + "type": "string", + "enum": [ + "america\/cuiaba" + ], + "title": "america\/cuiaba" + }, + { + "type": "string", + "enum": [ + "america\/curacao" + ], + "title": "america\/curacao" + }, + { + "type": "string", + "enum": [ + "america\/danmarkshavn" + ], + "title": "america\/danmarkshavn" + }, + { + "type": "string", + "enum": [ + "america\/dawson" + ], + "title": "america\/dawson" + }, + { + "type": "string", + "enum": [ + "america\/dawson_creek" + ], + "title": "america\/dawson_creek" + }, + { + "type": "string", + "enum": [ + "america\/denver" + ], + "title": "america\/denver" + }, + { + "type": "string", + "enum": [ + "america\/detroit" + ], + "title": "america\/detroit" + }, + { + "type": "string", + "enum": [ + "america\/dominica" + ], + "title": "america\/dominica" + }, + { + "type": "string", + "enum": [ + "america\/edmonton" + ], + "title": "america\/edmonton" + }, + { + "type": "string", + "enum": [ + "america\/eirunepe" + ], + "title": "america\/eirunepe" + }, + { + "type": "string", + "enum": [ + "america\/el_salvador" + ], + "title": "america\/el_salvador" + }, + { + "type": "string", + "enum": [ + "america\/fort_nelson" + ], + "title": "america\/fort_nelson" + }, + { + "type": "string", + "enum": [ + "america\/fortaleza" + ], + "title": "america\/fortaleza" + }, + { + "type": "string", + "enum": [ + "america\/glace_bay" + ], + "title": "america\/glace_bay" + }, + { + "type": "string", + "enum": [ + "america\/goose_bay" + ], + "title": "america\/goose_bay" + }, + { + "type": "string", + "enum": [ + "america\/grand_turk" + ], + "title": "america\/grand_turk" + }, + { + "type": "string", + "enum": [ + "america\/grenada" + ], + "title": "america\/grenada" + }, + { + "type": "string", + "enum": [ + "america\/guadeloupe" + ], + "title": "america\/guadeloupe" + }, + { + "type": "string", + "enum": [ + "america\/guatemala" + ], + "title": "america\/guatemala" + }, + { + "type": "string", + "enum": [ + "america\/guayaquil" + ], + "title": "america\/guayaquil" + }, + { + "type": "string", + "enum": [ + "america\/guyana" + ], + "title": "america\/guyana" + }, + { + "type": "string", + "enum": [ + "america\/halifax" + ], + "title": "america\/halifax" + }, + { + "type": "string", + "enum": [ + "america\/havana" + ], + "title": "america\/havana" + }, + { + "type": "string", + "enum": [ + "america\/hermosillo" + ], + "title": "america\/hermosillo" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/indianapolis" + ], + "title": "america\/indiana\/indianapolis" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/knox" + ], + "title": "america\/indiana\/knox" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/marengo" + ], + "title": "america\/indiana\/marengo" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/petersburg" + ], + "title": "america\/indiana\/petersburg" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/tell_city" + ], + "title": "america\/indiana\/tell_city" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/vevay" + ], + "title": "america\/indiana\/vevay" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/vincennes" + ], + "title": "america\/indiana\/vincennes" + }, + { + "type": "string", + "enum": [ + "america\/indiana\/winamac" + ], + "title": "america\/indiana\/winamac" + }, + { + "type": "string", + "enum": [ + "america\/inuvik" + ], + "title": "america\/inuvik" + }, + { + "type": "string", + "enum": [ + "america\/iqaluit" + ], + "title": "america\/iqaluit" + }, + { + "type": "string", + "enum": [ + "america\/jamaica" + ], + "title": "america\/jamaica" + }, + { + "type": "string", + "enum": [ + "america\/juneau" + ], + "title": "america\/juneau" + }, + { + "type": "string", + "enum": [ + "america\/kentucky\/louisville" + ], + "title": "america\/kentucky\/louisville" + }, + { + "type": "string", + "enum": [ + "america\/kentucky\/monticello" + ], + "title": "america\/kentucky\/monticello" + }, + { + "type": "string", + "enum": [ + "america\/kralendijk" + ], + "title": "america\/kralendijk" + }, + { + "type": "string", + "enum": [ + "america\/la_paz" + ], + "title": "america\/la_paz" + }, + { + "type": "string", + "enum": [ + "america\/lima" + ], + "title": "america\/lima" + }, + { + "type": "string", + "enum": [ + "america\/los_angeles" + ], + "title": "america\/los_angeles" + }, + { + "type": "string", + "enum": [ + "america\/lower_princes" + ], + "title": "america\/lower_princes" + }, + { + "type": "string", + "enum": [ + "america\/maceio" + ], + "title": "america\/maceio" + }, + { + "type": "string", + "enum": [ + "america\/managua" + ], + "title": "america\/managua" + }, + { + "type": "string", + "enum": [ + "america\/manaus" + ], + "title": "america\/manaus" + }, + { + "type": "string", + "enum": [ + "america\/marigot" + ], + "title": "america\/marigot" + }, + { + "type": "string", + "enum": [ + "america\/martinique" + ], + "title": "america\/martinique" + }, + { + "type": "string", + "enum": [ + "america\/matamoros" + ], + "title": "america\/matamoros" + }, + { + "type": "string", + "enum": [ + "america\/mazatlan" + ], + "title": "america\/mazatlan" + }, + { + "type": "string", + "enum": [ + "america\/menominee" + ], + "title": "america\/menominee" + }, + { + "type": "string", + "enum": [ + "america\/merida" + ], + "title": "america\/merida" + }, + { + "type": "string", + "enum": [ + "america\/metlakatla" + ], + "title": "america\/metlakatla" + }, + { + "type": "string", + "enum": [ + "america\/mexico_city" + ], + "title": "america\/mexico_city" + }, + { + "type": "string", + "enum": [ + "america\/miquelon" + ], + "title": "america\/miquelon" + }, + { + "type": "string", + "enum": [ + "america\/moncton" + ], + "title": "america\/moncton" + }, + { + "type": "string", + "enum": [ + "america\/monterrey" + ], + "title": "america\/monterrey" + }, + { + "type": "string", + "enum": [ + "america\/montevideo" + ], + "title": "america\/montevideo" + }, + { + "type": "string", + "enum": [ + "america\/montserrat" + ], + "title": "america\/montserrat" + }, + { + "type": "string", + "enum": [ + "america\/nassau" + ], + "title": "america\/nassau" + }, + { + "type": "string", + "enum": [ + "america\/new_york" + ], + "title": "america\/new_york" + }, + { + "type": "string", + "enum": [ + "america\/nome" + ], + "title": "america\/nome" + }, + { + "type": "string", + "enum": [ + "america\/noronha" + ], + "title": "america\/noronha" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/beulah" + ], + "title": "america\/north_dakota\/beulah" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/center" + ], + "title": "america\/north_dakota\/center" + }, + { + "type": "string", + "enum": [ + "america\/north_dakota\/new_salem" + ], + "title": "america\/north_dakota\/new_salem" + }, + { + "type": "string", + "enum": [ + "america\/nuuk" + ], + "title": "america\/nuuk" + }, + { + "type": "string", + "enum": [ + "america\/ojinaga" + ], + "title": "america\/ojinaga" + }, + { + "type": "string", + "enum": [ + "america\/panama" + ], + "title": "america\/panama" + }, + { + "type": "string", + "enum": [ + "america\/paramaribo" + ], + "title": "america\/paramaribo" + }, + { + "type": "string", + "enum": [ + "america\/phoenix" + ], + "title": "america\/phoenix" + }, + { + "type": "string", + "enum": [ + "america\/port-au-prince" + ], + "title": "america\/port-au-prince" + }, + { + "type": "string", + "enum": [ + "america\/port_of_spain" + ], + "title": "america\/port_of_spain" + }, + { + "type": "string", + "enum": [ + "america\/porto_velho" + ], + "title": "america\/porto_velho" + }, + { + "type": "string", + "enum": [ + "america\/puerto_rico" + ], + "title": "america\/puerto_rico" + }, + { + "type": "string", + "enum": [ + "america\/punta_arenas" + ], + "title": "america\/punta_arenas" + }, + { + "type": "string", + "enum": [ + "america\/rankin_inlet" + ], + "title": "america\/rankin_inlet" + }, + { + "type": "string", + "enum": [ + "america\/recife" + ], + "title": "america\/recife" + }, + { + "type": "string", + "enum": [ + "america\/regina" + ], + "title": "america\/regina" + }, + { + "type": "string", + "enum": [ + "america\/resolute" + ], + "title": "america\/resolute" + }, + { + "type": "string", + "enum": [ + "america\/rio_branco" + ], + "title": "america\/rio_branco" + }, + { + "type": "string", + "enum": [ + "america\/santarem" + ], + "title": "america\/santarem" + }, + { + "type": "string", + "enum": [ + "america\/santiago" + ], + "title": "america\/santiago" + }, + { + "type": "string", + "enum": [ + "america\/santo_domingo" + ], + "title": "america\/santo_domingo" + }, + { + "type": "string", + "enum": [ + "america\/sao_paulo" + ], + "title": "america\/sao_paulo" + }, + { + "type": "string", + "enum": [ + "america\/scoresbysund" + ], + "title": "america\/scoresbysund" + }, + { + "type": "string", + "enum": [ + "america\/sitka" + ], + "title": "america\/sitka" + }, + { + "type": "string", + "enum": [ + "america\/st_barthelemy" + ], + "title": "america\/st_barthelemy" + }, + { + "type": "string", + "enum": [ + "america\/st_johns" + ], + "title": "america\/st_johns" + }, + { + "type": "string", + "enum": [ + "america\/st_kitts" + ], + "title": "america\/st_kitts" + }, + { + "type": "string", + "enum": [ + "america\/st_lucia" + ], + "title": "america\/st_lucia" + }, + { + "type": "string", + "enum": [ + "america\/st_thomas" + ], + "title": "america\/st_thomas" + }, + { + "type": "string", + "enum": [ + "america\/st_vincent" + ], + "title": "america\/st_vincent" + }, + { + "type": "string", + "enum": [ + "america\/swift_current" + ], + "title": "america\/swift_current" + }, + { + "type": "string", + "enum": [ + "america\/tegucigalpa" + ], + "title": "america\/tegucigalpa" + }, + { + "type": "string", + "enum": [ + "america\/thule" + ], + "title": "america\/thule" + }, + { + "type": "string", + "enum": [ + "america\/tijuana" + ], + "title": "america\/tijuana" + }, + { + "type": "string", + "enum": [ + "america\/toronto" + ], + "title": "america\/toronto" + }, + { + "type": "string", + "enum": [ + "america\/tortola" + ], + "title": "america\/tortola" + }, + { + "type": "string", + "enum": [ + "america\/vancouver" + ], + "title": "america\/vancouver" + }, + { + "type": "string", + "enum": [ + "america\/whitehorse" + ], + "title": "america\/whitehorse" + }, + { + "type": "string", + "enum": [ + "america\/winnipeg" + ], + "title": "america\/winnipeg" + }, + { + "type": "string", + "enum": [ + "america\/yakutat" + ], + "title": "america\/yakutat" + }, + { + "type": "string", + "enum": [ + "antarctica\/casey" + ], + "title": "antarctica\/casey" + }, + { + "type": "string", + "enum": [ + "antarctica\/davis" + ], + "title": "antarctica\/davis" + }, + { + "type": "string", + "enum": [ + "antarctica\/dumontdurville" + ], + "title": "antarctica\/dumontdurville" + }, + { + "type": "string", + "enum": [ + "antarctica\/macquarie" + ], + "title": "antarctica\/macquarie" + }, + { + "type": "string", + "enum": [ + "antarctica\/mawson" + ], + "title": "antarctica\/mawson" + }, + { + "type": "string", + "enum": [ + "antarctica\/mcmurdo" + ], + "title": "antarctica\/mcmurdo" + }, + { + "type": "string", + "enum": [ + "antarctica\/palmer" + ], + "title": "antarctica\/palmer" + }, + { + "type": "string", + "enum": [ + "antarctica\/rothera" + ], + "title": "antarctica\/rothera" + }, + { + "type": "string", + "enum": [ + "antarctica\/syowa" + ], + "title": "antarctica\/syowa" + }, + { + "type": "string", + "enum": [ + "antarctica\/troll" + ], + "title": "antarctica\/troll" + }, + { + "type": "string", + "enum": [ + "antarctica\/vostok" + ], + "title": "antarctica\/vostok" + }, + { + "type": "string", + "enum": [ + "arctic\/longyearbyen" + ], + "title": "arctic\/longyearbyen" + }, + { + "type": "string", + "enum": [ + "asia\/aden" + ], + "title": "asia\/aden" + }, + { + "type": "string", + "enum": [ + "asia\/almaty" + ], + "title": "asia\/almaty" + }, + { + "type": "string", + "enum": [ + "asia\/amman" + ], + "title": "asia\/amman" + }, + { + "type": "string", + "enum": [ + "asia\/anadyr" + ], + "title": "asia\/anadyr" + }, + { + "type": "string", + "enum": [ + "asia\/aqtau" + ], + "title": "asia\/aqtau" + }, + { + "type": "string", + "enum": [ + "asia\/aqtobe" + ], + "title": "asia\/aqtobe" + }, + { + "type": "string", + "enum": [ + "asia\/ashgabat" + ], + "title": "asia\/ashgabat" + }, + { + "type": "string", + "enum": [ + "asia\/atyrau" + ], + "title": "asia\/atyrau" + }, + { + "type": "string", + "enum": [ + "asia\/baghdad" + ], + "title": "asia\/baghdad" + }, + { + "type": "string", + "enum": [ + "asia\/bahrain" + ], + "title": "asia\/bahrain" + }, + { + "type": "string", + "enum": [ + "asia\/baku" + ], + "title": "asia\/baku" + }, + { + "type": "string", + "enum": [ + "asia\/bangkok" + ], + "title": "asia\/bangkok" + }, + { + "type": "string", + "enum": [ + "asia\/barnaul" + ], + "title": "asia\/barnaul" + }, + { + "type": "string", + "enum": [ + "asia\/beirut" + ], + "title": "asia\/beirut" + }, + { + "type": "string", + "enum": [ + "asia\/bishkek" + ], + "title": "asia\/bishkek" + }, + { + "type": "string", + "enum": [ + "asia\/brunei" + ], + "title": "asia\/brunei" + }, + { + "type": "string", + "enum": [ + "asia\/chita" + ], + "title": "asia\/chita" + }, + { + "type": "string", + "enum": [ + "asia\/colombo" + ], + "title": "asia\/colombo" + }, + { + "type": "string", + "enum": [ + "asia\/damascus" + ], + "title": "asia\/damascus" + }, + { + "type": "string", + "enum": [ + "asia\/dhaka" + ], + "title": "asia\/dhaka" + }, + { + "type": "string", + "enum": [ + "asia\/dili" + ], + "title": "asia\/dili" + }, + { + "type": "string", + "enum": [ + "asia\/dubai" + ], + "title": "asia\/dubai" + }, + { + "type": "string", + "enum": [ + "asia\/dushanbe" + ], + "title": "asia\/dushanbe" + }, + { + "type": "string", + "enum": [ + "asia\/famagusta" + ], + "title": "asia\/famagusta" + }, + { + "type": "string", + "enum": [ + "asia\/gaza" + ], + "title": "asia\/gaza" + }, + { + "type": "string", + "enum": [ + "asia\/hebron" + ], + "title": "asia\/hebron" + }, + { + "type": "string", + "enum": [ + "asia\/ho_chi_minh" + ], + "title": "asia\/ho_chi_minh" + }, + { + "type": "string", + "enum": [ + "asia\/hong_kong" + ], + "title": "asia\/hong_kong" + }, + { + "type": "string", + "enum": [ + "asia\/hovd" + ], + "title": "asia\/hovd" + }, + { + "type": "string", + "enum": [ + "asia\/irkutsk" + ], + "title": "asia\/irkutsk" + }, + { + "type": "string", + "enum": [ + "asia\/jakarta" + ], + "title": "asia\/jakarta" + }, + { + "type": "string", + "enum": [ + "asia\/jayapura" + ], + "title": "asia\/jayapura" + }, + { + "type": "string", + "enum": [ + "asia\/jerusalem" + ], + "title": "asia\/jerusalem" + }, + { + "type": "string", + "enum": [ + "asia\/kabul" + ], + "title": "asia\/kabul" + }, + { + "type": "string", + "enum": [ + "asia\/kamchatka" + ], + "title": "asia\/kamchatka" + }, + { + "type": "string", + "enum": [ + "asia\/karachi" + ], + "title": "asia\/karachi" + }, + { + "type": "string", + "enum": [ + "asia\/kathmandu" + ], + "title": "asia\/kathmandu" + }, + { + "type": "string", + "enum": [ + "asia\/khandyga" + ], + "title": "asia\/khandyga" + }, + { + "type": "string", + "enum": [ + "asia\/kolkata" + ], + "title": "asia\/kolkata" + }, + { + "type": "string", + "enum": [ + "asia\/krasnoyarsk" + ], + "title": "asia\/krasnoyarsk" + }, + { + "type": "string", + "enum": [ + "asia\/kuala_lumpur" + ], + "title": "asia\/kuala_lumpur" + }, + { + "type": "string", + "enum": [ + "asia\/kuching" + ], + "title": "asia\/kuching" + }, + { + "type": "string", + "enum": [ + "asia\/kuwait" + ], + "title": "asia\/kuwait" + }, + { + "type": "string", + "enum": [ + "asia\/macau" + ], + "title": "asia\/macau" + }, + { + "type": "string", + "enum": [ + "asia\/magadan" + ], + "title": "asia\/magadan" + }, + { + "type": "string", + "enum": [ + "asia\/makassar" + ], + "title": "asia\/makassar" + }, + { + "type": "string", + "enum": [ + "asia\/manila" + ], + "title": "asia\/manila" + }, + { + "type": "string", + "enum": [ + "asia\/muscat" + ], + "title": "asia\/muscat" + }, + { + "type": "string", + "enum": [ + "asia\/nicosia" + ], + "title": "asia\/nicosia" + }, + { + "type": "string", + "enum": [ + "asia\/novokuznetsk" + ], + "title": "asia\/novokuznetsk" + }, + { + "type": "string", + "enum": [ + "asia\/novosibirsk" + ], + "title": "asia\/novosibirsk" + }, + { + "type": "string", + "enum": [ + "asia\/omsk" + ], + "title": "asia\/omsk" + }, + { + "type": "string", + "enum": [ + "asia\/oral" + ], + "title": "asia\/oral" + }, + { + "type": "string", + "enum": [ + "asia\/phnom_penh" + ], + "title": "asia\/phnom_penh" + }, + { + "type": "string", + "enum": [ + "asia\/pontianak" + ], + "title": "asia\/pontianak" + }, + { + "type": "string", + "enum": [ + "asia\/pyongyang" + ], + "title": "asia\/pyongyang" + }, + { + "type": "string", + "enum": [ + "asia\/qatar" + ], + "title": "asia\/qatar" + }, + { + "type": "string", + "enum": [ + "asia\/qostanay" + ], + "title": "asia\/qostanay" + }, + { + "type": "string", + "enum": [ + "asia\/qyzylorda" + ], + "title": "asia\/qyzylorda" + }, + { + "type": "string", + "enum": [ + "asia\/riyadh" + ], + "title": "asia\/riyadh" + }, + { + "type": "string", + "enum": [ + "asia\/sakhalin" + ], + "title": "asia\/sakhalin" + }, + { + "type": "string", + "enum": [ + "asia\/samarkand" + ], + "title": "asia\/samarkand" + }, + { + "type": "string", + "enum": [ + "asia\/seoul" + ], + "title": "asia\/seoul" + }, + { + "type": "string", + "enum": [ + "asia\/shanghai" + ], + "title": "asia\/shanghai" + }, + { + "type": "string", + "enum": [ + "asia\/singapore" + ], + "title": "asia\/singapore" + }, + { + "type": "string", + "enum": [ + "asia\/srednekolymsk" + ], + "title": "asia\/srednekolymsk" + }, + { + "type": "string", + "enum": [ + "asia\/taipei" + ], + "title": "asia\/taipei" + }, + { + "type": "string", + "enum": [ + "asia\/tashkent" + ], + "title": "asia\/tashkent" + }, + { + "type": "string", + "enum": [ + "asia\/tbilisi" + ], + "title": "asia\/tbilisi" + }, + { + "type": "string", + "enum": [ + "asia\/tehran" + ], + "title": "asia\/tehran" + }, + { + "type": "string", + "enum": [ + "asia\/thimphu" + ], + "title": "asia\/thimphu" + }, + { + "type": "string", + "enum": [ + "asia\/tokyo" + ], + "title": "asia\/tokyo" + }, + { + "type": "string", + "enum": [ + "asia\/tomsk" + ], + "title": "asia\/tomsk" + }, + { + "type": "string", + "enum": [ + "asia\/ulaanbaatar" + ], + "title": "asia\/ulaanbaatar" + }, + { + "type": "string", + "enum": [ + "asia\/urumqi" + ], + "title": "asia\/urumqi" + }, + { + "type": "string", + "enum": [ + "asia\/ust-nera" + ], + "title": "asia\/ust-nera" + }, + { + "type": "string", + "enum": [ + "asia\/vientiane" + ], + "title": "asia\/vientiane" + }, + { + "type": "string", + "enum": [ + "asia\/vladivostok" + ], + "title": "asia\/vladivostok" + }, + { + "type": "string", + "enum": [ + "asia\/yakutsk" + ], + "title": "asia\/yakutsk" + }, + { + "type": "string", + "enum": [ + "asia\/yangon" + ], + "title": "asia\/yangon" + }, + { + "type": "string", + "enum": [ + "asia\/yekaterinburg" + ], + "title": "asia\/yekaterinburg" + }, + { + "type": "string", + "enum": [ + "asia\/yerevan" + ], + "title": "asia\/yerevan" + }, + { + "type": "string", + "enum": [ + "atlantic\/azores" + ], + "title": "atlantic\/azores" + }, + { + "type": "string", + "enum": [ + "atlantic\/bermuda" + ], + "title": "atlantic\/bermuda" + }, + { + "type": "string", + "enum": [ + "atlantic\/canary" + ], + "title": "atlantic\/canary" + }, + { + "type": "string", + "enum": [ + "atlantic\/cape_verde" + ], + "title": "atlantic\/cape_verde" + }, + { + "type": "string", + "enum": [ + "atlantic\/faroe" + ], + "title": "atlantic\/faroe" + }, + { + "type": "string", + "enum": [ + "atlantic\/madeira" + ], + "title": "atlantic\/madeira" + }, + { + "type": "string", + "enum": [ + "atlantic\/reykjavik" + ], + "title": "atlantic\/reykjavik" + }, + { + "type": "string", + "enum": [ + "atlantic\/south_georgia" + ], + "title": "atlantic\/south_georgia" + }, + { + "type": "string", + "enum": [ + "atlantic\/st_helena" + ], + "title": "atlantic\/st_helena" + }, + { + "type": "string", + "enum": [ + "atlantic\/stanley" + ], + "title": "atlantic\/stanley" + }, + { + "type": "string", + "enum": [ + "australia\/adelaide" + ], + "title": "australia\/adelaide" + }, + { + "type": "string", + "enum": [ + "australia\/brisbane" + ], + "title": "australia\/brisbane" + }, + { + "type": "string", + "enum": [ + "australia\/broken_hill" + ], + "title": "australia\/broken_hill" + }, + { + "type": "string", + "enum": [ + "australia\/darwin" + ], + "title": "australia\/darwin" + }, + { + "type": "string", + "enum": [ + "australia\/eucla" + ], + "title": "australia\/eucla" + }, + { + "type": "string", + "enum": [ + "australia\/hobart" + ], + "title": "australia\/hobart" + }, + { + "type": "string", + "enum": [ + "australia\/lindeman" + ], + "title": "australia\/lindeman" + }, + { + "type": "string", + "enum": [ + "australia\/lord_howe" + ], + "title": "australia\/lord_howe" + }, + { + "type": "string", + "enum": [ + "australia\/melbourne" + ], + "title": "australia\/melbourne" + }, + { + "type": "string", + "enum": [ + "australia\/perth" + ], + "title": "australia\/perth" + }, + { + "type": "string", + "enum": [ + "australia\/sydney" + ], + "title": "australia\/sydney" + }, + { + "type": "string", + "enum": [ + "europe\/amsterdam" + ], + "title": "europe\/amsterdam" + }, + { + "type": "string", + "enum": [ + "europe\/andorra" + ], + "title": "europe\/andorra" + }, + { + "type": "string", + "enum": [ + "europe\/astrakhan" + ], + "title": "europe\/astrakhan" + }, + { + "type": "string", + "enum": [ + "europe\/athens" + ], + "title": "europe\/athens" + }, + { + "type": "string", + "enum": [ + "europe\/belgrade" + ], + "title": "europe\/belgrade" + }, + { + "type": "string", + "enum": [ + "europe\/berlin" + ], + "title": "europe\/berlin" + }, + { + "type": "string", + "enum": [ + "europe\/bratislava" + ], + "title": "europe\/bratislava" + }, + { + "type": "string", + "enum": [ + "europe\/brussels" + ], + "title": "europe\/brussels" + }, + { + "type": "string", + "enum": [ + "europe\/bucharest" + ], + "title": "europe\/bucharest" + }, + { + "type": "string", + "enum": [ + "europe\/budapest" + ], + "title": "europe\/budapest" + }, + { + "type": "string", + "enum": [ + "europe\/busingen" + ], + "title": "europe\/busingen" + }, + { + "type": "string", + "enum": [ + "europe\/chisinau" + ], + "title": "europe\/chisinau" + }, + { + "type": "string", + "enum": [ + "europe\/copenhagen" + ], + "title": "europe\/copenhagen" + }, + { + "type": "string", + "enum": [ + "europe\/dublin" + ], + "title": "europe\/dublin" + }, + { + "type": "string", + "enum": [ + "europe\/gibraltar" + ], + "title": "europe\/gibraltar" + }, + { + "type": "string", + "enum": [ + "europe\/guernsey" + ], + "title": "europe\/guernsey" + }, + { + "type": "string", + "enum": [ + "europe\/helsinki" + ], + "title": "europe\/helsinki" + }, + { + "type": "string", + "enum": [ + "europe\/isle_of_man" + ], + "title": "europe\/isle_of_man" + }, + { + "type": "string", + "enum": [ + "europe\/istanbul" + ], + "title": "europe\/istanbul" + }, + { + "type": "string", + "enum": [ + "europe\/jersey" + ], + "title": "europe\/jersey" + }, + { + "type": "string", + "enum": [ + "europe\/kaliningrad" + ], + "title": "europe\/kaliningrad" + }, + { + "type": "string", + "enum": [ + "europe\/kirov" + ], + "title": "europe\/kirov" + }, + { + "type": "string", + "enum": [ + "europe\/kyiv" + ], + "title": "europe\/kyiv" + }, + { + "type": "string", + "enum": [ + "europe\/lisbon" + ], + "title": "europe\/lisbon" + }, + { + "type": "string", + "enum": [ + "europe\/ljubljana" + ], + "title": "europe\/ljubljana" + }, + { + "type": "string", + "enum": [ + "europe\/london" + ], + "title": "europe\/london" + }, + { + "type": "string", + "enum": [ + "europe\/luxembourg" + ], + "title": "europe\/luxembourg" + }, + { + "type": "string", + "enum": [ + "europe\/madrid" + ], + "title": "europe\/madrid" + }, + { + "type": "string", + "enum": [ + "europe\/malta" + ], + "title": "europe\/malta" + }, + { + "type": "string", + "enum": [ + "europe\/mariehamn" + ], + "title": "europe\/mariehamn" + }, + { + "type": "string", + "enum": [ + "europe\/minsk" + ], + "title": "europe\/minsk" + }, + { + "type": "string", + "enum": [ + "europe\/monaco" + ], + "title": "europe\/monaco" + }, + { + "type": "string", + "enum": [ + "europe\/moscow" + ], + "title": "europe\/moscow" + }, + { + "type": "string", + "enum": [ + "europe\/oslo" + ], + "title": "europe\/oslo" + }, + { + "type": "string", + "enum": [ + "europe\/paris" + ], + "title": "europe\/paris" + }, + { + "type": "string", + "enum": [ + "europe\/podgorica" + ], + "title": "europe\/podgorica" + }, + { + "type": "string", + "enum": [ + "europe\/prague" + ], + "title": "europe\/prague" + }, + { + "type": "string", + "enum": [ + "europe\/riga" + ], + "title": "europe\/riga" + }, + { + "type": "string", + "enum": [ + "europe\/rome" + ], + "title": "europe\/rome" + }, + { + "type": "string", + "enum": [ + "europe\/samara" + ], + "title": "europe\/samara" + }, + { + "type": "string", + "enum": [ + "europe\/san_marino" + ], + "title": "europe\/san_marino" + }, + { + "type": "string", + "enum": [ + "europe\/sarajevo" + ], + "title": "europe\/sarajevo" + }, + { + "type": "string", + "enum": [ + "europe\/saratov" + ], + "title": "europe\/saratov" + }, + { + "type": "string", + "enum": [ + "europe\/simferopol" + ], + "title": "europe\/simferopol" + }, + { + "type": "string", + "enum": [ + "europe\/skopje" + ], + "title": "europe\/skopje" + }, + { + "type": "string", + "enum": [ + "europe\/sofia" + ], + "title": "europe\/sofia" + }, + { + "type": "string", + "enum": [ + "europe\/stockholm" + ], + "title": "europe\/stockholm" + }, + { + "type": "string", + "enum": [ + "europe\/tallinn" + ], + "title": "europe\/tallinn" + }, + { + "type": "string", + "enum": [ + "europe\/tirane" + ], + "title": "europe\/tirane" + }, + { + "type": "string", + "enum": [ + "europe\/ulyanovsk" + ], + "title": "europe\/ulyanovsk" + }, + { + "type": "string", + "enum": [ + "europe\/vaduz" + ], + "title": "europe\/vaduz" + }, + { + "type": "string", + "enum": [ + "europe\/vatican" + ], + "title": "europe\/vatican" + }, + { + "type": "string", + "enum": [ + "europe\/vienna" + ], + "title": "europe\/vienna" + }, + { + "type": "string", + "enum": [ + "europe\/vilnius" + ], + "title": "europe\/vilnius" + }, + { + "type": "string", + "enum": [ + "europe\/volgograd" + ], + "title": "europe\/volgograd" + }, + { + "type": "string", + "enum": [ + "europe\/warsaw" + ], + "title": "europe\/warsaw" + }, + { + "type": "string", + "enum": [ + "europe\/zagreb" + ], + "title": "europe\/zagreb" + }, + { + "type": "string", + "enum": [ + "europe\/zurich" + ], + "title": "europe\/zurich" + }, + { + "type": "string", + "enum": [ + "indian\/antananarivo" + ], + "title": "indian\/antananarivo" + }, + { + "type": "string", + "enum": [ + "indian\/chagos" + ], + "title": "indian\/chagos" + }, + { + "type": "string", + "enum": [ + "indian\/christmas" + ], + "title": "indian\/christmas" + }, + { + "type": "string", + "enum": [ + "indian\/cocos" + ], + "title": "indian\/cocos" + }, + { + "type": "string", + "enum": [ + "indian\/comoro" + ], + "title": "indian\/comoro" + }, + { + "type": "string", + "enum": [ + "indian\/kerguelen" + ], + "title": "indian\/kerguelen" + }, + { + "type": "string", + "enum": [ + "indian\/mahe" + ], + "title": "indian\/mahe" + }, + { + "type": "string", + "enum": [ + "indian\/maldives" + ], + "title": "indian\/maldives" + }, + { + "type": "string", + "enum": [ + "indian\/mauritius" + ], + "title": "indian\/mauritius" + }, + { + "type": "string", + "enum": [ + "indian\/mayotte" + ], + "title": "indian\/mayotte" + }, + { + "type": "string", + "enum": [ + "indian\/reunion" + ], + "title": "indian\/reunion" + }, + { + "type": "string", + "enum": [ + "pacific\/apia" + ], + "title": "pacific\/apia" + }, + { + "type": "string", + "enum": [ + "pacific\/auckland" + ], + "title": "pacific\/auckland" + }, + { + "type": "string", + "enum": [ + "pacific\/bougainville" + ], + "title": "pacific\/bougainville" + }, + { + "type": "string", + "enum": [ + "pacific\/chatham" + ], + "title": "pacific\/chatham" + }, + { + "type": "string", + "enum": [ + "pacific\/chuuk" + ], + "title": "pacific\/chuuk" + }, + { + "type": "string", + "enum": [ + "pacific\/easter" + ], + "title": "pacific\/easter" + }, + { + "type": "string", + "enum": [ + "pacific\/efate" + ], + "title": "pacific\/efate" + }, + { + "type": "string", + "enum": [ + "pacific\/fakaofo" + ], + "title": "pacific\/fakaofo" + }, + { + "type": "string", + "enum": [ + "pacific\/fiji" + ], + "title": "pacific\/fiji" + }, + { + "type": "string", + "enum": [ + "pacific\/funafuti" + ], + "title": "pacific\/funafuti" + }, + { + "type": "string", + "enum": [ + "pacific\/galapagos" + ], + "title": "pacific\/galapagos" + }, + { + "type": "string", + "enum": [ + "pacific\/gambier" + ], + "title": "pacific\/gambier" + }, + { + "type": "string", + "enum": [ + "pacific\/guadalcanal" + ], + "title": "pacific\/guadalcanal" + }, + { + "type": "string", + "enum": [ + "pacific\/guam" + ], + "title": "pacific\/guam" + }, + { + "type": "string", + "enum": [ + "pacific\/honolulu" + ], + "title": "pacific\/honolulu" + }, + { + "type": "string", + "enum": [ + "pacific\/kanton" + ], + "title": "pacific\/kanton" + }, + { + "type": "string", + "enum": [ + "pacific\/kiritimati" + ], + "title": "pacific\/kiritimati" + }, + { + "type": "string", + "enum": [ + "pacific\/kosrae" + ], + "title": "pacific\/kosrae" + }, + { + "type": "string", + "enum": [ + "pacific\/kwajalein" + ], + "title": "pacific\/kwajalein" + }, + { + "type": "string", + "enum": [ + "pacific\/majuro" + ], + "title": "pacific\/majuro" + }, + { + "type": "string", + "enum": [ + "pacific\/marquesas" + ], + "title": "pacific\/marquesas" + }, + { + "type": "string", + "enum": [ + "pacific\/midway" + ], + "title": "pacific\/midway" + }, + { + "type": "string", + "enum": [ + "pacific\/nauru" + ], + "title": "pacific\/nauru" + }, + { + "type": "string", + "enum": [ + "pacific\/niue" + ], + "title": "pacific\/niue" + }, + { + "type": "string", + "enum": [ + "pacific\/norfolk" + ], + "title": "pacific\/norfolk" + }, + { + "type": "string", + "enum": [ + "pacific\/noumea" + ], + "title": "pacific\/noumea" + }, + { + "type": "string", + "enum": [ + "pacific\/pago_pago" + ], + "title": "pacific\/pago_pago" + }, + { + "type": "string", + "enum": [ + "pacific\/palau" + ], + "title": "pacific\/palau" + }, + { + "type": "string", + "enum": [ + "pacific\/pitcairn" + ], + "title": "pacific\/pitcairn" + }, + { + "type": "string", + "enum": [ + "pacific\/pohnpei" + ], + "title": "pacific\/pohnpei" + }, + { + "type": "string", + "enum": [ + "pacific\/port_moresby" + ], + "title": "pacific\/port_moresby" + }, + { + "type": "string", + "enum": [ + "pacific\/rarotonga" + ], + "title": "pacific\/rarotonga" + }, + { + "type": "string", + "enum": [ + "pacific\/saipan" + ], + "title": "pacific\/saipan" + }, + { + "type": "string", + "enum": [ + "pacific\/tahiti" + ], + "title": "pacific\/tahiti" + }, + { + "type": "string", + "enum": [ + "pacific\/tarawa" + ], + "title": "pacific\/tarawa" + }, + { + "type": "string", + "enum": [ + "pacific\/tongatapu" + ], + "title": "pacific\/tongatapu" + }, + { + "type": "string", + "enum": [ + "pacific\/wake" + ], + "title": "pacific\/wake" + }, + { + "type": "string", + "enum": [ + "pacific\/wallis" + ], + "title": "pacific\/wallis" + }, + { + "type": "string", + "enum": [ + "utc" + ], + "title": "utc" + } + ], + "default": "" + }, + "in": "query" + }, + { + "name": "latitude", + "description": "Geolocation latitude. Pass a number between -90 to 90. Defaults to 0.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": 37.7749, + "default": 0 + }, + "in": "query" + }, + { + "name": "longitude", + "description": "Geolocation longitude. Pass a number between -180 to 180. Defaults to 0.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": -122.4194, + "default": 0 + }, + "in": "query" + }, + { + "name": "accuracy", + "description": "Geolocation accuracy in meters. Pass a number between 0 to 100000. Defaults to 0.", + "required": false, + "schema": { + "type": "number", + "format": "float", + "example": 100, + "default": 0 + }, + "in": "query" + }, + { + "name": "touch", + "description": "Enable touch support. Pass 0 for no touch, or 1 for touch enabled. Defaults to 0.", + "required": false, + "schema": { + "type": "boolean", + "example": true, + "default": false + }, + "in": "query" + }, + { + "name": "permissions", + "description": "Browser permissions to grant. Pass an array of permission names like [\"geolocation\", \"camera\", \"microphone\"]. Defaults to empty.", + "required": false, + "schema": { + "type": "array", + "items": { + "title": "BrowserPermission", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "geolocation" + ], + "title": "geolocation" + }, + { + "type": "string", + "enum": [ + "camera" + ], + "title": "camera" + }, + { + "type": "string", + "enum": [ + "microphone" + ], + "title": "microphone" + }, + { + "type": "string", + "enum": [ + "notifications" + ], + "title": "notifications" + }, + { + "type": "string", + "enum": [ + "midi" + ], + "title": "midi" + }, + { + "type": "string", + "enum": [ + "push" + ], + "title": "push" + }, + { + "type": "string", + "enum": [ + "clipboard-read" + ], + "title": "clipboard-read" + }, + { + "type": "string", + "enum": [ + "clipboard-write" + ], + "title": "clipboard-write" + }, + { + "type": "string", + "enum": [ + "payment-handler" + ], + "title": "payment-handler" + }, + { + "type": "string", + "enum": [ + "usb" + ], + "title": "usb" + }, + { + "type": "string", + "enum": [ + "bluetooth" + ], + "title": "bluetooth" + }, + { + "type": "string", + "enum": [ + "accelerometer" + ], + "title": "accelerometer" + }, + { + "type": "string", + "enum": [ + "gyroscope" + ], + "title": "gyroscope" + }, + { + "type": "string", + "enum": [ + "magnetometer" + ], + "title": "magnetometer" + }, + { + "type": "string", + "enum": [ + "ambient-light-sensor" + ], + "title": "ambient-light-sensor" + }, + { + "type": "string", + "enum": [ + "background-sync" + ], + "title": "background-sync" + }, + { + "type": "string", + "enum": [ + "persistent-storage" + ], + "title": "persistent-storage" + }, + { + "type": "string", + "enum": [ + "screen-wake-lock" + ], + "title": "screen-wake-lock" + }, + { + "type": "string", + "enum": [ + "web-share" + ], + "title": "web-share" + }, + { + "type": "string", + "enum": [ + "xr-spatial-tracking" + ], + "title": "xr-spatial-tracking" + } + ] + }, + "example": [ + "geolocation", + "notifications" + ], + "default": [] + }, + "in": "query" + }, + { + "name": "sleep", + "description": "Wait time in seconds before taking the screenshot. Pass an integer between 0 to 10. Defaults to 0.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 3, + "default": 0 + }, + "in": "query" + }, + { + "name": "width", + "description": "Output image width. Pass 0 to use original width, or an integer between 1 to 2000. Defaults to 0 (original width).", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 800, + "default": 0 + }, + "in": "query" + }, + { + "name": "height", + "description": "Output image height. Pass 0 to use original height, or an integer between 1 to 2000. Defaults to 0 (original height).", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 600, + "default": 0 + }, + "in": "query" + }, + { + "name": "quality", + "description": "Screenshot quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 85, + "default": -1 + }, + "in": "query" + }, + { + "name": "output", + "description": "Output format type (jpeg, jpg, png, gif and webp).", + "required": false, + "schema": { + "type": "string", + "example": "jpeg", + "title": "ImageFormat", + "oneOf": [ + { + "type": "string", + "enum": [ + "jpg" + ], + "title": "jpg" + }, + { + "type": "string", + "enum": [ + "jpeg" + ], + "title": "jpeg" + }, + { + "type": "string", + "enum": [ + "png" + ], + "title": "png" + }, + { + "type": "string", + "enum": [ + "webp" + ], + "title": "webp" + }, + { + "type": "string", + "enum": [ + "heic" + ], + "title": "heic" + }, + { + "type": "string", + "enum": [ + "avif" + ], + "title": "avif" + }, + { + "type": "string", + "enum": [ + "gif" + ], + "title": "gif" + } + ], + "default": "" + }, + "in": "query" + } + ] + } + }, + "\/backups\/archives": { + "get": { + "summary": "List archives", + "operationId": "backupsListArchives", + "tags": [ + "backups" + ], + "description": "List all archives for a project.", "responses": { "200": { "description": "Backup archive list", @@ -8562,34 +12292,67 @@ "type": "object", "properties": { "services": { - "type": "array", "description": "Array of services to backup", + "type": "array", "items": { + "title": "BackupServices", "type": "string", - "enum": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" - ], - "x-enum-name": "BackupServices", - "x-enum-keys": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" + "oneOf": [ + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases" + ], + "title": "dedicatedDatabases" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + } ] } }, "resourceId": { - "type": "string", "description": "Resource ID. When set, only this single resource will be backed up.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true } @@ -8848,66 +12611,99 @@ "type": "object", "properties": { "policyId": { - "type": "string", "description": "Policy 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.", + "type": "string", "example": "<POLICY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" }, "services": { - "type": "array", "description": "Array of services to backup", + "type": "array", "items": { + "title": "BackupServices", "type": "string", - "enum": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" - ], - "x-enum-name": "BackupServices", - "x-enum-keys": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" + "oneOf": [ + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases" + ], + "title": "dedicatedDatabases" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + } ] } }, "resourceId": { - "type": "string", "description": "Resource ID. When set, only this single resource will be backed up.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When set to 'disabled', no backups will be taken", + "type": "boolean", "default": true, "example": false }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion", + "type": "integer", "example": 1, "format": "int32" }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" } }, "required": [ @@ -9055,25 +12851,25 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>", "nullable": true }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "schedule": { - "type": "string", - "description": "Cron expression" + "description": "Cron expression", + "type": "string" }, "enabled": { - "type": "boolean", "description": "Is Backup enabled? When set to 'disabled', No backup will be taken", + "type": "boolean", "example": false, "nullable": true } @@ -9201,39 +12997,72 @@ "type": "object", "properties": { "archiveId": { - "type": "string", "description": "Backup archive ID to restore", + "type": "string", "example": "<ARCHIVE_ID>" }, "services": { - "type": "array", "description": "Array of services to restore", + "type": "array", "items": { + "title": "BackupServices", "type": "string", - "enum": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" - ], - "x-enum-name": "BackupServices", - "x-enum-keys": [ - "databases", - "tablesdb", - "documentsdb", - "vectorsdb", - "dedicatedDatabases", - "functions", - "storage" + "oneOf": [ + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "dedicatedDatabases" + ], + "title": "dedicatedDatabases" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + } ] } }, "newResourceId": { - "type": "string", "description": "Destination resource ID. Omit to restore the archived resource in place, or pass a different ID to restore alongside it as a new resource. 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.", + "type": "string", "default": "", "example": "<NEW_RESOURCE_ID>", "x-appwrite": { @@ -9241,8 +13070,8 @@ } }, "newResourceName": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NEW_RESOURCE_NAME>" } @@ -9595,21 +13424,21 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false } @@ -9756,8 +13585,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -9910,14 +13739,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -10062,8 +13891,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -10284,13 +14113,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false } @@ -10557,21 +14386,21 @@ "type": "object", "properties": { "collectionId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<COLLECTION_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -10581,28 +14410,28 @@ "nullable": true }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "attributes": { - "type": "array", "description": "Array of attribute definitions to create. Each attribute should contain: key (string), type (string: string, varchar, text, mediumtext, longtext, integer, bigint, double, boolean, datetime, point, linestring, polygon, email, url, ip, enum), size (integer, required for string and varchar types), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.", + "type": "array", "default": [], "items": { "type": "object" } }, "indexes": { - "type": "array", "description": "Array of index definitions to create. Each index should contain: key (string), type (string: key, fulltext, unique, spatial), attributes (array of attribute keys), orders (array of ASC\/DESC, optional), and lengths (array of integers, optional).", + "type": "array", "default": [], "items": { "type": "object" @@ -10774,13 +14603,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -10790,20 +14619,20 @@ "nullable": true }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "purge": { - "type": "boolean", "description": "When true, purge all cached list responses for this collection as part of the update. Use this to force readers to see fresh data immediately instead of waiting for the cache TTL to expire.", + "type": "boolean", "default": false, "example": false } @@ -11062,35 +14891,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when attribute is required.", + "type": "integer", "format": "int64", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -11195,31 +15024,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when attribute is required.", + "type": "integer", "format": "int64", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -11314,23 +15143,23 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "boolean", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "boolean", "example": false, "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -11435,19 +15264,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "boolean", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "boolean", "example": false, "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -11542,24 +15371,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for the attribute in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Cannot be set when attribute is required.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -11664,20 +15493,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -11772,24 +15601,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -11893,264 +15722,264 @@ "schema": { "type": "object", "properties": { - "required": { - "type": "boolean", - "description": "Is attribute required?", - "example": false - }, - "default": { - "type": "string", - "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", - "example": "email@example.com", - "format": "email", - "nullable": true - }, - "newKey": { - "type": "string", - "description": "New Attribute Key.", - "nullable": true - } - }, - "required": [ - "required", - "default" - ] - } - } - } - } - } - }, - "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/enum": { - "post": { - "summary": "Create enum attribute", - "operationId": "databasesCreateEnumAttribute", - "tags": [ - "databases" - ], - "description": "Create an enum attribute. The `elements` param acts as a white-list of accepted values for this attribute. \n", - "responses": { - "202": { - "description": "AttributeEnum", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/attributeEnum" - } - } - } - } - }, - "deprecated": true, - "x-appwrite": { - "group": "attributes", - "cookies": false, - "type": "", - "demo": "databases\/create-enum-attribute.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-enum-attribute.md", - "deprecated": { - "since": "1.8.0", - "replaceWith": "tablesDB.createEnumColumn" - }, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID.", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Attribute Key." - }, + "required": { + "description": "Is attribute required?", + "type": "boolean", + "example": false + }, + "default": { + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", + "example": "email@example.com", + "format": "email", + "nullable": true + }, + "newKey": { + "description": "New Attribute Key.", + "type": "string", + "nullable": true + } + }, + "required": [ + "required", + "default" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/enum": { + "post": { + "summary": "Create enum attribute", + "operationId": "databasesCreateEnumAttribute", + "tags": [ + "databases" + ], + "description": "Create an enum attribute. The `elements` param acts as a white-list of accepted values for this attribute. \n", + "responses": { + "202": { + "description": "AttributeEnum", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeEnum" + } + } + } + } + }, + "deprecated": true, + "x-appwrite": { + "group": "attributes", + "cookies": false, + "type": "", + "demo": "databases\/create-enum-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/create-enum-attribute.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "tablesDB.createEnumColumn" + }, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "description": "Attribute Key.", + "type": "string" + }, + "elements": { + "description": "Array of enum values.", + "type": "array", + "items": { + "type": "string" + } + }, + "required": { + "description": "Is attribute required?", + "type": "boolean", + "example": false + }, + "default": { + "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", + "example": "<DEFAULT>", + "nullable": true + }, + "array": { + "description": "Is attribute an array?", + "type": "boolean", + "default": false, + "example": false + } + }, + "required": [ + "key", + "elements", + "required" + ] + } + } + } + } + } + }, + "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/enum\/{key}": { + "patch": { + "summary": "Update enum attribute", + "operationId": "databasesUpdateEnumAttribute", + "tags": [ + "databases" + ], + "description": "Update an enum attribute. Changing the `default` value will not update already existing documents.\n", + "responses": { + "200": { + "description": "AttributeEnum", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/attributeEnum" + } + } + } + } + }, + "deprecated": true, + "x-appwrite": { + "group": "attributes", + "cookies": false, + "type": "", + "demo": "databases\/update-enum-attribute.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-enum-attribute.md", + "deprecated": { + "since": "1.8.0", + "replaceWith": "tablesDB.updateEnumColumn" + }, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" + }, + { + "name": "key", + "description": "Attribute Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { "elements": { + "description": "Updated list of enum values.", "type": "array", - "description": "Array of enum values.", "items": { "type": "string" } }, "required": { - "type": "boolean", "description": "Is attribute required?", - "example": false - }, - "default": { - "type": "string", - "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", - "example": "<DEFAULT>", - "nullable": true - }, - "array": { "type": "boolean", - "description": "Is attribute an array?", - "default": false, - "example": false - } - }, - "required": [ - "key", - "elements", - "required" - ] - } - } - } - } - } - }, - "\/databases\/{databaseId}\/collections\/{collectionId}\/attributes\/enum\/{key}": { - "patch": { - "summary": "Update enum attribute", - "operationId": "databasesUpdateEnumAttribute", - "tags": [ - "databases" - ], - "description": "Update an enum attribute. Changing the `default` value will not update already existing documents.\n", - "responses": { - "200": { - "description": "AttributeEnum", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/attributeEnum" - } - } - } - } - }, - "deprecated": true, - "x-appwrite": { - "group": "attributes", - "cookies": false, - "type": "", - "demo": "databases\/update-enum-attribute.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/databases\/update-enum-attribute.md", - "deprecated": { - "since": "1.8.0", - "replaceWith": "tablesDB.updateEnumColumn" - }, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID.", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - }, - { - "name": "key", - "description": "Attribute Key.", - "required": true, - "schema": { - "type": "string" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "elements": { - "type": "array", - "description": "Updated list of enum values.", - "items": { - "type": "string" - } - }, - "required": { - "type": "boolean", - "description": "Is attribute required?", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -12246,35 +16075,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "number", "description": "Minimum value.", + "type": "number", "format": "float", "nullable": true }, "max": { - "type": "number", "description": "Maximum value.", + "type": "number", "format": "float", "nullable": true }, "default": { - "type": "number", "description": "Default value. Cannot be set when required.", + "type": "number", "format": "float", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -12379,31 +16208,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "number", "description": "Minimum value.", + "type": "number", "format": "float", "nullable": true }, "max": { - "type": "number", "description": "Maximum value.", + "type": "number", "format": "float", "nullable": true }, "default": { - "type": "number", "description": "Default value. Cannot be set when required.", + "type": "number", "format": "float", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -12498,35 +16327,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when attribute is required.", + "type": "integer", "format": "int64", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -12631,31 +16460,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when attribute is required.", + "type": "integer", "format": "int64", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -12750,22 +16579,22 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value. Cannot be set when attribute is required.", + "type": "string", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -12870,18 +16699,18 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value. Cannot be set when attribute is required.", + "type": "string", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -12976,17 +16805,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ 1, @@ -13111,13 +16940,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ 1, @@ -13142,8 +16971,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -13237,29 +17066,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -13364,19 +17193,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -13471,29 +17300,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -13598,19 +17427,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -13705,17 +17534,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ 1, 2 @@ -13827,13 +17656,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ 1, 2 @@ -13845,8 +17674,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -13940,17 +17769,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ [ @@ -14084,13 +17913,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ [ @@ -14124,8 +17953,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New attribute key.", + "type": "string", "nullable": true } }, @@ -14219,59 +18048,90 @@ "type": "object", "properties": { "relatedCollectionId": { - "type": "string", "description": "Related Collection ID.", + "type": "string", "example": "<RELATED_COLLECTION_ID>" }, "type": { - "type": "string", "description": "Relationship type. Possible values are: oneToOne, oneToMany, manyToOne, manyToMany.", + "type": "string", "example": "oneToOne", - "enum": [ - "oneToOne", - "manyToOne", - "manyToMany", - "oneToMany" - ], - "x-enum-name": "RelationshipType", - "x-enum-keys": [ - "oneToOne", - "manyToOne", - "manyToMany", - "oneToMany" + "title": "RelationshipType", + "oneOf": [ + { + "type": "string", + "enum": [ + "oneToOne" + ], + "title": "oneToOne" + }, + { + "type": "string", + "enum": [ + "manyToOne" + ], + "title": "manyToOne" + }, + { + "type": "string", + "enum": [ + "manyToMany" + ], + "title": "manyToMany" + }, + { + "type": "string", + "enum": [ + "oneToMany" + ], + "title": "oneToMany" + } ] }, "twoWay": { - "type": "boolean", "description": "Is Two Way?", + "type": "boolean", "default": false, "example": false }, "key": { - "type": "string", "description": "Attribute Key.", + "type": "string", "nullable": true }, "twoWayKey": { - "type": "string", "description": "Two Way Attribute Key.", + "type": "string", "nullable": true }, "onDelete": { - "type": "string", "description": "Delete constraint. Possible values are: cascade, restrict, setNull.", + "type": "string", "default": "restrict", "example": "cascade", - "enum": [ - "cascade", - "restrict", - "setNull" - ], - "x-enum-name": "RelationMutate", - "x-enum-keys": [ - "cascade", - "restrict", - "setNull" + "title": "RelationMutate", + "oneOf": [ + { + "type": "string", + "enum": [ + "cascade" + ], + "title": "cascade" + }, + { + "type": "string", + "enum": [ + "restrict" + ], + "title": "restrict" + }, + { + "type": "string", + "enum": [ + "setNull" + ], + "title": "setNull" + } ] } }, @@ -14375,24 +18235,37 @@ "type": "object", "properties": { "onDelete": { - "type": "string", "description": "Delete constraint. Possible values are: cascade, restrict, setNull.", + "type": "string", "example": "cascade", - "enum": [ - "cascade", - "restrict", - "setNull" - ], - "x-enum-name": "RelationMutate", - "x-enum-keys": [ - "cascade", - "restrict", - "setNull" + "title": "RelationMutate", + "oneOf": [ + { + "type": "string", + "enum": [ + "cascade" + ], + "title": "cascade" + }, + { + "type": "string", + "enum": [ + "restrict" + ], + "title": "restrict" + }, + { + "type": "string", + "enum": [ + "setNull" + ], + "title": "setNull" + } ] }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } } @@ -14483,35 +18356,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "size": { - "type": "integer", "description": "Attribute size for text attributes, in number of characters.", + "type": "integer", "example": 1, "format": "int32" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -14617,26 +18490,26 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "size": { - "type": "integer", "description": "Maximum size of the string attribute.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -14731,29 +18604,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -14858,19 +18731,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -14965,24 +18838,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false } @@ -15087,20 +18960,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -15195,35 +19068,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Attribute Key." + "description": "Attribute Key.", + "type": "string" }, "size": { - "type": "integer", "description": "Attribute size for varchar attributes, in number of characters. Maximum size is 16381.", + "type": "integer", "example": 1, "format": "int32" }, "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is attribute an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the attribute. Encryption enhances security by not storing any plain text values in the database. However, encrypted attributes cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -15329,26 +19202,26 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is attribute required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for attribute when not provided. Cannot be set when attribute is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "size": { - "type": "integer", "description": "Maximum size of the varchar attribute.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "newKey": { - "type": "string", "description": "New Attribute Key.", + "type": "string", "nullable": true } }, @@ -15883,16 +19756,16 @@ "type": "object", "properties": { "documentId": { - "type": "string", "description": "Document 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.", + "type": "string", "example": "<DOCUMENT_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Document data as JSON object.", + "type": "object", "default": {}, "example": { "username": "walter.obrien", @@ -15903,8 +19776,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -15914,16 +19787,16 @@ "nullable": true }, "documents": { - "type": "array", "description": "Array of documents data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -16052,15 +19925,15 @@ "type": "object", "properties": { "documents": { - "type": "array", "description": "Array of document data as JSON objects. May contain partial documents.", + "type": "array", "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -16153,8 +20026,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -16165,16 +20038,16 @@ } }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -16526,8 +20399,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include all required attributes of the document to be created or updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -16538,8 +20411,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -16549,8 +20422,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -16653,8 +20526,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -16665,8 +20538,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -16676,8 +20549,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -16881,20 +20754,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "min": { - "type": "number", "description": "Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -17008,20 +20881,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "max": { - "type": "number", "description": "Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -17211,54 +21084,80 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Index Key." + "description": "Index Key.", + "type": "string" }, "type": { - "type": "string", "description": "Index type.", + "type": "string", "example": "key", - "enum": [ - "key", - "fulltext", - "unique", - "spatial" - ], - "x-enum-name": "DatabasesIndexType", - "x-enum-keys": [ - "key", - "fulltext", - "unique", - "spatial" + "title": "DatabasesIndexType", + "oneOf": [ + { + "type": "string", + "enum": [ + "key" + ], + "title": "key" + }, + { + "type": "string", + "enum": [ + "fulltext" + ], + "title": "fulltext" + }, + { + "type": "string", + "enum": [ + "unique" + ], + "title": "unique" + }, + { + "type": "string", + "enum": [ + "spatial" + ], + "title": "spatial" + } ] }, "attributes": { - "type": "array", "description": "Array of attributes to index. Maximum of 100 attributes are allowed, each 32 characters long.", + "type": "array", "items": { "type": "string" } }, "orders": { - "type": "array", "description": "Array of index orders. Maximum of 100 orders are allowed.", + "type": "array", "default": [], "items": { + "title": "OrderBy", "type": "string", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "OrderBy", - "x-enum-keys": [ - "asc", - "desc" + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ] } }, "lengths": { - "type": "array", "description": "Length of index. Maximum of 100", + "type": "array", "default": [], "items": { "type": "integer" @@ -17566,40 +21465,40 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Defaults to `serverless`, which creates the database on the shared pool. Any other value provisions a dedicated database on that specification.", + "type": "string", "default": "serverless", "example": "serverless" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Requires a dedicated `specification`; must be 0 for a serverless database. High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Requires a dedicated `specification`; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -17787,8 +21686,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -17933,14 +21832,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -17999,29 +21898,437 @@ "description": "Transaction ID.", "required": true, "schema": { - "type": "string", - "example": "<TRANSACTION_ID>" + "type": "string", + "example": "<TRANSACTION_ID>" + }, + "in": "path" + } + ] + } + }, + "\/documentsdb\/transactions\/{transactionId}\/operations": { + "post": { + "summary": "Create operations", + "operationId": "documentsDBCreateOperations", + "tags": [ + "documentsDB" + ], + "description": "Create multiple operations in a single transaction.", + "responses": { + "201": { + "description": "Transaction", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/transaction" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "transactions", + "cookies": false, + "type": "", + "demo": "documentsdb\/create-operations.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "documents.write", + "platforms": [ + "server", + "client" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/create-operations.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [], + "Session": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "transactionId", + "description": "Transaction ID.", + "required": true, + "schema": { + "type": "string", + "example": "<TRANSACTION_ID>" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "operations": { + "description": "Array of staged operations.", + "type": "array", + "default": [], + "example": [ + { + "action": "create", + "databaseId": "<DATABASE_ID>", + "collectionId": "<COLLECTION_ID>", + "documentId": "<DOCUMENT_ID>", + "data": { + "name": "Walter O'Brien" + } + } + ], + "items": { + "type": "object" + } + } + } + } + } + } + } + } + }, + "\/documentsdb\/{databaseId}": { + "get": { + "summary": "Get database", + "operationId": "documentsDBGet", + "tags": [ + "documentsDB" + ], + "description": "Get a database by its unique ID. This endpoint response returns a JSON object with the database metadata.", + "responses": { + "200": { + "description": "Database", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/database" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "documentsdb", + "cookies": false, + "type": "", + "demo": "documentsdb\/get.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "databases.read", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/get.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + } + ] + }, + "put": { + "summary": "Update database", + "operationId": "documentsDBUpdate", + "tags": [ + "documentsDB" + ], + "description": "Update a database by its unique ID.", + "responses": { + "200": { + "description": "Database", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/database" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "documentsdb", + "cookies": false, + "type": "", + "demo": "documentsdb\/update.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "databases.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/update.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "description": "Database name. Max length: 128 chars.", + "type": "string", + "example": "<NAME>" + }, + "enabled": { + "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", + "default": true, + "example": false + }, + "specification": { + "description": "Database specification. Resizing between dedicated specifications changes cpu, memory, storage and the connection ceiling via a rolling cutover with zero downtime. Moving a `serverless` database onto a dedicated specification is a data migration, not a resize.", + "type": "string", + "example": "serverless", + "nullable": true + }, + "replicas": { + "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification. High availability is enabled when greater than 0.", + "type": "integer", + "example": 0, + "format": "int32", + "nullable": true + }, + "syncMode": { + "description": "Replication sync mode for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", + "example": "async", + "nullable": true + } + }, + "required": [ + "name" + ] + } + } + } + } + }, + "delete": { + "summary": "Delete database", + "operationId": "documentsDBDelete", + "tags": [ + "documentsDB" + ], + "description": "Delete a database by its unique ID. Only API keys with with databases.write scope can delete a database.", + "responses": { + "204": { + "description": "No content" + } + }, + "deprecated": false, + "x-appwrite": { + "group": "documentsdb", + "cookies": false, + "type": "", + "demo": "documentsdb\/delete.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "databases.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + } + ] + } + }, + "\/documentsdb\/{databaseId}\/collections": { + "get": { + "summary": "List collections", + "operationId": "documentsDBListCollections", + "tags": [ + "documentsDB" + ], + "description": "Get a list of all collections that belong to the provided databaseId. You can use the search parameter to filter your results.", + "responses": { + "200": { + "description": "Collections List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/collectionList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "collections", + "cookies": false, + "type": "", + "demo": "documentsdb\/list-collections.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.read", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/list-collections.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + }, + { + "name": "queries", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, enabled, documentSecurity", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "default": [] + }, + "in": "query" + }, + { + "name": "search", + "description": "Search term to filter your list results. Max length: 256 chars.", + "required": false, + "schema": { + "type": "string", + "example": "<SEARCH>", + "default": "" + }, + "in": "query" + }, + { + "name": "total", + "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": true }, - "in": "path" + "in": "query" } ] - } - }, - "\/documentsdb\/transactions\/{transactionId}\/operations": { + }, "post": { - "summary": "Create operations", - "operationId": "documentsDBCreateOperations", + "summary": "Create collection", + "operationId": "documentsDBCreateCollection", "tags": [ "documentsDB" ], - "description": "Create multiple operations in a single transaction.", + "description": "Create a new Collection. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", "responses": { "201": { - "description": "Transaction", + "description": "Collection", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/transaction" + "$ref": "#\/components\/schemas\/collection" } } } @@ -18029,21 +22336,21 @@ }, "deprecated": false, "x-appwrite": { - "group": "transactions", + "group": "collections", "cookies": false, "type": "", - "demo": "documentsdb\/create-operations.md", + "demo": "documentsdb\/create-collection.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "documents.write", + "scope": "collections.write", "platforms": [ - "server", - "client" + "console", + "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/create-operations.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/create-collection.md", "auth": { "Project": [], "Key": [] @@ -18052,19 +22359,17 @@ "security": [ { "Project": [], - "Key": [], - "Session": [], - "JWT": [] + "Key": [] } ], "parameters": [ { - "name": "transactionId", - "description": "Transaction ID.", + "name": "databaseId", + "description": "Database ID.", "required": true, "schema": { "type": "string", - "example": "<TRANSACTION_ID>" + "example": "<DATABASE_ID>" }, "in": "path" } @@ -18075,47 +22380,84 @@ "schema": { "type": "object", "properties": { - "operations": { + "collectionId": { + "description": "Unique 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.", + "type": "string", + "example": "<COLLECTION_ID>", + "x-appwrite": { + "idGenerator": "ID.unique" + } + }, + "name": { + "description": "Collection name. Max length: 128 chars.", + "type": "string", + "example": "<NAME>" + }, + "permissions": { + "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", "type": "array", - "description": "Array of staged operations.", - "default": [], "example": [ - { - "action": "create", - "databaseId": "<DATABASE_ID>", - "collectionId": "<COLLECTION_ID>", - "documentId": "<DOCUMENT_ID>", - "data": { - "name": "Walter O'Brien" - } - } + "read(\"any\")" ], + "items": { + "type": "string" + }, + "nullable": true + }, + "documentSecurity": { + "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", + "default": false, + "example": false + }, + "enabled": { + "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", + "default": true, + "example": false + }, + "attributes": { + "description": "Array of attribute definitions to create. Each attribute should contain: key (string), type (string: string, varchar, text, mediumtext, longtext, integer, bigint, double, boolean, datetime, point, linestring, polygon, email, url, ip, enum), size (integer, required for string and varchar types), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.", + "type": "array", + "default": [], + "items": { + "type": "object" + } + }, + "indexes": { + "description": "Array of index definitions to create. Each index should contain: key (string), type (string: key, fulltext, unique, spatial), attributes (array of attribute keys), orders (array of ASC\/DESC, optional), and lengths (array of integers, optional).", + "type": "array", + "default": [], "items": { "type": "object" } } - } + }, + "required": [ + "collectionId", + "name" + ] } } } } } }, - "\/documentsdb\/{databaseId}": { + "\/documentsdb\/{databaseId}\/collections\/{collectionId}": { "get": { - "summary": "Get database", - "operationId": "documentsDBGet", + "summary": "Get collection", + "operationId": "documentsDBGetCollection", "tags": [ "documentsDB" ], - "description": "Get a database by its unique ID. This endpoint response returns a JSON object with the database metadata.", + "description": "Get a collection by its unique ID. This endpoint response returns a JSON object with the collection metadata.", "responses": { "200": { - "description": "Database", + "description": "Collection", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/database" + "$ref": "#\/components\/schemas\/collection" } } } @@ -18123,21 +22465,21 @@ }, "deprecated": false, "x-appwrite": { - "group": "documentsdb", + "group": "collections", "cookies": false, "type": "", - "demo": "documentsdb\/get.md", + "demo": "documentsdb\/get-collection.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", + "scope": "collections.read", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/get.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/get-collection.md", "auth": { "Project": [], "Key": [] @@ -18159,23 +22501,33 @@ "example": "<DATABASE_ID>" }, "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" } ] }, "put": { - "summary": "Update database", - "operationId": "documentsDBUpdate", + "summary": "Update collection", + "operationId": "documentsDBUpdateCollection", "tags": [ "documentsDB" ], - "description": "Update a database by its unique ID.", + "description": "Update a collection by its unique ID.", "responses": { "200": { - "description": "Database", + "description": "Collection", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/database" + "$ref": "#\/components\/schemas\/collection" } } } @@ -18183,21 +22535,21 @@ }, "deprecated": false, "x-appwrite": { - "group": "documentsdb", + "group": "collections", "cookies": false, "type": "", - "demo": "documentsdb\/update.md", + "demo": "documentsdb\/update-collection.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "databases.write", + "scope": "collections.write", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/update.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/update-collection.md", "auth": { "Project": [], "Key": [] @@ -18219,6 +22571,16 @@ "example": "<DATABASE_ID>" }, "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" } ], "requestBody": { @@ -18228,34 +22590,37 @@ "type": "object", "properties": { "name": { + "description": "Collection name. Max length: 128 chars.", "type": "string", - "description": "Database name. Max length: 128 chars.", "example": "<NAME>" }, + "permissions": { + "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", + "example": [ + "read(\"any\")" + ], + "items": { + "type": "string" + } + }, + "documentSecurity": { + "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", + "default": false, + "example": false + }, "enabled": { + "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", "type": "boolean", - "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", "default": true, "example": false }, - "specification": { - "type": "string", - "description": "Database specification. Resizing between dedicated specifications changes cpu, memory, storage and the connection ceiling via a rolling cutover with zero downtime. Moving a `serverless` database onto a dedicated specification is a data migration, not a resize.", - "example": "serverless", - "nullable": true - }, - "replicas": { - "type": "integer", - "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification. High availability is enabled when greater than 0.", - "example": 0, - "format": "int32", - "nullable": true - }, - "syncMode": { - "type": "string", - "description": "Replication sync mode for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", - "example": "async", - "nullable": true + "purge": { + "description": "When true, purge all cached list responses for this collection as part of the update. Use this to force readers to see fresh data immediately instead of waiting for the cache TTL to expire.", + "type": "boolean", + "default": false, + "example": false } }, "required": [ @@ -18267,12 +22632,12 @@ } }, "delete": { - "summary": "Delete database", - "operationId": "documentsDBDelete", + "summary": "Delete collection", + "operationId": "documentsDBDeleteCollection", "tags": [ "documentsDB" ], - "description": "Delete a database by its unique ID. Only API keys with with databases.write scope can delete a database.", + "description": "Delete a collection by its unique ID. Only users with write permissions have access to delete this resource.", "responses": { "204": { "description": "No content" @@ -18280,21 +22645,21 @@ }, "deprecated": false, "x-appwrite": { - "group": "documentsdb", + "group": "collections", "cookies": false, "type": "", - "demo": "documentsdb\/delete.md", + "demo": "documentsdb\/delete-collection.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "databases.write", + "scope": "collections.write", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete-collection.md", "auth": { "Project": [], "Key": [] @@ -18316,25 +22681,35 @@ "example": "<DATABASE_ID>" }, "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" } ] } }, - "\/documentsdb\/{databaseId}\/collections": { + "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/documents": { "get": { - "summary": "List collections", - "operationId": "documentsDBListCollections", + "summary": "List documents", + "operationId": "documentsDBListDocuments", "tags": [ "documentsDB" ], - "description": "Get a list of all collections that belong to the provided databaseId. You can use the search parameter to filter your results.", + "description": "Get a list of all the user's documents in a given collection. You can use the query params to filter your results.", "responses": { "200": { - "description": "Collections List", + "description": "Documents List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/collectionList" + "$ref": "#\/components\/schemas\/documentList" } } } @@ -18342,30 +22717,33 @@ }, "deprecated": false, "x-appwrite": { - "group": "collections", + "group": "documents", "cookies": false, "type": "", - "demo": "documentsdb\/list-collections.md", + "demo": "documentsdb\/list-documents.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "collections.read", + "scope": "documents.read", "platforms": [ "console", + "client", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/list-collections.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/list-documents.md", "auth": { "Project": [], - "Key": [] + "Session": [] } }, "security": [ { "Project": [], - "Key": [] + "Session": [], + "Key": [], + "JWT": [] } ], "parameters": [ @@ -18379,9 +22757,19 @@ }, "in": "path" }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" + }, { "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, enabled, documentSecurity", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", "required": false, "schema": { "type": "array", @@ -18393,13 +22781,12 @@ "in": "query" }, { - "name": "search", - "description": "Search term to filter your list results. Max length: 256 chars.", + "name": "transactionId", + "description": "Transaction ID to read uncommitted changes within the transaction.", "required": false, "schema": { "type": "string", - "example": "<SEARCH>", - "default": "" + "example": "<TRANSACTION_ID>" }, "in": "query" }, @@ -18413,23 +22800,35 @@ "default": true }, "in": "query" + }, + { + "name": "ttl", + "description": "TTL (seconds) for cached responses when caching is enabled for select queries. Must be between 0 and 86400 (24 hours).", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "example": 0, + "default": 0 + }, + "in": "query" } ] }, "post": { - "summary": "Create collection", - "operationId": "documentsDBCreateCollection", + "summary": "Create document", + "operationId": "documentsDBCreateDocument", "tags": [ "documentsDB" ], - "description": "Create a new Collection. Before using this route, you should create a new database resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", + "description": "Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", "responses": { "201": { - "description": "Collection", + "description": "Document", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/collection" + "$ref": "#\/components\/schemas\/document" } } } @@ -18437,30 +22836,94 @@ }, "deprecated": false, "x-appwrite": { - "group": "collections", + "group": "documents", "cookies": false, "type": "", - "demo": "documentsdb\/create-collection.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", + "demo": "documentsdb\/create-document.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", "platforms": [ "console", + "client", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/create-collection.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/create-document.md", + "methods": [ + { + "name": "createDocument", + "namespace": "documentsDB", + "desc": "Create document", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "databaseId", + "collectionId", + "documentId", + "data", + "permissions" + ], + "required": [ + "databaseId", + "collectionId", + "documentId", + "data" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/document" + } + ], + "description": "Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", + "demo": "documentsdb\/create-document.md", + "public": true + }, + { + "name": "createDocuments", + "namespace": "documentsDB", + "desc": "Create documents", + "auth": { + "Project": [], + "Session": [] + }, + "parameters": [ + "databaseId", + "collectionId", + "documents" + ], + "required": [ + "databaseId", + "collectionId", + "documents" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/documentList" + } + ], + "description": "Create new Documents. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", + "demo": "documentsdb\/create-documents.md", + "public": true + } + ], "auth": { "Project": [], - "Key": [] + "Session": [] } }, "security": [ { "Project": [], - "Key": [] + "Session": [], + "Key": [], + "JWT": [] } ], "parameters": [ @@ -18473,6 +22936,16 @@ "example": "<DATABASE_ID>" }, "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection). Make sure to define attributes before creating documents.", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" } ], "requestBody": { @@ -18481,106 +22954,126 @@ "schema": { "type": "object", "properties": { - "collectionId": { + "documentId": { + "description": "Document 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.", "type": "string", - "description": "Unique 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.", - "example": "<COLLECTION_ID>", + "example": "<DOCUMENT_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, - "name": { - "type": "string", - "description": "Collection name. Max length: 128 chars.", - "example": "<NAME>" + "data": { + "description": "Document data as JSON object.", + "type": "object", + "default": {}, + "example": { + "username": "walter.obrien", + "email": "walter.obrien@example.com", + "fullName": "Walter O'Brien", + "age": 30, + "isAdmin": false + } }, "permissions": { + "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", "type": "array", - "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", "example": [ "read(\"any\")" ], "items": { "type": "string" - }, - "nullable": true - }, - "documentSecurity": { - "type": "boolean", - "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", - "default": false, - "example": false - }, - "enabled": { - "type": "boolean", - "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", - "default": true, - "example": false - }, - "attributes": { - "type": "array", - "description": "Array of attribute definitions to create. Each attribute should contain: key (string), type (string: string, varchar, text, mediumtext, longtext, integer, bigint, double, boolean, datetime, point, linestring, polygon, email, url, ip, enum), size (integer, required for string and varchar types), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.", - "default": [], - "items": { - "type": "object" } }, - "indexes": { + "documents": { + "description": "Array of documents data as JSON objects.", "type": "array", - "description": "Array of index definitions to create. Each index should contain: key (string), type (string: key, fulltext, unique, spatial), attributes (array of attribute keys), orders (array of ASC\/DESC, optional), and lengths (array of integers, optional).", "default": [], "items": { "type": "object" } + }, + "transactionId": { + "description": "Transaction ID for staging the operation.", + "type": "string", + "example": "<TRANSACTION_ID>" } }, "required": [ - "collectionId", - "name" + "documentId", + "data" ] } } } } - } - }, - "\/documentsdb\/{databaseId}\/collections\/{collectionId}": { - "get": { - "summary": "Get collection", - "operationId": "documentsDBGetCollection", + }, + "put": { + "summary": "Upsert documents", + "operationId": "documentsDBUpsertDocuments", "tags": [ "documentsDB" ], - "description": "Get a collection by its unique ID. This endpoint response returns a JSON object with the collection metadata.", + "description": "Create or update Documents. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.\n", "responses": { - "200": { - "description": "Collection", + "201": { + "description": "Documents List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/collection" + "$ref": "#\/components\/schemas\/documentList" } } } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "collections", - "cookies": false, - "type": "", - "demo": "documentsdb\/get-collection.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.read", - "platforms": [ - "console", - "server" + } + }, + "deprecated": false, + "x-appwrite": { + "group": "documents", + "cookies": false, + "type": "", + "demo": "documentsdb\/upsert-documents.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/upsert-documents.md", + "methods": [ + { + "name": "upsertDocuments", + "namespace": "documentsDB", + "desc": "", + "auth": { + "Project": [], + "Key": [] + }, + "parameters": [ + "databaseId", + "collectionId", + "documents", + "transactionId" + ], + "required": [ + "databaseId", + "collectionId", + "documents" + ], + "responses": [ + { + "code": 201, + "model": "#\/components\/schemas\/documentList" + } + ], + "description": "Create or update Documents. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.\n", + "demo": "documentsdb\/upsert-documents.md", + "public": true + } ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/get-collection.md", "auth": { "Project": [], "Key": [] @@ -18613,22 +23106,48 @@ }, "in": "path" } - ] + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "documents": { + "description": "Array of document data as JSON objects. May contain partial documents.", + "type": "array", + "items": { + "type": "object" + } + }, + "transactionId": { + "description": "Transaction ID for staging the operation.", + "type": "string", + "example": "<TRANSACTION_ID>" + } + }, + "required": [ + "documents" + ] + } + } + } + } }, - "put": { - "summary": "Update collection", - "operationId": "documentsDBUpdateCollection", + "patch": { + "summary": "Update documents", + "operationId": "documentsDBUpdateDocuments", "tags": [ "documentsDB" ], - "description": "Update a collection by its unique ID.", + "description": "Update all documents that match your queries, if no queries are submitted then all documents are updated. You can pass only specific fields to be updated.", "responses": { "200": { - "description": "Collection", + "description": "Documents List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/collection" + "$ref": "#\/components\/schemas\/documentList" } } } @@ -18636,21 +23155,21 @@ }, "deprecated": false, "x-appwrite": { - "group": "collections", + "group": "documents", "cookies": false, "type": "", - "demo": "documentsdb\/update-collection.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", + "demo": "documentsdb\/update-documents.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/update-collection.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/update-documents.md", "auth": { "Project": [], "Key": [] @@ -18690,77 +23209,67 @@ "schema": { "type": "object", "properties": { - "name": { - "type": "string", - "description": "Collection name. Max length: 128 chars.", - "example": "<NAME>" + "data": { + "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", + "default": [], + "example": {} }, - "permissions": { + "queries": { + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", "type": "array", - "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", - "example": [ - "read(\"any\")" - ], + "default": [], "items": { "type": "string" } }, - "documentSecurity": { - "type": "boolean", - "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", - "default": false, - "example": false - }, - "enabled": { - "type": "boolean", - "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", - "default": true, - "example": false - }, - "purge": { - "type": "boolean", - "description": "When true, purge all cached list responses for this collection as part of the update. Use this to force readers to see fresh data immediately instead of waiting for the cache TTL to expire.", - "default": false, - "example": false + "transactionId": { + "description": "Transaction ID for staging the operation.", + "type": "string", + "example": "<TRANSACTION_ID>" } - }, - "required": [ - "name" - ] + } } } } } }, "delete": { - "summary": "Delete collection", - "operationId": "documentsDBDeleteCollection", + "summary": "Delete documents", + "operationId": "documentsDBDeleteDocuments", "tags": [ "documentsDB" ], - "description": "Delete a collection by its unique ID. Only users with write permissions have access to delete this resource.", + "description": "Bulk delete documents using queries, if no queries are passed then all documents are deleted.", "responses": { - "204": { - "description": "No content" + "200": { + "description": "Documents List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/documentList" + } + } + } } }, "deprecated": false, "x-appwrite": { - "group": "collections", + "group": "documents", "cookies": false, "type": "", - "demo": "documentsdb\/delete-collection.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", + "demo": "documentsdb\/delete-documents.md", + "rate-limit": 60, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete-collection.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete-documents.md", "auth": { "Project": [], "Key": [] @@ -18785,32 +23294,55 @@ }, { "name": "collectionId", - "description": "Collection ID.", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", "required": true, "schema": { "type": "string", "example": "<COLLECTION_ID>" }, "in": "path" + }, + { + "name": "queries", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "default": [] + }, + "in": "query" + }, + { + "name": "transactionId", + "description": "Transaction ID for staging the operation.", + "required": false, + "schema": { + "type": "string", + "example": "<TRANSACTION_ID>" + }, + "in": "query" } ] } }, - "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/documents": { + "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/documents\/{documentId}": { "get": { - "summary": "List documents", - "operationId": "documentsDBListDocuments", + "summary": "Get document", + "operationId": "documentsDBGetDocument", "tags": [ "documentsDB" ], - "description": "Get a list of all the user's documents in a given collection. You can use the query params to filter your results.", + "description": "Get a document by its unique ID. This endpoint response returns a JSON object with the document data.", "responses": { "200": { - "description": "Documents List", + "description": "Document", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/documentList" + "$ref": "#\/components\/schemas\/document" } } } @@ -18821,7 +23353,7 @@ "group": "documents", "cookies": false, "type": "", - "demo": "documentsdb\/list-documents.md", + "demo": "documentsdb\/get-document.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -18833,7 +23365,7 @@ ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/list-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/get-document.md", "auth": { "Project": [], "Session": [] @@ -18868,6 +23400,16 @@ }, "in": "path" }, + { + "name": "documentId", + "description": "Document ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DOCUMENT_ID>" + }, + "in": "path" + }, { "name": "queries", "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", @@ -18890,39 +23432,16 @@ "example": "<TRANSACTION_ID>" }, "in": "query" - }, - { - "name": "total", - "description": "When set to false, the total count returned will be 0 and will not be calculated.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": true - }, - "in": "query" - }, - { - "name": "ttl", - "description": "TTL (seconds) for cached responses when caching is enabled for select queries. Must be between 0 and 86400 (24 hours).", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 0 - }, - "in": "query" } ] }, - "post": { - "summary": "Create document", - "operationId": "documentsDBCreateDocument", + "put": { + "summary": "Upsert a document", + "operationId": "documentsDBUpsertDocument", "tags": [ "documentsDB" ], - "description": "Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", + "description": "Create or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", "responses": { "201": { "description": "Document", @@ -18940,7 +23459,7 @@ "group": "documents", "cookies": false, "type": "", - "demo": "documentsdb\/create-document.md", + "demo": "documentsdb\/upsert-document.md", "rate-limit": 120, "rate-time": 60, "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", @@ -18952,12 +23471,12 @@ ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/create-document.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/upsert-document.md", "methods": [ { - "name": "createDocument", + "name": "upsertDocument", "namespace": "documentsDB", - "desc": "Create document", + "desc": "", "auth": { "Project": [], "Session": [] @@ -18967,13 +23486,13 @@ "collectionId", "documentId", "data", - "permissions" + "permissions", + "transactionId" ], "required": [ "databaseId", "collectionId", - "documentId", - "data" + "documentId" ], "responses": [ { @@ -18981,36 +23500,8 @@ "model": "#\/components\/schemas\/document" } ], - "description": "Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", - "demo": "documentsdb\/create-document.md", - "public": true - }, - { - "name": "createDocuments", - "namespace": "documentsDB", - "desc": "Create documents", - "auth": { - "Project": [], - "Session": [] - }, - "parameters": [ - "databaseId", - "collectionId", - "documents" - ], - "required": [ - "databaseId", - "collectionId", - "documents" - ], - "responses": [ - { - "code": 201, - "model": "#\/components\/schemas\/documentList" - } - ], - "description": "Create new Documents. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", - "demo": "documentsdb\/create-documents.md", + "description": "Create or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", + "demo": "documentsdb\/upsert-document.md", "public": true } ], @@ -19040,13 +23531,23 @@ }, { "name": "collectionId", - "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection). Make sure to define attributes before creating documents.", + "description": "Collection ID.", "required": true, "schema": { "type": "string", "example": "<COLLECTION_ID>" }, "in": "path" + }, + { + "name": "documentId", + "description": "Document ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DOCUMENT_ID>" + }, + "in": "path" } ], "requestBody": { @@ -19055,29 +23556,15 @@ "schema": { "type": "object", "properties": { - "documentId": { - "type": "string", - "description": "Document 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.", - "example": "<DOCUMENT_ID>", - "x-appwrite": { - "idGenerator": "ID.unique" - } - }, "data": { + "description": "Document data as JSON object. Include all required fields of the document to be created or updated.", "type": "object", - "description": "Document data as JSON object.", - "default": {}, - "example": { - "username": "walter.obrien", - "email": "walter.obrien@example.com", - "fullName": "Walter O'Brien", - "age": 30, - "isAdmin": false - } + "default": [], + "example": {} }, "permissions": { + "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", "type": "array", - "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", "example": [ "read(\"any\")" ], @@ -19085,43 +23572,234 @@ "type": "string" } }, - "documents": { - "type": "array", - "description": "Array of documents data as JSON objects.", + "transactionId": { + "description": "Transaction ID for staging the operation.", + "type": "string", + "example": "<TRANSACTION_ID>" + } + } + } + } + } + } + }, + "patch": { + "summary": "Update document", + "operationId": "documentsDBUpdateDocument", + "tags": [ + "documentsDB" + ], + "description": "Update a document by its unique ID. Using the patch method you can pass only specific fields that will get updated.", + "responses": { + "200": { + "description": "Document", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/document" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "documents", + "cookies": false, + "type": "", + "demo": "documentsdb\/update-document.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/update-document.md", + "auth": { + "Project": [], + "Session": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID.", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" + }, + { + "name": "documentId", + "description": "Document ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DOCUMENT_ID>" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "description": "Document data as JSON object. Include only fields and value pairs to be updated.", + "type": "object", "default": [], + "example": {} + }, + "permissions": { + "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", + "example": [ + "read(\"any\")" + ], "items": { - "type": "object" + "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } - }, - "required": [ - "documentId", - "data" - ] + } } } } - } - }, - "put": { - "summary": "Upsert documents", - "operationId": "documentsDBUpsertDocuments", + } + }, + "delete": { + "summary": "Delete document", + "operationId": "documentsDBDeleteDocument", + "tags": [ + "documentsDB" + ], + "description": "Delete a document by its unique ID.", + "responses": { + "204": { + "description": "No content" + } + }, + "deprecated": false, + "x-appwrite": { + "group": "documents", + "cookies": false, + "type": "", + "demo": "documentsdb\/delete-document.md", + "rate-limit": 60, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "documents.write", + "platforms": [ + "console", + "client", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete-document.md", + "auth": { + "Project": [], + "Session": [] + } + }, + "security": [ + { + "Project": [], + "Session": [], + "Key": [], + "JWT": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" + }, + { + "name": "documentId", + "description": "Document ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DOCUMENT_ID>" + }, + "in": "path" + }, + { + "name": "transactionId", + "description": "Transaction ID for staging the operation.", + "required": false, + "schema": { + "type": "string", + "example": "<TRANSACTION_ID>" + }, + "in": "query" + } + ] + } + }, + "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/documents\/{documentId}\/{attribute}\/decrement": { + "patch": { + "summary": "Decrement document attribute", + "operationId": "documentsDBDecrementDocumentAttribute", "tags": [ "documentsDB" ], - "description": "Create or update Documents. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.\n", + "description": "Decrement a specific column of a row by a given value.", "responses": { - "201": { - "description": "Documents List", + "200": { + "description": "Document", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/documentList" + "$ref": "#\/components\/schemas\/document" } } } @@ -19132,57 +23810,29 @@ "group": "documents", "cookies": false, "type": "", - "demo": "documentsdb\/upsert-documents.md", + "demo": "documentsdb\/decrement-document-attribute.md", "rate-limit": 120, "rate-time": 60, "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", "scope": "documents.write", "platforms": [ - "console", - "server" + "client", + "server", + "console" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/upsert-documents.md", - "methods": [ - { - "name": "upsertDocuments", - "namespace": "documentsDB", - "desc": "", - "auth": { - "Project": [], - "Key": [] - }, - "parameters": [ - "databaseId", - "collectionId", - "documents", - "transactionId" - ], - "required": [ - "databaseId", - "collectionId", - "documents" - ], - "responses": [ - { - "code": 201, - "model": "#\/components\/schemas\/documentList" - } - ], - "description": "Create or update Documents. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.\n", - "demo": "documentsdb\/upsert-documents.md", - "public": true - } - ], + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/decrement-document-attribute.md", "auth": { "Project": [], - "Key": [] + "Session": [] } }, "security": [ { "Project": [], + "Session": [], + "JWT": [], "Key": [] } ], @@ -19206,6 +23856,25 @@ "example": "<COLLECTION_ID>" }, "in": "path" + }, + { + "name": "documentId", + "description": "Document ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DOCUMENT_ID>" + }, + "in": "path" + }, + { + "name": "attribute", + "description": "Attribute key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" } ], "requestBody": { @@ -19214,41 +23883,44 @@ "schema": { "type": "object", "properties": { - "documents": { - "type": "array", - "description": "Array of document data as JSON objects. May contain partial documents.", - "items": { - "type": "object" - } + "value": { + "description": "Value to decrement the attribute by. The value must be a number.", + "type": "number", + "default": 1, + "format": "float" + }, + "min": { + "description": "Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", + "format": "float" }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } - }, - "required": [ - "documents" - ] + } } } } } - }, + } + }, + "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/documents\/{documentId}\/{attribute}\/increment": { "patch": { - "summary": "Update documents", - "operationId": "documentsDBUpdateDocuments", + "summary": "Increment document attribute", + "operationId": "documentsDBIncrementDocumentAttribute", "tags": [ "documentsDB" ], - "description": "Update all documents that match your queries, if no queries are submitted then all documents are updated. You can pass only specific fields to be updated.", + "description": "Increment a specific column of a row by a given value.", "responses": { "200": { - "description": "Documents List", + "description": "Document", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/documentList" + "$ref": "#\/components\/schemas\/document" } } } @@ -19259,26 +23931,29 @@ "group": "documents", "cookies": false, "type": "", - "demo": "documentsdb\/update-documents.md", + "demo": "documentsdb\/increment-document-attribute.md", "rate-limit": 120, "rate-time": 60, "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", "scope": "documents.write", "platforms": [ - "console", - "server" + "client", + "server", + "console" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/update-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/increment-document-attribute.md", "auth": { "Project": [], - "Key": [] + "Session": [] } }, "security": [ { "Project": [], + "Session": [], + "JWT": [], "Key": [] } ], @@ -19302,6 +23977,25 @@ "example": "<COLLECTION_ID>" }, "in": "path" + }, + { + "name": "documentId", + "description": "Document ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DOCUMENT_ID>" + }, + "in": "path" + }, + { + "name": "attribute", + "description": "Attribute key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" } ], "requestBody": { @@ -19310,23 +24004,20 @@ "schema": { "type": "object", "properties": { - "data": { - "type": "object", - "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", - "default": [], - "example": {} + "value": { + "description": "Value to increment the attribute by. The value must be a number.", + "type": "number", + "default": 1, + "format": "float" }, - "queries": { - "type": "array", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", - "default": [], - "items": { - "type": "string" - } + "max": { + "description": "Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.", + "type": "number", + "format": "float" }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } } @@ -19334,21 +24025,23 @@ } } } - }, - "delete": { - "summary": "Delete documents", - "operationId": "documentsDBDeleteDocuments", + } + }, + "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/indexes": { + "get": { + "summary": "List indexes", + "operationId": "documentsDBListIndexes", "tags": [ "documentsDB" ], - "description": "Bulk delete documents using queries, if no queries are passed then all documents are deleted.", + "description": "List indexes in the collection.", "responses": { "200": { - "description": "Documents List", + "description": "Indexes List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/documentList" + "$ref": "#\/components\/schemas\/indexList" } } } @@ -19356,21 +24049,21 @@ }, "deprecated": false, "x-appwrite": { - "group": "documents", + "group": "indexes", "cookies": false, "type": "", - "demo": "documentsdb\/delete-documents.md", - "rate-limit": 60, - "rate-time": 60, - "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", - "scope": "documents.write", + "demo": "documentsdb\/list-indexes.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.read", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete-documents.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/list-indexes.md", "auth": { "Project": [], "Key": [] @@ -19405,7 +24098,7 @@ }, { "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: key, type, status, attributes, error", "required": false, "schema": { "type": "array", @@ -19417,33 +24110,32 @@ "in": "query" }, { - "name": "transactionId", - "description": "Transaction ID for staging the operation.", + "name": "total", + "description": "When set to false, the total count returned will be 0 and will not be calculated.", "required": false, "schema": { - "type": "string", - "example": "<TRANSACTION_ID>" + "type": "boolean", + "example": false, + "default": true }, "in": "query" } ] - } - }, - "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/documents\/{documentId}": { - "get": { - "summary": "Get document", - "operationId": "documentsDBGetDocument", + }, + "post": { + "summary": "Create index", + "operationId": "documentsDBCreateIndex", "tags": [ "documentsDB" ], - "description": "Get a document by its unique ID. This endpoint response returns a JSON object with the document data.", + "description": "Creates an index on the attributes listed. Your index should include all the attributes you will query in a single request.\nAttributes can be `key`, `fulltext`, and `unique`.", "responses": { - "200": { - "description": "Document", + "202": { + "description": "Index", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/document" + "$ref": "#\/components\/schemas\/index" } } } @@ -19451,33 +24143,30 @@ }, "deprecated": false, "x-appwrite": { - "group": "documents", + "group": "indexes", "cookies": false, "type": "", - "demo": "documentsdb\/get-document.md", + "demo": "documentsdb\/create-index.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "documents.read", + "scope": "collections.write", "platforms": [ "console", - "client", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/get-document.md", + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/create-index.md", "auth": { "Project": [], - "Session": [] + "Key": [] } }, "security": [ { "Project": [], - "Session": [], - "Key": [], - "JWT": [] + "Key": [] } ], "parameters": [ @@ -19500,56 +24189,114 @@ "example": "<COLLECTION_ID>" }, "in": "path" - }, - { - "name": "documentId", - "description": "Document ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DOCUMENT_ID>" - }, - "in": "path" - }, - { - "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - }, - "default": [] - }, - "in": "query" - }, - { - "name": "transactionId", - "description": "Transaction ID to read uncommitted changes within the transaction.", - "required": false, - "schema": { - "type": "string", - "example": "<TRANSACTION_ID>" - }, - "in": "query" } - ] - }, - "put": { - "summary": "Upsert a document", - "operationId": "documentsDBUpsertDocument", + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "key": { + "description": "Index Key.", + "type": "string" + }, + "type": { + "description": "Index type.", + "type": "string", + "example": "key", + "title": "DocumentsDBIndexType", + "oneOf": [ + { + "type": "string", + "enum": [ + "key" + ], + "title": "key" + }, + { + "type": "string", + "enum": [ + "fulltext" + ], + "title": "fulltext" + }, + { + "type": "string", + "enum": [ + "unique" + ], + "title": "unique" + } + ] + }, + "attributes": { + "description": "Array of attributes to index. Maximum of 100 attributes are allowed, each 32 characters long.", + "type": "array", + "items": { + "type": "string" + } + }, + "orders": { + "description": "Array of index orders. Maximum of 100 orders are allowed.", + "type": "array", + "default": [], + "items": { + "title": "OrderBy", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } + ] + } + }, + "lengths": { + "description": "Length of index. Maximum of 100", + "type": "array", + "default": [], + "items": { + "type": "integer" + } + } + }, + "required": [ + "key", + "type", + "attributes" + ] + } + } + } + } + } + }, + "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/indexes\/{key}": { + "get": { + "summary": "Get index", + "operationId": "documentsDBGetIndex", "tags": [ "documentsDB" ], - "description": "Create or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", + "description": "Get index by ID.", "responses": { - "201": { - "description": "Document", + "200": { + "description": "Index", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/document" + "$ref": "#\/components\/schemas\/index" } } } @@ -19557,66 +24304,30 @@ }, "deprecated": false, "x-appwrite": { - "group": "documents", + "group": "indexes", "cookies": false, "type": "", - "demo": "documentsdb\/upsert-document.md", - "rate-limit": 120, - "rate-time": 60, - "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", - "scope": "documents.write", + "demo": "documentsdb\/get-index.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.read", "platforms": [ "console", - "client", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/upsert-document.md", - "methods": [ - { - "name": "upsertDocument", - "namespace": "documentsDB", - "desc": "", - "auth": { - "Project": [], - "Session": [] - }, - "parameters": [ - "databaseId", - "collectionId", - "documentId", - "data", - "permissions", - "transactionId" - ], - "required": [ - "databaseId", - "collectionId", - "documentId" - ], - "responses": [ - { - "code": 201, - "model": "#\/components\/schemas\/document" - } - ], - "description": "Create or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#documentsDBCreateCollection) API or directly from your database console.", - "demo": "documentsdb\/upsert-document.md", - "public": true - } - ], + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/get-index.md", "auth": { "Project": [], - "Session": [] + "Key": [] } }, "security": [ { "Project": [], - "Session": [], - "Key": [], - "JWT": [] + "Key": [] } ], "parameters": [ @@ -19632,7 +24343,7 @@ }, { "name": "collectionId", - "description": "Collection ID.", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", "required": true, "schema": { "type": "string", @@ -19641,63 +24352,104 @@ "in": "path" }, { - "name": "documentId", - "description": "Document ID.", + "name": "key", + "description": "Index Key.", "required": true, "schema": { - "type": "string", - "example": "<DOCUMENT_ID>" + "type": "string" }, "in": "path" } + ] + }, + "delete": { + "summary": "Delete index", + "operationId": "documentsDBDeleteIndex", + "tags": [ + "documentsDB" ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "object", - "description": "Document data as JSON object. Include all required fields of the document to be created or updated.", - "default": [], - "example": {} - }, - "permissions": { - "type": "array", - "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", - "example": [ - "read(\"any\")" - ], - "items": { - "type": "string" - } - }, - "transactionId": { - "type": "string", - "description": "Transaction ID for staging the operation.", - "example": "<TRANSACTION_ID>" - } - } - } - } + "description": "Delete an index.", + "responses": { + "204": { + "description": "No content" + } + }, + "deprecated": false, + "x-appwrite": { + "group": "indexes", + "cookies": false, + "type": "", + "demo": "documentsdb\/delete-index.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "collections.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete-index.md", + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "databaseId", + "description": "Database ID.", + "required": true, + "schema": { + "type": "string", + "example": "<DATABASE_ID>" + }, + "in": "path" + }, + { + "name": "collectionId", + "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", + "required": true, + "schema": { + "type": "string", + "example": "<COLLECTION_ID>" + }, + "in": "path" + }, + { + "name": "key", + "description": "Index Key.", + "required": true, + "schema": { + "type": "string" + }, + "in": "path" } - } - }, - "patch": { - "summary": "Update document", - "operationId": "documentsDBUpdateDocument", + ] + } + }, + "\/documentsdb\/{databaseId}\/failovers": { + "post": { + "summary": "Create failover", + "operationId": "documentsDBCreateFailover", "tags": [ "documentsDB" ], - "description": "Update a document by its unique ID. Using the patch method you can pass only specific fields that will get updated.", + "description": "Trigger a manual failover for a dedicated database with high availability enabled. Promotes a replica to primary. The failover runs asynchronously; poll the database document for status updates. A database left mid-operation also accepts this call as a repair once nothing is driving the operation it is stuck in. Repairing a failover that did not finish, a `failed` database, a stranded upgrade or migrate, or a stranded compute resize additionally requires `targetReplicaId` to name the member to promote, because the default target may be the member that operation already promoted.", "responses": { - "200": { - "description": "Document", + "202": { + "description": "DedicatedDatabase", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/document" + "$ref": "#\/components\/schemas\/dedicatedDatabase" } } } @@ -19705,33 +24457,29 @@ }, "deprecated": false, "x-appwrite": { - "group": "documents", + "group": "failovers", "cookies": false, "type": "", - "demo": "documentsdb\/update-document.md", - "rate-limit": 120, - "rate-time": 60, - "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", - "scope": "documents.write", + "demo": "documentsdb\/create-failover.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "databases.write", "platforms": [ "console", - "client", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/update-document.md", "auth": { "Project": [], - "Session": [] + "Key": [] } }, "security": [ { "Project": [], - "Session": [], - "Key": [], - "JWT": [] + "Key": [] } ], "parameters": [ @@ -19744,26 +24492,6 @@ "example": "<DATABASE_ID>" }, "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID.", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - }, - { - "name": "documentId", - "description": "Document ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DOCUMENT_ID>" - }, - "in": "path" } ], "requestBody": { @@ -19772,74 +24500,64 @@ "schema": { "type": "object", "properties": { - "data": { - "type": "object", - "description": "Document data as JSON object. Include only fields and value pairs to be updated.", - "default": [], - "example": {} - }, - "permissions": { - "type": "array", - "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", - "example": [ - "read(\"any\")" - ], - "items": { - "type": "string" - } - }, - "transactionId": { + "targetReplicaId": { + "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", "type": "string", - "description": "Transaction ID for staging the operation.", - "example": "<TRANSACTION_ID>" + "example": "<TARGET_REPLICA_ID>", + "nullable": true } } } } } } - }, - "delete": { - "summary": "Delete document", - "operationId": "documentsDBDeleteDocument", + } + }, + "\/documentsdb\/{databaseId}\/operations": { + "get": { + "summary": "List operations", + "operationId": "documentsDBListOperations", "tags": [ "documentsDB" ], - "description": "Delete a document by its unique ID.", + "description": "List the lifecycle operations recorded for a dedicated database, newest first. Every provision, update, restore, backup and replication action is recorded here with its outcome, including an attempt that was abandoned because another worker took over the database.", "responses": { - "204": { - "description": "No content" + "200": { + "description": "OperationList", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/dedicatedDatabaseOperationList" + } + } + } } }, "deprecated": false, "x-appwrite": { - "group": "documents", + "group": "operations", "cookies": false, "type": "", - "demo": "documentsdb\/delete-document.md", - "rate-limit": 60, - "rate-time": 60, - "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", - "scope": "documents.write", + "demo": "documentsdb\/list-operations.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "databases.read", "platforms": [ "console", - "client", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete-document.md", "auth": { "Project": [], - "Session": [] + "Key": [] } }, "security": [ { "Project": [], - "Session": [], - "Key": [], - "JWT": [] + "Key": [] } ], "parameters": [ @@ -19854,53 +24572,57 @@ "in": "path" }, { - "name": "collectionId", - "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", - "required": true, + "name": "status", + "description": "Filter by operation status.", + "required": false, "schema": { "type": "string", - "example": "<COLLECTION_ID>" + "example": "running" }, - "in": "path" + "in": "query" }, { - "name": "documentId", - "description": "Document ID.", - "required": true, + "name": "limit", + "description": "Maximum number of operations to return.", + "required": false, "schema": { - "type": "string", - "example": "<DOCUMENT_ID>" + "type": "integer", + "format": "int32", + "example": 1, + "default": 25 }, - "in": "path" + "in": "query" }, { - "name": "transactionId", - "description": "Transaction ID for staging the operation.", + "name": "offset", + "description": "Number of operations to skip.", "required": false, "schema": { - "type": "string", - "example": "<TRANSACTION_ID>" + "type": "integer", + "format": "int32", + "example": 0, + "default": 0 }, "in": "query" } ] } }, - "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/documents\/{documentId}\/{attribute}\/decrement": { - "patch": { - "summary": "Decrement document attribute", - "operationId": "documentsDBDecrementDocumentAttribute", + "\/documentsdb\/{databaseId}\/replicas": { + "get": { + "summary": "Get replicas", + "operationId": "documentsDBGetReplicas", "tags": [ "documentsDB" ], - "description": "Decrement a specific column of a row by a given value.", + "description": "Get high availability status for a dedicated database. Returns replica statuses, replication lag, and sync mode.", "responses": { "200": { - "description": "Document", + "description": "Replicas", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/document" + "$ref": "#\/components\/schemas\/dedicatedDatabaseReplicas" } } } @@ -19908,32 +24630,28 @@ }, "deprecated": false, "x-appwrite": { - "group": "documents", + "group": "replicas", "cookies": false, "type": "", - "demo": "documentsdb\/decrement-document-attribute.md", - "rate-limit": 120, - "rate-time": 60, - "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", - "scope": "documents.write", + "demo": "documentsdb\/get-replicas.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "databases.read", "platforms": [ - "client", - "server", - "console" + "console", + "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/decrement-document-attribute.md", "auth": { "Project": [], - "Session": [] + "Key": [] } }, "security": [ { "Project": [], - "Session": [], - "JWT": [], "Key": [] } ], @@ -19947,81 +24665,25 @@ "example": "<DATABASE_ID>" }, "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID.", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - }, - { - "name": "documentId", - "description": "Document ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DOCUMENT_ID>" - }, - "in": "path" - }, - { - "name": "attribute", - "description": "Attribute key.", - "required": true, - "schema": { - "type": "string" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "value": { - "type": "number", - "description": "Value to decrement the attribute by. The value must be a number.", - "default": 1, - "format": "float" - }, - "min": { - "type": "number", - "description": "Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.", - "format": "float" - }, - "transactionId": { - "type": "string", - "description": "Transaction ID for staging the operation.", - "example": "<TRANSACTION_ID>" - } - } - } - } } - } + ] } }, - "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/documents\/{documentId}\/{attribute}\/increment": { - "patch": { - "summary": "Increment document attribute", - "operationId": "documentsDBIncrementDocumentAttribute", + "\/documentsdb\/{databaseId}\/status": { + "get": { + "summary": "Get status", + "operationId": "documentsDBGetStatus", "tags": [ "documentsDB" ], - "description": "Increment a specific column of a row by a given value.", + "description": "Get real-time health and status information for a dedicated database. Returns health status, readiness, uptime, connection info, replica status, and volume information.", "responses": { "200": { - "description": "Document", + "description": "Status", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/document" + "$ref": "#\/components\/schemas\/databaseStatus" } } } @@ -20029,32 +24691,28 @@ }, "deprecated": false, "x-appwrite": { - "group": "documents", + "group": "documentsdb", "cookies": false, "type": "", - "demo": "documentsdb\/increment-document-attribute.md", - "rate-limit": 120, - "rate-time": 60, - "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", - "scope": "documents.write", + "demo": "documentsdb\/get-status.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "databases.read", "platforms": [ - "client", - "server", - "console" + "console", + "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/increment-document-attribute.md", "auth": { "Project": [], - "Session": [] + "Key": [] } }, "security": [ { "Project": [], - "Session": [], - "JWT": [], "Key": [] } ], @@ -20068,35 +24726,84 @@ "example": "<DATABASE_ID>" }, "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID.", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - }, - { - "name": "documentId", - "description": "Document ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DOCUMENT_ID>" - }, - "in": "path" - }, + } + ] + } + }, + "\/embeddings\/text": { + "post": { + "summary": "Create text embeddings", + "operationId": "embeddingsCreateTextEmbeddings", + "tags": [ + "embeddings" + ], + "description": "Generate vector embeddings for an array of text using the selected embedding model. Use the returned vectors to power semantic search and similarity queries against your vector collections.\n", + "responses": { + "200": { + "description": "Embedding list", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/embeddingList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "embeddings", + "cookies": false, + "type": "", + "demo": "embeddings\/create-text-embeddings.md", + "rate-limit": 120, + "rate-time": 60, + "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", + "scope": "embeddings.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/embeddings\/create-text-embeddings.md", + "methods": [ + { + "name": "createTextEmbeddings", + "namespace": "embeddings", + "desc": "Create Text Embedding", + "auth": { + "Project": [], + "Key": [] + }, + "parameters": [ + "texts", + "model" + ], + "required": [ + "texts" + ], + "responses": [ + { + "code": 200, + "model": "#\/components\/schemas\/embeddingList" + } + ], + "description": "Generate vector embeddings for an array of text using the selected embedding model. Use the returned vectors to power semantic search and similarity queries against your vector collections.\n", + "demo": "embeddings\/create-text-embeddings.md", + "public": true + } + ], + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ { - "name": "attribute", - "description": "Attribute key.", - "required": true, - "schema": { - "type": "string" - }, - "in": "path" + "Project": [], + "Key": [], + "JWT": [] } ], "requestBody": { @@ -20105,44 +24812,75 @@ "schema": { "type": "object", "properties": { - "value": { - "type": "number", - "description": "Value to increment the attribute by. The value must be a number.", - "default": 1, - "format": "float" - }, - "max": { - "type": "number", - "description": "Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.", - "format": "float" + "texts": { + "description": "Array of text to generate embeddings.", + "type": "array", + "items": { + "type": "string" + } }, - "transactionId": { + "model": { + "description": "The embedding model to use for generating vector embeddings.", "type": "string", - "description": "Transaction ID for staging the operation.", - "example": "<TRANSACTION_ID>" + "default": "nomic-embed-text", + "example": "nomic-embed-text", + "title": "EmbeddingModel", + "oneOf": [ + { + "type": "string", + "enum": [ + "nomic-embed-text" + ], + "title": "nomic-embed-text" + }, + { + "type": "string", + "enum": [ + "embedding-gemma" + ], + "title": "embedding-gemma" + }, + { + "type": "string", + "enum": [ + "all-minilm" + ], + "title": "all-minilm" + }, + { + "type": "string", + "enum": [ + "bge-small" + ], + "title": "bge-small" + } + ] } - } + }, + "required": [ + "texts" + ] } } } } } }, - "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/indexes": { + "\/functions": { "get": { - "summary": "List indexes", - "operationId": "documentsDBListIndexes", + "summary": "List functions", + "operationId": "functionsList", "tags": [ - "documentsDB" + "functions" ], - "description": "List indexes in the collection.", + "description": "Get a list of all the project's functions. You can use the query params to filter your results.", "responses": { "200": { - "description": "Indexes List", + "description": "Functions List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/indexList" + "$ref": "#\/components\/schemas\/functionList" } } } @@ -20150,56 +24888,35 @@ }, "deprecated": false, "x-appwrite": { - "group": "indexes", + "group": "functions", "cookies": false, "type": "", - "demo": "documentsdb\/list-indexes.md", + "demo": "functions\/list.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "collections.read", + "scope": "functions.read", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/list-indexes.md", "auth": { "Project": [], "Key": [] } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - }, + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ { "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: key, type, status, attributes, error", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, enabled, runtime, deploymentId, schedule, scheduleNext, schedulePrevious, timeout, entrypoint, commands, installationId", "required": false, "schema": { "type": "array", @@ -20210,6 +24927,17 @@ }, "in": "query" }, + { + "name": "search", + "description": "Search term to filter your list results. Max length: 256 chars.", + "required": false, + "schema": { + "type": "string", + "example": "<SEARCH>", + "default": "" + }, + "in": "query" + }, { "name": "total", "description": "When set to false, the total count returned will be 0 and will not be calculated.", @@ -20224,19 +24952,19 @@ ] }, "post": { - "summary": "Create index", - "operationId": "documentsDBCreateIndex", + "summary": "Create function", + "operationId": "functionsCreate", "tags": [ - "documentsDB" + "functions" ], - "description": "Creates an index on the attributes listed. Your index should include all the attributes you will query in a single request.\nAttributes can be `key`, `fulltext`, and `unique`.", + "description": "Create a new function. You can pass a list of [permissions](https:\/\/appwrite.io\/docs\/permissions) to allow different project users or team with access to execute the function using the client API.", "responses": { - "202": { - "description": "Index", + "201": { + "description": "Function", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/index" + "$ref": "#\/components\/schemas\/function" } } } @@ -20244,21 +24972,20 @@ }, "deprecated": false, "x-appwrite": { - "group": "indexes", + "group": "functions", "cookies": false, "type": "", - "demo": "documentsdb\/create-index.md", + "demo": "functions\/create.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", + "scope": "functions.write", "platforms": [ "console", "server" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/create-index.md", "auth": { "Project": [], "Key": [] @@ -20270,91 +24997,1567 @@ "Key": [] } ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - } - ], "requestBody": { "content": { "application\/json": { "schema": { "type": "object", "properties": { - "key": { + "functionId": { + "description": "Function 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.", "type": "string", - "description": "Index Key." + "example": "<FUNCTION_ID>", + "x-appwrite": { + "idGenerator": "ID.unique" + } }, - "type": { + "name": { + "description": "Function name. Max length: 128 chars.", + "type": "string", + "example": "<NAME>" + }, + "runtime": { + "description": "Execution runtime.", + "type": "string", + "example": "node-14.5", + "title": "Runtime", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { + "type": "string", + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" + }, + { + "type": "string", + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" + }, + { + "type": "string", + "enum": [ + "dart-3.12" + ], + "title": "dart-3.12" + }, + { + "type": "string", + "enum": [ + "dotnet-6.0" + ], + "title": "dotnet-6.0" + }, + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" + }, + { + "type": "string", + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" + }, + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" + }, + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" + }, + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" + }, + { + "type": "string", + "enum": [ + "java-17.0" + ], + "title": "java-17.0" + }, + { + "type": "string", + "enum": [ + "java-18.0" + ], + "title": "java-18.0" + }, + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" + }, + { + "type": "string", + "enum": [ + "java-22" + ], + "title": "java-22" + }, + { + "type": "string", + "enum": [ + "java-25" + ], + "title": "java-25" + }, + { + "type": "string", + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" + }, + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" + }, + { + "type": "string", + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" + }, + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" + }, + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" + }, + { + "type": "string", + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" + }, + { + "type": "string", + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" + }, + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" + } + ] + }, + "execute": { + "description": "An array of role strings with execution permissions. By default no user is granted with any execute permissions. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", + "type": "array", + "default": [], + "example": [ + "any" + ], + "items": { + "type": "string" + } + }, + "events": { + "description": "Events list. Maximum of 100 events are allowed.", + "type": "array", + "default": [], + "items": { + "type": "string" + } + }, + "schedule": { + "description": "Schedule CRON syntax.", + "type": "string", + "default": "" + }, + "timeout": { + "description": "Function maximum execution time in seconds.", + "type": "integer", + "default": 15, + "example": 1, + "format": "int32" + }, + "enabled": { + "description": "Is function enabled? When set to 'disabled', users cannot access the function but Server SDKs with and API key can still access the function. No data is lost when this is toggled.", + "type": "boolean", + "default": true, + "example": false + }, + "logging": { + "description": "When disabled, executions will exclude logs and errors, and will be slightly faster.", + "type": "boolean", + "default": true, + "example": false + }, + "entrypoint": { + "description": "Entrypoint File. This path is relative to the \"providerRootDirectory\".", + "type": "string", + "default": "", + "example": "<ENTRYPOINT>" + }, + "commands": { + "description": "Build Commands.", "type": "string", - "description": "Index type.", - "example": "key", - "enum": [ - "key", - "fulltext", - "unique" - ], - "x-enum-name": "DocumentsDBIndexType", - "x-enum-keys": [ - "key", - "fulltext", - "unique" - ] + "default": "", + "example": "<COMMANDS>" }, - "attributes": { + "scopes": { + "description": "List of scopes allowed for API key auto-generated for every execution. Maximum of 200 scopes are allowed.", "type": "array", - "description": "Array of attributes to index. Maximum of 100 attributes are allowed, each 32 characters long.", + "default": [], "items": { - "type": "string" + "title": "ProjectKeyScopes", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } + ] } }, - "orders": { + "installationId": { + "description": "Appwrite Installation ID for VCS (Version Control System) deployment.", + "type": "string", + "default": "", + "example": "<INSTALLATION_ID>" + }, + "providerRepositoryId": { + "description": "Repository ID of the repo linked to the function.", + "type": "string", + "default": "", + "example": "<PROVIDER_REPOSITORY_ID>" + }, + "providerBranch": { + "description": "Production branch for the repo linked to the function.", + "type": "string", + "default": "", + "example": "<PROVIDER_BRANCH>" + }, + "providerSilentMode": { + "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the function? In silent mode, comments will not be made on commits and pull requests.", + "type": "boolean", + "default": false, + "example": false + }, + "providerRootDirectory": { + "description": "Path to function code in the linked repo.", + "type": "string", + "default": "", + "example": "<PROVIDER_ROOT_DIRECTORY>" + }, + "providerBranches": { + "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", "type": "array", - "description": "Array of index orders. Maximum of 100 orders are allowed.", "default": [], "items": { - "type": "string", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "OrderBy", - "x-enum-keys": [ - "asc", - "desc" - ] + "type": "string" } }, - "lengths": { + "providerPaths": { + "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", "type": "array", - "description": "Length of index. Maximum of 100", "default": [], "items": { - "type": "integer" + "type": "string" } + }, + "buildSpecification": { + "description": "Build specification for the function deployments.", + "type": "string", + "default": {} + }, + "runtimeSpecification": { + "description": "Runtime specification for the function executions.", + "type": "string", + "default": {} + }, + "deploymentRetention": { + "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", + "type": "integer", + "default": 0, + "example": 0, + "format": "int32" } }, "required": [ - "key", - "type", - "attributes" + "functionId", + "name", + "runtime" ] } } @@ -20362,408 +26565,21 @@ } } }, - "\/documentsdb\/{databaseId}\/collections\/{collectionId}\/indexes\/{key}": { - "get": { - "summary": "Get index", - "operationId": "documentsDBGetIndex", - "tags": [ - "documentsDB" - ], - "description": "Get index by ID.", - "responses": { - "200": { - "description": "Index", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/index" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "indexes", - "cookies": false, - "type": "", - "demo": "documentsdb\/get-index.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/get-index.md", - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - }, - { - "name": "key", - "description": "Index Key.", - "required": true, - "schema": { - "type": "string" - }, - "in": "path" - } - ] - }, - "delete": { - "summary": "Delete index", - "operationId": "documentsDBDeleteIndex", - "tags": [ - "documentsDB" - ], - "description": "Delete an index.", - "responses": { - "204": { - "description": "No content" - } - }, - "deprecated": false, - "x-appwrite": { - "group": "indexes", - "cookies": false, - "type": "", - "demo": "documentsdb\/delete-index.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "collections.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/documentsdb\/delete-index.md", - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - }, - { - "name": "collectionId", - "description": "Collection ID. You can create a new collection using the Database service [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection).", - "required": true, - "schema": { - "type": "string", - "example": "<COLLECTION_ID>" - }, - "in": "path" - }, - { - "name": "key", - "description": "Index Key.", - "required": true, - "schema": { - "type": "string" - }, - "in": "path" - } - ] - } - }, - "\/documentsdb\/{databaseId}\/failovers": { - "post": { - "summary": "Create failover", - "operationId": "documentsDBCreateFailover", - "tags": [ - "documentsDB" - ], - "description": "Trigger a manual failover for a dedicated database with high availability enabled. Promotes a replica to primary. The failover runs asynchronously; poll the database document for status updates. A database left mid-operation also accepts this call as a repair once nothing is driving the operation it is stuck in. Repairing a failover that did not finish, a `failed` database, a stranded upgrade or migrate, or a stranded compute resize additionally requires `targetReplicaId` to name the member to promote, because the default target may be the member that operation already promoted.", - "responses": { - "202": { - "description": "DedicatedDatabase", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/dedicatedDatabase" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "failovers", - "cookies": false, - "type": "", - "demo": "documentsdb\/create-failover.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "targetReplicaId": { - "type": "string", - "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", - "example": "<TARGET_REPLICA_ID>", - "nullable": true - } - } - } - } - } - } - } - }, - "\/documentsdb\/{databaseId}\/operations": { - "get": { - "summary": "List operations", - "operationId": "documentsDBListOperations", - "tags": [ - "documentsDB" - ], - "description": "List the lifecycle operations recorded for a dedicated database, newest first. Every provision, update, restore, backup and replication action is recorded here with its outcome, including an attempt that was abandoned because another worker took over the database.", - "responses": { - "200": { - "description": "OperationList", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/dedicatedDatabaseOperationList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "operations", - "cookies": false, - "type": "", - "demo": "documentsdb\/list-operations.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - }, - { - "name": "status", - "description": "Filter by operation status.", - "required": false, - "schema": { - "type": "string", - "example": "running" - }, - "in": "query" - }, - { - "name": "limit", - "description": "Maximum number of operations to return.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 1, - "default": 25 - }, - "in": "query" - }, - { - "name": "offset", - "description": "Number of operations to skip.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "example": 0, - "default": 0 - }, - "in": "query" - } - ] - } - }, - "\/documentsdb\/{databaseId}\/replicas": { - "get": { - "summary": "Get replicas", - "operationId": "documentsDBGetReplicas", - "tags": [ - "documentsDB" - ], - "description": "Get high availability status for a dedicated database. Returns replica statuses, replication lag, and sync mode.", - "responses": { - "200": { - "description": "Replicas", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/dedicatedDatabaseReplicas" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "replicas", - "cookies": false, - "type": "", - "demo": "documentsdb\/get-replicas.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" - } - ] - } - }, - "\/documentsdb\/{databaseId}\/status": { + "\/functions\/runtimes": { "get": { - "summary": "Get status", - "operationId": "documentsDBGetStatus", + "summary": "List runtimes", + "operationId": "functionsListRuntimes", "tags": [ - "documentsDB" + "functions" ], - "description": "Get real-time health and status information for a dedicated database. Returns health status, readiness, uptime, connection info, replica status, and volume information.", + "description": "Get a list of all runtimes that are currently active on your instance.", "responses": { "200": { - "description": "Status", + "description": "Runtimes List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/databaseStatus" + "$ref": "#\/components\/schemas\/runtimeList" } } } @@ -20771,14 +26587,14 @@ }, "deprecated": false, "x-appwrite": { - "group": "documentsdb", + "group": "runtimes", "cookies": false, "type": "", - "demo": "documentsdb\/get-status.md", + "demo": "functions\/list-runtimes.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", + "scope": "public", "platforms": [ "console", "server" @@ -20786,45 +26602,33 @@ "packaging": false, "public": true, "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "example": "<DATABASE_ID>" - }, - "in": "path" + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] } ] } }, - "\/embeddings\/text": { - "post": { - "summary": "Create text embeddings", - "operationId": "embeddingsCreateTextEmbeddings", + "\/functions\/specifications": { + "get": { + "summary": "List specifications", + "operationId": "functionsListSpecifications", "tags": [ - "embeddings" + "functions" ], - "description": "Generate vector embeddings for an array of text using the selected embedding model. Use the returned vectors to power semantic search and similarity queries against your vector collections.\n", + "description": "List allowed function specifications for this instance.", "responses": { "200": { - "description": "Embedding list", + "description": "Specifications List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/embeddingList" + "$ref": "#\/components\/schemas\/specificationList" } } } @@ -20832,48 +26636,20 @@ }, "deprecated": false, "x-appwrite": { - "group": "embeddings", + "group": "runtimes", "cookies": false, "type": "", - "demo": "embeddings\/create-text-embeddings.md", - "rate-limit": 120, - "rate-time": 60, - "rate-key": "ip:{ip},method:{method},url:{url},userId:{userId}", - "scope": "embeddings.write", + "demo": "functions\/list-specifications.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "functions.read", "platforms": [ - "console", - "server" + "server", + "console" ], "packaging": false, "public": true, - "edit": "https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/embeddings\/create-text-embeddings.md", - "methods": [ - { - "name": "createTextEmbeddings", - "namespace": "embeddings", - "desc": "Create Text Embedding", - "auth": { - "Project": [], - "Key": [] - }, - "parameters": [ - "texts", - "model" - ], - "required": [ - "texts" - ], - "responses": [ - { - "code": 200, - "model": "#\/components\/schemas\/embeddingList" - } - ], - "description": "Generate vector embeddings for an array of text using the selected embedding model. Use the returned vectors to power semantic search and similarity queries against your vector collections.\n", - "demo": "embeddings\/create-text-embeddings.md", - "public": true - } - ], "auth": { "Project": [], "Key": [] @@ -20882,67 +26658,39 @@ "security": [ { "Project": [], - "Key": [], - "JWT": [] + "Key": [] } ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "texts": { - "type": "array", - "description": "Array of text to generate embeddings.", - "items": { - "type": "string" - } - }, - "model": { - "type": "string", - "description": "The embedding model to use for generating vector embeddings.", - "default": "nomic-embed-text", - "example": "nomic-embed-text", - "enum": [ - "nomic-embed-text", - "embedding-gemma", - "all-minilm", - "bge-small" - ], - "x-enum-name": "EmbeddingModel", - "x-enum-keys": [ - "nomic-embed-text", - "embedding-gemma", - "all-minilm", - "bge-small" - ] - } - }, - "required": [ - "texts" - ] - } - } + "parameters": [ + { + "name": "type", + "description": "Specification type to list. Can be one of: runtimes, builds. Defaults to runtimes.", + "required": false, + "schema": { + "type": "string", + "example": "runtimes", + "default": "runtimes" + }, + "in": "query" } - } + ] } }, - "\/functions": { + "\/functions\/{functionId}": { "get": { - "summary": "List functions", - "operationId": "functionsList", + "summary": "Get function", + "operationId": "functionsGet", "tags": [ "functions" ], - "description": "Get a list of all the project's functions. You can use the query params to filter your results.", + "description": "Get a function by its unique ID.", "responses": { "200": { - "description": "Functions List", + "description": "Function", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/functionList" + "$ref": "#\/components\/schemas\/function" } } } @@ -20953,7 +26701,7 @@ "group": "functions", "cookies": false, "type": "", - "demo": "functions\/list.md", + "demo": "functions\/get.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -20977,51 +26725,26 @@ ], "parameters": [ { - "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, enabled, runtime, deploymentId, schedule, scheduleNext, schedulePrevious, timeout, entrypoint, commands, installationId", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - }, - "default": [] - }, - "in": "query" - }, - { - "name": "search", - "description": "Search term to filter your list results. Max length: 256 chars.", - "required": false, + "name": "functionId", + "description": "Function ID.", + "required": true, "schema": { "type": "string", - "example": "<SEARCH>", - "default": "" - }, - "in": "query" - }, - { - "name": "total", - "description": "When set to false, the total count returned will be 0 and will not be calculated.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": true + "example": "<FUNCTION_ID>" }, - "in": "query" + "in": "path" } ] }, - "post": { - "summary": "Create function", - "operationId": "functionsCreate", + "put": { + "summary": "Update function", + "operationId": "functionsUpdate", "tags": [ "functions" ], - "description": "Create a new function. You can pass a list of [permissions](https:\/\/appwrite.io\/docs\/permissions) to allow different project users or team with access to execute the function using the client API.", + "description": "Update function by its unique ID.", "responses": { - "201": { + "200": { "description": "Function", "content": { "application\/json": { @@ -21037,7 +26760,7 @@ "group": "functions", "cookies": false, "type": "", - "demo": "functions\/create.md", + "demo": "functions\/update.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -21059,222 +26782,706 @@ "Key": [] } ], + "parameters": [ + { + "name": "functionId", + "description": "Function ID.", + "required": true, + "schema": { + "type": "string", + "example": "<FUNCTION_ID>" + }, + "in": "path" + } + ], "requestBody": { "content": { "application\/json": { "schema": { "type": "object", "properties": { - "functionId": { - "type": "string", - "description": "Function 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.", - "example": "<FUNCTION_ID>", - "x-appwrite": { - "idGenerator": "ID.unique" - } - }, "name": { - "type": "string", "description": "Function name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "runtime": { - "type": "string", "description": "Execution runtime.", + "type": "string", + "default": "", "example": "node-14.5", - "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ], - "x-enum-name": "Runtime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" + "title": "Runtime", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { + "type": "string", + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" + }, + { + "type": "string", + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" + }, + { + "type": "string", + "enum": [ + "dart-3.12" + ], + "title": "dart-3.12" + }, + { + "type": "string", + "enum": [ + "dotnet-6.0" + ], + "title": "dotnet-6.0" + }, + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" + }, + { + "type": "string", + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" + }, + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" + }, + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" + }, + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" + }, + { + "type": "string", + "enum": [ + "java-17.0" + ], + "title": "java-17.0" + }, + { + "type": "string", + "enum": [ + "java-18.0" + ], + "title": "java-18.0" + }, + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" + }, + { + "type": "string", + "enum": [ + "java-22" + ], + "title": "java-22" + }, + { + "type": "string", + "enum": [ + "java-25" + ], + "title": "java-25" + }, + { + "type": "string", + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" + }, + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" + }, + { + "type": "string", + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" + }, + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" + }, + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" + }, + { + "type": "string", + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" + }, + { + "type": "string", + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" + }, + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" + } ] }, "execute": { - "type": "array", "description": "An array of role strings with execution permissions. By default no user is granted with any execute permissions. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", + "type": "array", "default": [], "example": [ "any" @@ -21284,377 +27491,889 @@ } }, "events": { - "type": "array", "description": "Events list. Maximum of 100 events are allowed.", + "type": "array", "default": [], "items": { "type": "string" } }, "schedule": { - "type": "string", "description": "Schedule CRON syntax.", + "type": "string", "default": "" }, "timeout": { + "description": "Maximum execution time in seconds.", "type": "integer", - "description": "Function maximum execution time in seconds.", "default": 15, "example": 1, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Is function enabled? When set to 'disabled', users cannot access the function but Server SDKs with and API key can still access the function. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "logging": { - "type": "boolean", "description": "When disabled, executions will exclude logs and errors, and will be slightly faster.", + "type": "boolean", "default": true, "example": false }, "entrypoint": { - "type": "string", "description": "Entrypoint File. This path is relative to the \"providerRootDirectory\".", + "type": "string", "default": "", "example": "<ENTRYPOINT>" }, "commands": { - "type": "string", "description": "Build Commands.", + "type": "string", "default": "", "example": "<COMMANDS>" }, "scopes": { + "description": "List of scopes allowed for API Key auto-generated for every execution. Maximum of 200 scopes are allowed.", "type": "array", - "description": "List of scopes allowed for API key auto-generated for every execution. Maximum of 200 scopes are allowed.", "default": [], "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } }, "installationId": { + "description": "Appwrite Installation ID for VCS (Version Controle System) deployment.", "type": "string", - "description": "Appwrite Installation ID for VCS (Version Control System) deployment.", "default": "", "example": "<INSTALLATION_ID>" }, "providerRepositoryId": { + "description": "Repository ID of the repo linked to the function", "type": "string", - "description": "Repository ID of the repo linked to the function.", - "default": "", - "example": "<PROVIDER_REPOSITORY_ID>" + "example": "<PROVIDER_REPOSITORY_ID>", + "nullable": true }, "providerBranch": { + "description": "Production branch for the repo linked to the function", "type": "string", - "description": "Production branch for the repo linked to the function.", "default": "", "example": "<PROVIDER_BRANCH>" }, "providerSilentMode": { - "type": "boolean", "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the function? In silent mode, comments will not be made on commits and pull requests.", + "type": "boolean", "default": false, "example": false }, "providerRootDirectory": { - "type": "string", "description": "Path to function code in the linked repo.", + "type": "string", "default": "", "example": "<PROVIDER_ROOT_DIRECTORY>" }, "providerBranches": { - "type": "array", "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", - "default": [], + "type": "array", "items": { "type": "string" - } + }, + "nullable": true }, "providerPaths": { - "type": "array", "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", - "default": [], + "type": "array", "items": { "type": "string" - } + }, + "nullable": true }, "buildSpecification": { - "type": "string", "description": "Build specification for the function deployments.", - "default": {} + "type": "string", + "nullable": true }, "runtimeSpecification": { - "type": "string", "description": "Runtime specification for the function executions.", - "default": {} + "type": "string", + "nullable": true }, "deploymentRetention": { - "type": "integer", "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", + "type": "integer", "default": 0, "example": 0, "format": "int32" } }, "required": [ - "functionId", - "name", - "runtime" + "name" ] } } } } - } - }, - "\/functions\/runtimes": { - "get": { - "summary": "List runtimes", - "operationId": "functionsListRuntimes", + }, + "delete": { + "summary": "Delete function", + "operationId": "functionsDelete", "tags": [ "functions" ], - "description": "Get a list of all runtimes that are currently active on your instance.", + "description": "Delete a function by its unique ID.", "responses": { - "200": { - "description": "Runtimes List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/runtimeList" - } - } - } + "204": { + "description": "No content" } }, "deprecated": false, "x-appwrite": { - "group": "runtimes", + "group": "functions", "cookies": false, "type": "", - "demo": "functions\/list-runtimes.md", + "demo": "functions\/delete.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "public", + "scope": "functions.write", "platforms": [ "console", "server" @@ -21671,24 +28390,36 @@ "Project": [], "Key": [] } + ], + "parameters": [ + { + "name": "functionId", + "description": "Function ID.", + "required": true, + "schema": { + "type": "string", + "example": "<FUNCTION_ID>" + }, + "in": "path" + } ] } }, - "\/functions\/specifications": { - "get": { - "summary": "List specifications", - "operationId": "functionsListSpecifications", + "\/functions\/{functionId}\/deployment": { + "patch": { + "summary": "Update function's deployment", + "operationId": "functionsUpdateFunctionDeployment", "tags": [ "functions" ], - "description": "List allowed function specifications for this instance.", + "description": "Update the function active deployment. Use this endpoint to switch the code deployment that should be used when visitor opens your function.", "responses": { "200": { - "description": "Specifications List", + "description": "Function", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/specificationList" + "$ref": "#\/components\/schemas\/function" } } } @@ -21696,17 +28427,17 @@ }, "deprecated": false, "x-appwrite": { - "group": "runtimes", + "group": "functions", "cookies": false, "type": "", - "demo": "functions\/list-specifications.md", + "demo": "functions\/update-function-deployment.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "functions.read", + "scope": "functions.write", "platforms": [ - "server", - "console" + "console", + "server" ], "packaging": false, "public": true, @@ -21723,34 +28454,52 @@ ], "parameters": [ { - "name": "type", - "description": "Specification type to list. Can be one of: runtimes, builds. Defaults to runtimes.", - "required": false, + "name": "functionId", + "description": "Function ID.", + "required": true, "schema": { "type": "string", - "example": "runtimes", - "default": "runtimes" + "example": "<FUNCTION_ID>" }, - "in": "query" + "in": "path" } - ] + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "deploymentId": { + "description": "Deployment ID.", + "type": "string", + "example": "<DEPLOYMENT_ID>" + } + }, + "required": [ + "deploymentId" + ] + } + } + } + } } }, - "\/functions\/{functionId}": { + "\/functions\/{functionId}\/deployments": { "get": { - "summary": "Get function", - "operationId": "functionsGet", + "summary": "List deployments", + "operationId": "functionsListDeployments", "tags": [ "functions" ], - "description": "Get a function by its unique ID.", + "description": "Get a list of all the function's code deployments. You can use the query params to filter your results.", "responses": { "200": { - "description": "Function", + "description": "Deployments List", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/function" + "$ref": "#\/components\/schemas\/deploymentList" } } } @@ -21758,10 +28507,10 @@ }, "deprecated": false, "x-appwrite": { - "group": "functions", + "group": "deployments", "cookies": false, "type": "", - "demo": "functions\/get.md", + "demo": "functions\/list-deployments.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -21793,23 +28542,58 @@ "example": "<FUNCTION_ID>" }, "in": "path" + }, + { + "name": "queries", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: buildSize, sourceSize, totalSize, buildDuration, status, activate, type", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "default": [] + }, + "in": "query" + }, + { + "name": "search", + "description": "Search term to filter your list results. Max length: 256 chars.", + "required": false, + "schema": { + "type": "string", + "example": "<SEARCH>", + "default": "" + }, + "in": "query" + }, + { + "name": "total", + "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": true + }, + "in": "query" } ] }, - "put": { - "summary": "Update function", - "operationId": "functionsUpdate", + "post": { + "summary": "Create deployment", + "operationId": "functionsCreateDeployment", "tags": [ "functions" ], - "description": "Update function by its unique ID.", + "description": "Create a new function code deployment. Use this endpoint to upload a new version of your code function. To execute your newly uploaded code, you'll need to update the function's deployment to use your new deployment UID.\n\nThis endpoint accepts a tar.gz file compressed with your code. Make sure to include any dependencies your code has within the compressed file. You can learn more about code packaging in the [Appwrite Cloud Functions tutorial](https:\/\/appwrite.io\/docs\/functions).\n\nUse the \"command\" param to set the entrypoint used to execute your code.", "responses": { - "200": { - "description": "Function", + "202": { + "description": "Deployment", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/function" + "$ref": "#\/components\/schemas\/deployment" } } } @@ -21817,10 +28601,10 @@ }, "deprecated": false, "x-appwrite": { - "group": "functions", + "group": "deployments", "cookies": false, - "type": "", - "demo": "functions\/update.md", + "type": "upload", + "demo": "functions\/create-deployment.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -21829,7 +28613,7 @@ "console", "server" ], - "packaging": false, + "packaging": true, "public": true, "auth": { "Project": [], @@ -21856,627 +28640,58 @@ ], "requestBody": { "content": { - "application\/json": { + "multipart\/form-data": { "schema": { "type": "object", "properties": { - "name": { - "type": "string", - "description": "Function name. Max length: 128 chars.", - "example": "<NAME>" - }, - "runtime": { - "type": "string", - "description": "Execution runtime.", - "example": "node-14.5", - "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ], - "x-enum-name": "Runtime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ] - }, - "execute": { - "type": "array", - "description": "An array of role strings with execution permissions. By default no user is granted with any execute permissions. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", - "default": [], - "example": [ - "any" - ], - "items": { - "type": "string" - } - }, - "events": { - "type": "array", - "description": "Events list. Maximum of 100 events are allowed.", - "default": [], - "items": { - "type": "string" - } - }, - "schedule": { - "type": "string", - "description": "Schedule CRON syntax.", - "default": "" - }, - "timeout": { - "type": "integer", - "description": "Maximum execution time in seconds.", - "default": 15, - "example": 1, - "format": "int32" - }, - "enabled": { - "type": "boolean", - "description": "Is function enabled? When set to 'disabled', users cannot access the function but Server SDKs with and API key can still access the function. No data is lost when this is toggled.", - "default": true, - "example": false - }, - "logging": { - "type": "boolean", - "description": "When disabled, executions will exclude logs and errors, and will be slightly faster.", - "default": true, - "example": false - }, "entrypoint": { + "description": "Entrypoint File.", "type": "string", - "description": "Entrypoint File. This path is relative to the \"providerRootDirectory\".", - "default": "", - "example": "<ENTRYPOINT>" + "example": "<ENTRYPOINT>", + "nullable": true }, "commands": { - "type": "string", "description": "Build Commands.", - "default": "", - "example": "<COMMANDS>" - }, - "scopes": { - "type": "array", - "description": "List of scopes allowed for API Key auto-generated for every execution. Maximum of 200 scopes are allowed.", - "default": [], - "items": { - "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ] - } - }, - "installationId": { - "type": "string", - "description": "Appwrite Installation ID for VCS (Version Controle System) deployment.", - "default": "", - "example": "<INSTALLATION_ID>" - }, - "providerRepositoryId": { "type": "string", - "description": "Repository ID of the repo linked to the function", - "example": "<PROVIDER_REPOSITORY_ID>", + "example": "<COMMANDS>", "nullable": true }, - "providerBranch": { + "code": { + "description": "Gzip file with your code package. When used with the Appwrite CLI, pass the path to your code directory, and the CLI will automatically package your code. Use a path that is within the current directory.", "type": "string", - "description": "Production branch for the repo linked to the function", - "default": "", - "example": "<PROVIDER_BRANCH>" + "format": "binary" }, - "providerSilentMode": { + "activate": { + "description": "Automatically activate the deployment when it is finished building.", "type": "boolean", - "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the function? In silent mode, comments will not be made on commits and pull requests.", - "default": false, "example": false - }, - "providerRootDirectory": { - "type": "string", - "description": "Path to function code in the linked repo.", - "default": "", - "example": "<PROVIDER_ROOT_DIRECTORY>" - }, - "providerBranches": { - "type": "array", - "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", - "items": { - "type": "string" - }, - "nullable": true - }, - "providerPaths": { - "type": "array", - "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", - "items": { - "type": "string" - }, - "nullable": true - }, - "buildSpecification": { - "type": "string", - "description": "Build specification for the function deployments.", - "nullable": true - }, - "runtimeSpecification": { - "type": "string", - "description": "Runtime specification for the function executions.", - "nullable": true - }, - "deploymentRetention": { - "type": "integer", - "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", - "default": 0, - "example": 0, - "format": "int32" } }, "required": [ - "name" + "code", + "activate" ] } } } } - }, - "delete": { - "summary": "Delete function", - "operationId": "functionsDelete", - "tags": [ - "functions" - ], - "description": "Delete a function by its unique ID.", - "responses": { - "204": { - "description": "No content" - } - }, - "deprecated": false, - "x-appwrite": { - "group": "functions", - "cookies": false, - "type": "", - "demo": "functions\/delete.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "functions.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "functionId", - "description": "Function ID.", - "required": true, - "schema": { - "type": "string", - "example": "<FUNCTION_ID>" - }, - "in": "path" - } - ] } }, - "\/functions\/{functionId}\/deployment": { - "patch": { - "summary": "Update function's deployment", - "operationId": "functionsUpdateFunctionDeployment", + "\/functions\/{functionId}\/deployments\/duplicate": { + "post": { + "summary": "Create duplicate deployment", + "operationId": "functionsCreateDuplicateDeployment", "tags": [ "functions" ], - "description": "Update the function active deployment. Use this endpoint to switch the code deployment that should be used when visitor opens your function.", + "description": "Create a new build for an existing function deployment. This endpoint allows you to rebuild a deployment with the updated function configuration, including its entrypoint and build commands if they have been modified. The build process will be queued and executed asynchronously. The original deployment's code will be preserved and used for the new build.", "responses": { - "200": { - "description": "Function", + "202": { + "description": "Deployment", "content": { "application\/json": { "schema": { - "$ref": "#\/components\/schemas\/function" + "$ref": "#\/components\/schemas\/deployment" } } } @@ -22484,10 +28699,10 @@ }, "deprecated": false, "x-appwrite": { - "group": "functions", + "group": "deployments", "cookies": false, "type": "", - "demo": "functions\/update-function-deployment.md", + "demo": "functions\/create-duplicate-deployment.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", @@ -22528,285 +28743,13 @@ "type": "object", "properties": { "deploymentId": { - "type": "string", "description": "Deployment ID.", - "example": "<DEPLOYMENT_ID>" - } - }, - "required": [ - "deploymentId" - ] - } - } - } - } - } - }, - "\/functions\/{functionId}\/deployments": { - "get": { - "summary": "List deployments", - "operationId": "functionsListDeployments", - "tags": [ - "functions" - ], - "description": "Get a list of all the function's code deployments. You can use the query params to filter your results.", - "responses": { - "200": { - "description": "Deployments List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/deploymentList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "deployments", - "cookies": false, - "type": "", - "demo": "functions\/list-deployments.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "functions.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "functionId", - "description": "Function ID.", - "required": true, - "schema": { - "type": "string", - "example": "<FUNCTION_ID>" - }, - "in": "path" - }, - { - "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: buildSize, sourceSize, totalSize, buildDuration, status, activate, type", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - }, - "default": [] - }, - "in": "query" - }, - { - "name": "search", - "description": "Search term to filter your list results. Max length: 256 chars.", - "required": false, - "schema": { - "type": "string", - "example": "<SEARCH>", - "default": "" - }, - "in": "query" - }, - { - "name": "total", - "description": "When set to false, the total count returned will be 0 and will not be calculated.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": true - }, - "in": "query" - } - ] - }, - "post": { - "summary": "Create deployment", - "operationId": "functionsCreateDeployment", - "tags": [ - "functions" - ], - "description": "Create a new function code deployment. Use this endpoint to upload a new version of your code function. To execute your newly uploaded code, you'll need to update the function's deployment to use your new deployment UID.\n\nThis endpoint accepts a tar.gz file compressed with your code. Make sure to include any dependencies your code has within the compressed file. You can learn more about code packaging in the [Appwrite Cloud Functions tutorial](https:\/\/appwrite.io\/docs\/functions).\n\nUse the \"command\" param to set the entrypoint used to execute your code.", - "responses": { - "202": { - "description": "Deployment", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/deployment" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "deployments", - "cookies": false, - "type": "upload", - "demo": "functions\/create-deployment.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "functions.write", - "platforms": [ - "console", - "server" - ], - "packaging": true, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "functionId", - "description": "Function ID.", - "required": true, - "schema": { - "type": "string", - "example": "<FUNCTION_ID>" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "multipart\/form-data": { - "schema": { - "type": "object", - "properties": { - "entrypoint": { "type": "string", - "description": "Entrypoint File.", - "example": "<ENTRYPOINT>", - "nullable": true - }, - "commands": { - "type": "string", - "description": "Build Commands.", - "example": "<COMMANDS>", - "nullable": true - }, - "code": { - "type": "string", - "description": "Gzip file with your code package. When used with the Appwrite CLI, pass the path to your code directory, and the CLI will automatically package your code. Use a path that is within the current directory.", - "format": "binary" - }, - "activate": { - "type": "boolean", - "description": "Automatically activate the deployment when it is finished building.", - "example": false - } - }, - "required": [ - "code", - "activate" - ] - } - } - } - } - } - }, - "\/functions\/{functionId}\/deployments\/duplicate": { - "post": { - "summary": "Create duplicate deployment", - "operationId": "functionsCreateDuplicateDeployment", - "tags": [ - "functions" - ], - "description": "Create a new build for an existing function deployment. This endpoint allows you to rebuild a deployment with the updated function configuration, including its entrypoint and build commands if they have been modified. The build process will be queued and executed asynchronously. The original deployment's code will be preserved and used for the new build.", - "responses": { - "202": { - "description": "Deployment", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/deployment" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "deployments", - "cookies": false, - "type": "", - "demo": "functions\/create-duplicate-deployment.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "functions.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "functionId", - "description": "Function ID.", - "required": true, - "schema": { - "type": "string", - "example": "<FUNCTION_ID>" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "deploymentId": { - "type": "string", - "description": "Deployment ID.", "example": "<DEPLOYMENT_ID>" }, "buildId": { - "type": "string", "description": "Build unique ID.", + "type": "string", "default": "", "example": "<BUILD_ID>" } @@ -22886,44 +28829,57 @@ "type": "object", "properties": { "repository": { - "type": "string", "description": "Repository name of the template.", + "type": "string", "example": "<REPOSITORY>" }, "owner": { - "type": "string", "description": "The name of the owner of the template.", + "type": "string", "example": "<OWNER>" }, "rootDirectory": { - "type": "string", "description": "Path to function code in the template repo.", + "type": "string", "example": "<ROOT_DIRECTORY>" }, "type": { - "type": "string", "description": "Type for the reference provided. Can be commit, branch, or tag", + "type": "string", "example": "commit", - "enum": [ - "commit", - "branch", - "tag" - ], - "x-enum-name": "TemplateReferenceType", - "x-enum-keys": [ - "commit", - "branch", - "tag" + "title": "TemplateReferenceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "commit" + ], + "title": "commit" + }, + { + "type": "string", + "enum": [ + "branch" + ], + "title": "branch" + }, + { + "type": "string", + "enum": [ + "tag" + ], + "title": "tag" + } ] }, "reference": { - "type": "string", "description": "Reference value, can be a commit hash, branch name, or release tag", + "type": "string", "example": "<REFERENCE>" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", "default": false, "example": false } @@ -23007,27 +28963,35 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Type of reference passed. Allowed values are: branch, commit", + "type": "string", "example": "branch", - "enum": [ - "branch", - "commit" - ], - "x-enum-name": "VCSReferenceType", - "x-enum-keys": [ - "branch", - "commit" + "title": "VCSReferenceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "branch" + ], + "title": "branch" + }, + { + "type": "string", + "enum": [ + "commit" + ], + "title": "commit" + } ] }, "reference": { - "type": "string", "description": "VCS reference to create deployment from. Depending on type this can be: branch name, commit hash", + "type": "string", "example": "<REFERENCE>" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", "default": false, "example": false } @@ -23257,14 +29221,22 @@ "schema": { "type": "string", "example": "source", - "enum": [ - "source", - "output" - ], - "x-enum-name": "DeploymentDownloadType", - "x-enum-keys": [ - "source", - "output" + "title": "DeploymentDownloadType", + "oneOf": [ + { + "type": "string", + "enum": [ + "source" + ], + "title": "source" + }, + { + "type": "string", + "enum": [ + "output" + ], + "title": "output" + } ], "default": "source" }, @@ -23516,57 +29488,90 @@ "type": "object", "properties": { "body": { - "type": "string", "description": "HTTP body of execution. Default value is empty string.", + "type": "string", "default": "", "example": "<BODY>" }, "async": { - "type": "boolean", "description": "Execute code in the background. Default value is false.", + "type": "boolean", "default": false, "example": false }, "path": { - "type": "string", "description": "HTTP path of execution. Path can include query params. Default value is \/", + "type": "string", "default": "\/", "example": "<PATH>" }, "method": { - "type": "string", "description": "HTTP method of execution. Default value is POST.", + "type": "string", "default": "POST", "example": "GET", - "enum": [ - "GET", - "POST", - "PUT", - "PATCH", - "DELETE", - "OPTIONS", - "HEAD" - ], - "x-enum-name": "ExecutionMethod", - "x-enum-keys": [ - "GET", - "POST", - "PUT", - "PATCH", - "DELETE", - "OPTIONS", - "HEAD" + "title": "ExecutionMethod", + "oneOf": [ + { + "type": "string", + "enum": [ + "GET" + ], + "title": "GET" + }, + { + "type": "string", + "enum": [ + "POST" + ], + "title": "POST" + }, + { + "type": "string", + "enum": [ + "PUT" + ], + "title": "PUT" + }, + { + "type": "string", + "enum": [ + "PATCH" + ], + "title": "PATCH" + }, + { + "type": "string", + "enum": [ + "DELETE" + ], + "title": "DELETE" + }, + { + "type": "string", + "enum": [ + "OPTIONS" + ], + "title": "OPTIONS" + }, + { + "type": "string", + "enum": [ + "HEAD" + ], + "title": "HEAD" + } ] }, "headers": { - "type": "object", "description": "HTTP headers of execution. Defaults to empty.", + "type": "object", "default": [], "example": {} }, "scheduledAt": { - "type": "string", "description": "Scheduled execution time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future with precision in minutes.", + "type": "string", "example": "<SCHEDULED_AT>", "nullable": true } @@ -23868,26 +29873,26 @@ "type": "object", "properties": { "variableId": { - "type": "string", "description": "Variable 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.", + "type": "string", "example": "<VARIABLE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>" }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>" }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only functions can read them during build and runtime.", + "type": "boolean", "default": true, "example": false } @@ -24048,20 +30053,20 @@ "type": "object", "properties": { "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>", "nullable": true }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>", "nullable": true }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only functions can read them during build and runtime.", + "type": "boolean", "example": false, "nullable": true } @@ -24192,8 +30197,8 @@ "type": "object", "properties": { "query": { - "type": "object", "description": "The query or queries to execute.", + "type": "object", "default": {}, "example": {} } @@ -24265,8 +30270,8 @@ "type": "object", "properties": { "query": { - "type": "object", "description": "The query or queries to execute.", + "type": "object", "default": {}, "example": {} } @@ -24846,86 +30851,86 @@ "type": "object", "properties": { "messageId": { - "type": "string", "description": "Message 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.", + "type": "string", "example": "<MESSAGE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "subject": { - "type": "string", "description": "Email Subject.", + "type": "string", "example": "<SUBJECT>" }, "content": { - "type": "string", "description": "Email Content.", + "type": "string", "example": "<CONTENT>" }, "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "cc": { - "type": "array", "description": "Array of target IDs to be added as CC.", + "type": "array", "default": [], "items": { "type": "string" } }, "bcc": { - "type": "array", "description": "Array of target IDs to be added as BCC.", + "type": "array", "default": [], "items": { "type": "string" } }, "attachments": { - "type": "array", "description": "Array of compound ID strings of bucket IDs and file IDs to be attached to the email. They should be formatted as <BUCKET_ID>:<FILE_ID>.", + "type": "array", "default": [], "items": { "type": "string" } }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "default": false, "example": false }, "html": { - "type": "boolean", "description": "Is content of type HTML", + "type": "boolean", "default": false, "example": false }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -25009,79 +31014,79 @@ "type": "object", "properties": { "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "subject": { - "type": "string", "description": "Email Subject.", + "type": "string", "example": "<SUBJECT>", "nullable": true }, "content": { - "type": "string", "description": "Email Content.", + "type": "string", "example": "<CONTENT>", "nullable": true }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "example": false, "nullable": true }, "html": { - "type": "boolean", "description": "Is content of type HTML", + "type": "boolean", "example": false, "nullable": true }, "cc": { - "type": "array", "description": "Array of target IDs to be added as CC.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "bcc": { - "type": "array", "description": "Array of target IDs to be added as BCC.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "attachments": { - "type": "array", "description": "Array of compound ID strings of bucket IDs and file IDs to be attached to the email. They should be formatted as <BUCKET_ID>:<FILE_ID>.", + "type": "array", "items": { "type": "string" }, @@ -25149,136 +31154,144 @@ "type": "object", "properties": { "messageId": { - "type": "string", "description": "Message 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.", + "type": "string", "example": "<MESSAGE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "title": { - "type": "string", "description": "Title for push notification.", + "type": "string", "default": "", "example": "<TITLE>" }, "body": { - "type": "string", "description": "Body for push notification.", + "type": "string", "default": "", "example": "<BODY>" }, "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "data": { - "type": "object", "description": "Additional key-value pair data for push notification.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "action": { - "type": "string", "description": "Action for push notification.", + "type": "string", "default": "", "example": "<ACTION>" }, "image": { - "type": "string", "description": "Image for push notification. Must be a compound bucket ID to file ID of a jpeg, png, or bmp image in Appwrite Storage. It should be formatted as <BUCKET_ID>:<FILE_ID>.", + "type": "string", "default": "", "example": "<ID1:ID2>" }, "icon": { - "type": "string", "description": "Icon for push notification. Available only for Android and Web Platform.", + "type": "string", "default": "", "example": "<ICON>" }, "sound": { - "type": "string", "description": "Sound for push notification. Available only for Android and iOS Platform.", + "type": "string", "default": "", "example": "<SOUND>" }, "color": { - "type": "string", "description": "Color for push notification. Available only for Android Platform.", + "type": "string", "default": "", "example": "<COLOR>" }, "tag": { - "type": "string", "description": "Tag for push notification. Available only for Android Platform.", + "type": "string", "default": "", "example": "<TAG>" }, "badge": { - "type": "integer", "description": "Badge for push notification. Available only for iOS Platform.", + "type": "integer", "default": -1, "format": "int32" }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "default": false, "example": false }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "contentAvailable": { - "type": "boolean", "description": "If set to true, the notification will be delivered in the background. Available only for iOS Platform.", + "type": "boolean", "default": false, "example": false }, "critical": { - "type": "boolean", "description": "If set to true, the notification will be marked as critical. This requires the app to have the critical notification entitlement. Available only for iOS Platform.", + "type": "boolean", "default": false, "example": false }, "priority": { - "type": "string", "description": "Set the notification priority. \"normal\" will consider device state and may not deliver notifications immediately. \"high\" will always attempt to immediately deliver the notification.", + "type": "string", "default": "high", "example": "normal", - "enum": [ - "normal", - "high" - ], - "x-enum-name": "MessagePriority", - "x-enum-keys": [ - "normal", - "high" + "title": "MessagePriority", + "oneOf": [ + { + "type": "string", + "enum": [ + "normal" + ], + "title": "normal" + }, + { + "type": "string", + "enum": [ + "high" + ], + "title": "high" + } ] } }, @@ -25358,127 +31371,135 @@ "type": "object", "properties": { "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "title": { - "type": "string", "description": "Title for push notification.", + "type": "string", "example": "<TITLE>", "nullable": true }, "body": { - "type": "string", "description": "Body for push notification.", + "type": "string", "example": "<BODY>", "nullable": true }, "data": { - "type": "object", "description": "Additional Data for push notification.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "action": { - "type": "string", "description": "Action for push notification.", + "type": "string", "example": "<ACTION>", "nullable": true }, "image": { - "type": "string", "description": "Image for push notification. Must be a compound bucket ID to file ID of a jpeg, png, or bmp image in Appwrite Storage. It should be formatted as <BUCKET_ID>:<FILE_ID>.", + "type": "string", "example": "<ID1:ID2>", "nullable": true }, "icon": { - "type": "string", "description": "Icon for push notification. Available only for Android and Web platforms.", + "type": "string", "example": "<ICON>", "nullable": true }, "sound": { - "type": "string", "description": "Sound for push notification. Available only for Android and iOS platforms.", + "type": "string", "example": "<SOUND>", "nullable": true }, "color": { - "type": "string", "description": "Color for push notification. Available only for Android platforms.", + "type": "string", "example": "<COLOR>", "nullable": true }, "tag": { - "type": "string", "description": "Tag for push notification. Available only for Android platforms.", + "type": "string", "example": "<TAG>", "nullable": true }, "badge": { - "type": "integer", "description": "Badge for push notification. Available only for iOS platforms.", + "type": "integer", "format": "int32", "nullable": true }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "example": false, "nullable": true }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "contentAvailable": { - "type": "boolean", "description": "If set to true, the notification will be delivered in the background. Available only for iOS Platform.", + "type": "boolean", "example": false, "nullable": true }, "critical": { - "type": "boolean", "description": "If set to true, the notification will be marked as critical. This requires the app to have the critical notification entitlement. Available only for iOS Platform.", + "type": "boolean", "example": false, "nullable": true }, "priority": { - "type": "string", "description": "Set the notification priority. \"normal\" will consider device battery state and may send notifications later. \"high\" will always attempt to immediately deliver the notification.", + "type": "string", "example": "normal", - "enum": [ - "normal", - "high" - ], - "x-enum-name": "MessagePriority", - "x-enum-keys": [ - "normal", - "high" + "title": "MessagePriority", + "oneOf": [ + { + "type": "string", + "enum": [ + "normal" + ], + "title": "normal" + }, + { + "type": "string", + "enum": [ + "high" + ], + "title": "high" + } ], "nullable": true } @@ -25616,51 +31637,51 @@ "type": "object", "properties": { "messageId": { - "type": "string", "description": "Message 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.", + "type": "string", "example": "<MESSAGE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "content": { - "type": "string", "description": "SMS Content.", + "type": "string", "example": "<CONTENT>" }, "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "default": [], "items": { "type": "string" } }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "default": false, "example": false }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -25813,44 +31834,44 @@ "type": "object", "properties": { "topics": { - "type": "array", "description": "List of Topic IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "users": { - "type": "array", "description": "List of User IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "targets": { - "type": "array", "description": "List of Targets IDs.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "content": { - "type": "string", "description": "Email Content.", + "type": "string", "example": "<CONTENT>", "nullable": true }, "draft": { - "type": "boolean", "description": "Is message a draft", + "type": "boolean", "example": false, "nullable": true }, "scheduledAt": { - "type": "string", "description": "Scheduled delivery time for message in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -26279,51 +32300,51 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "authKey": { - "type": "string", "description": "APNS authentication key.", + "type": "string", "default": "", "example": "<AUTH_KEY>" }, "authKeyId": { - "type": "string", "description": "APNS authentication key ID.", + "type": "string", "default": "", "example": "<AUTH_KEY_ID>" }, "teamId": { - "type": "string", "description": "APNS team ID.", + "type": "string", "default": "", "example": "<TEAM_ID>" }, "bundleId": { - "type": "string", "description": "APNS bundle ID.", + "type": "string", "default": "", "example": "<BUNDLE_ID>" }, "sandbox": { - "type": "boolean", "description": "Use APNS sandbox environment.", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -26477,44 +32498,44 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "authKey": { - "type": "string", "description": "APNS authentication key.", + "type": "string", "default": "", "example": "<AUTH_KEY>" }, "authKeyId": { - "type": "string", "description": "APNS authentication key ID.", + "type": "string", "default": "", "example": "<AUTH_KEY_ID>" }, "teamId": { - "type": "string", "description": "APNS team ID.", + "type": "string", "default": "", "example": "<TEAM_ID>" }, "bundleId": { - "type": "string", "description": "APNS bundle ID.", + "type": "string", "default": "", "example": "<BUNDLE_ID>" }, "sandbox": { - "type": "boolean", "description": "Use APNS sandbox environment.", + "type": "boolean", "example": false, "nullable": true } @@ -26646,28 +32667,28 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "serviceAccountJSON": { - "type": "object", "description": "FCM service account JSON.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -26813,20 +32834,20 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "serviceAccountJSON": { - "type": "object", "description": "FCM service account JSON.", + "type": "object", "default": {}, "example": {}, "nullable": true @@ -26893,65 +32914,65 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "apiKey": { - "type": "string", "description": "Mailgun API Key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "domain": { - "type": "string", "description": "Mailgun Domain.", + "type": "string", "default": "", "example": "<DOMAIN>" }, "isEuRegion": { - "type": "boolean", "description": "Set as EU region.", + "type": "boolean", "example": false, "nullable": true }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name. Reply to name must have reply to email as well.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email. Reply to email must have reply to name as well.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -27033,57 +33054,57 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "apiKey": { - "type": "string", "description": "Mailgun API Key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "domain": { - "type": "string", "description": "Mailgun Domain.", + "type": "string", "default": "", "example": "<DOMAIN>" }, "isEuRegion": { - "type": "boolean", "description": "Set as EU region.", + "type": "boolean", "example": false, "nullable": true }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" } @@ -27149,39 +33170,39 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "templateId": { - "type": "string", "description": "Msg91 template ID", + "type": "string", "default": "", "example": "<TEMPLATE_ID>" }, "senderId": { - "type": "string", "description": "Msg91 sender ID.", + "type": "string", "default": "", "example": "<SENDER_ID>" }, "authKey": { - "type": "string", "description": "Msg91 auth key.", + "type": "string", "default": "", "example": "<AUTH_KEY>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -27263,32 +33284,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "templateId": { - "type": "string", "description": "Msg91 template ID.", + "type": "string", "default": "", "example": "<TEMPLATE_ID>" }, "senderId": { - "type": "string", "description": "Msg91 sender ID.", + "type": "string", "default": "", "example": "<SENDER_ID>" }, "authKey": { - "type": "string", "description": "Msg91 auth key.", + "type": "string", "default": "", "example": "<AUTH_KEY>" } @@ -27354,53 +33375,53 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "apiKey": { - "type": "string", "description": "Resend API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -27482,45 +33503,45 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "apiKey": { - "type": "string", "description": "Resend API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the Reply To field for the mail. Default value is Sender Name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the Reply To field for the mail. Default value is Sender Email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" } @@ -27586,53 +33607,53 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "apiKey": { - "type": "string", "description": "Sendgrid API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -27714,45 +33735,45 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "apiKey": { - "type": "string", "description": "Sendgrid API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the Reply To field for the mail. Default value is Sender Name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the Reply To field for the mail. Default value is Sender Email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" } @@ -27818,65 +33839,65 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "accessKey": { - "type": "string", "description": "AWS access key ID.", + "type": "string", "default": "", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "AWS secret access key.", + "type": "string", "default": "", "example": "<SECRET_KEY>" }, "region": { - "type": "string", "description": "AWS region, for example us-east-1.", + "type": "string", "default": "", "example": "<REGION>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -27958,57 +33979,57 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "accessKey": { - "type": "string", "description": "AWS access key ID.", + "type": "string", "default": "", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "AWS secret access key.", + "type": "string", "default": "", "example": "<SECRET_KEY>" }, "region": { - "type": "string", "description": "AWS region, for example us-east-1.", + "type": "string", "default": "", "example": "<REGION>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the Reply To field for the mail. Default value is Sender Name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the Reply To field for the mail. Default value is Sender Email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" } @@ -28162,100 +34183,114 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "host": { - "type": "string", "description": "SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls:\/\/smtp1.example.com:587;ssl:\/\/smtp2.example.com:465\"`. Hosts will be tried in order.", + "type": "string", "example": "<HOST>" }, "port": { - "type": "integer", "description": "The default SMTP server port.", + "type": "integer", "default": 587, "example": 1, "format": "int32" }, "username": { - "type": "string", "description": "Authentication username.", + "type": "string", "default": "", "example": "<USERNAME>" }, "password": { - "type": "string", "description": "Authentication password.", + "type": "string", "default": "", "example": "password", "format": "password" }, "encryption": { - "type": "string", "description": "Encryption type. Can be omitted, 'ssl', or 'tls'", + "type": "string", + "default": "", "example": "none", - "enum": [ - "none", - "ssl", - "tls" - ], - "x-enum-name": "SmtpEncryption", - "x-enum-keys": [ - "none", - "ssl", - "tls" + "title": "SmtpEncryption", + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "ssl" + ], + "title": "ssl" + }, + { + "type": "string", + "enum": [ + "tls" + ], + "title": "tls" + } ] }, "autoTLS": { - "type": "boolean", "description": "Enable SMTP AutoTLS feature.", + "type": "boolean", "default": true, "example": false }, "mailer": { - "type": "string", "description": "The value to use for the X-Mailer header.", + "type": "string", "default": "", "example": "<MAILER>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the reply to field for the mail. Default value is sender name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the reply to field for the mail. Default value is sender email.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -28422,93 +34457,107 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "host": { - "type": "string", "description": "SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls:\/\/smtp1.example.com:587;ssl:\/\/smtp2.example.com:465\"`. Hosts will be tried in order.", + "type": "string", "default": "", "example": "<HOST>" }, "port": { - "type": "integer", "description": "SMTP port.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "username": { - "type": "string", "description": "Authentication username.", + "type": "string", "default": "", "example": "<USERNAME>" }, "password": { - "type": "string", "description": "Authentication password.", + "type": "string", "default": "", "example": "password", "format": "password" }, "encryption": { - "type": "string", "description": "Encryption type. Can be 'ssl' or 'tls'", + "type": "string", + "default": "", "example": "none", - "enum": [ - "none", - "ssl", - "tls" - ], - "x-enum-name": "SmtpEncryption", - "x-enum-keys": [ - "none", - "ssl", - "tls" + "title": "SmtpEncryption", + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "ssl" + ], + "title": "ssl" + }, + { + "type": "string", + "enum": [ + "tls" + ], + "title": "tls" + } ] }, "autoTLS": { - "type": "boolean", "description": "Enable SMTP AutoTLS feature.", + "type": "boolean", "example": false, "nullable": true }, "mailer": { - "type": "string", "description": "The value to use for the X-Mailer header.", + "type": "string", "default": "", "example": "<MAILER>" }, "fromName": { - "type": "string", "description": "Sender Name.", + "type": "string", "default": "", "example": "<FROM_NAME>" }, "fromEmail": { - "type": "string", "description": "Sender email address.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "replyToName": { - "type": "string", "description": "Name set in the Reply To field for the mail. Default value is Sender Name.", + "type": "string", "default": "", "example": "<REPLY_TO_NAME>" }, "replyToEmail": { - "type": "string", "description": "Email set in the Reply To field for the mail. Default value is Sender Email.", + "type": "string", "default": "", "example": "<REPLY_TO_EMAIL>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -28574,40 +34623,40 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "from": { - "type": "string", "description": "Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "customerId": { - "type": "string", "description": "Telesign customer ID.", + "type": "string", "default": "", "example": "<CUSTOMER_ID>" }, "apiKey": { - "type": "string", "description": "Telesign API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -28689,32 +34738,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "customerId": { - "type": "string", "description": "Telesign customer ID.", + "type": "string", "default": "", "example": "<CUSTOMER_ID>" }, "apiKey": { - "type": "string", "description": "Telesign API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "from": { - "type": "string", "description": "Sender number.", + "type": "string", "default": "", "example": "<FROM>" } @@ -28780,40 +34829,40 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "from": { - "type": "string", "description": "Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "username": { - "type": "string", "description": "Textmagic username.", + "type": "string", "default": "", "example": "<USERNAME>" }, "apiKey": { - "type": "string", "description": "Textmagic apiKey.", + "type": "string", "default": "", "example": "<API_KEY>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -28895,32 +34944,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "username": { - "type": "string", "description": "Textmagic username.", + "type": "string", "default": "", "example": "<USERNAME>" }, "apiKey": { - "type": "string", "description": "Textmagic apiKey.", + "type": "string", "default": "", "example": "<API_KEY>" }, "from": { - "type": "string", "description": "Sender number.", + "type": "string", "default": "", "example": "<FROM>" } @@ -28986,40 +35035,40 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "from": { - "type": "string", "description": "Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "accountSid": { - "type": "string", "description": "Twilio account secret ID.", + "type": "string", "default": "", "example": "<ACCOUNT_SID>" }, "authToken": { - "type": "string", "description": "Twilio authentication token.", + "type": "string", "default": "", "example": "<AUTH_TOKEN>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -29101,32 +35150,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "accountSid": { - "type": "string", "description": "Twilio account secret ID.", + "type": "string", "default": "", "example": "<ACCOUNT_SID>" }, "authToken": { - "type": "string", "description": "Twilio authentication token.", + "type": "string", "default": "", "example": "<AUTH_TOKEN>" }, "from": { - "type": "string", "description": "Sender number.", + "type": "string", "default": "", "example": "<FROM>" } @@ -29192,40 +35241,40 @@ "type": "object", "properties": { "providerId": { - "type": "string", "description": "Provider 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.", + "type": "string", "example": "<PROVIDER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Provider name.", + "type": "string", "example": "<NAME>" }, "from": { - "type": "string", "description": "Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "apiKey": { - "type": "string", "description": "Vonage API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "apiSecret": { - "type": "string", "description": "Vonage API secret.", + "type": "string", "default": "", "example": "<API_SECRET>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true } @@ -29307,32 +35356,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Provider name.", + "type": "string", "default": "", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Set as enabled.", + "type": "boolean", "example": false, "nullable": true }, "apiKey": { - "type": "string", "description": "Vonage API key.", + "type": "string", "default": "", "example": "<API_KEY>" }, "apiSecret": { - "type": "string", "description": "Vonage API secret.", + "type": "string", "default": "", "example": "<API_SECRET>" }, "from": { - "type": "string", "description": "Sender number.", + "type": "string", "default": "", "example": "<FROM>" } @@ -29598,21 +35647,21 @@ "type": "object", "properties": { "topicId": { - "type": "string", "description": "Topic ID. Choose a custom Topic ID or a new Topic ID.", + "type": "string", "example": "<TOPIC_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Topic Name.", + "type": "string", "example": "<NAME>" }, "subscribe": { - "type": "array", "description": "An array of role strings with subscribe permission. By default all users are granted with any subscribe permission. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", + "type": "array", "default": [ "users" ], @@ -29761,14 +35810,14 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Topic Name.", + "type": "string", "example": "<NAME>", "nullable": true }, "subscribe": { - "type": "array", "description": "An array of role strings with subscribe permission. By default all users are granted with any subscribe permission. [learn more about roles](https:\/\/appwrite.io\/docs\/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long.", + "type": "array", "example": [ "any" ], @@ -30002,16 +36051,16 @@ "type": "object", "properties": { "subscriberId": { - "type": "string", "description": "Subscriber ID. Choose a custom Subscriber ID or a new Subscriber ID.", + "type": "string", "example": "<SUBSCRIBER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "targetId": { - "type": "string", "description": "Target ID. The target ID to link to the specified Topic ID.", + "type": "string", "example": "<TARGET_ID>" } }, @@ -30279,94 +36328,94 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Database 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database display name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "version": { - "type": "string", "description": "Database engine version. Defaults to latest for selected engine.", + "type": "string", "example": "17", "nullable": true }, "specification": { - "type": "string", "description": "Specification identifier. Drives the allocated CPU, memory, storage, storage class, and connection ceiling.", + "type": "string", "default": "s-1vcpu-1gb", "example": "<SPECIFICATION>" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds.", + "type": "integer", "default": 900, "example": 60, "format": "int32" }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes of inactivity before container scales to zero.", + "type": "integer", "default": 15, "example": 5, "format": "int32" }, "pitr": { - "type": "boolean", "description": "Enable point-in-time recovery (PITR). Continuously archives changes so the database can be restored to any moment within the retention window.", + "type": "boolean", "default": true, "example": false }, "pitrRetentionDays": { - "type": "integer", "description": "Number of days to retain PITR data.", + "type": "integer", "default": 7, "example": 1, "format": "int32" }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "default": false, "example": false }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "default": 85, "example": 50, "format": "int32" }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -30556,135 +36605,135 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database display name.", + "type": "string", "example": "<NAME>", "nullable": true }, "status": { - "type": "string", "description": "Database status. Allowed values: ready, paused, inactive. Set to \"paused\" to pause, \"ready\" to resume (also recovers a failed database whose infrastructure is healthy), or \"inactive\" to spin down a shared-pool database.", + "type": "string", "example": "ready", "nullable": true }, "specification": { - "type": "string", "description": "Specification. Changes cpu, memory, storage, connection ceiling, and node pool based on specification config. Resource changes are applied via rolling cutover with zero downtime.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds (60-86400).", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes before container scales to zero.", + "type": "integer", "example": 5, "format": "int32", "nullable": true }, "pitr": { - "type": "boolean", "description": "Enable or disable point-in-time recovery (PITR).", + "type": "boolean", "example": false, "nullable": true }, "pitrRetentionDays": { - "type": "integer", "description": "Days to retain PITR data.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "example": false, "nullable": true }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "example": 50, "format": "int32", "nullable": true }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "metricsTraceSampleRate": { - "type": "number", "description": "Fraction of queries to trace (0.0\u20131.0). Forwarded to the sidecar.", + "type": "number", "format": "float", "nullable": true }, "metricsSlowQueryLogThresholdMs": { - "type": "integer", "description": "Threshold in ms above which queries are logged as slow. Forwarded to the sidecar.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "sqlApiEnabled": { - "type": "boolean", "description": "Enable the SQL API sidecar for this database.", + "type": "boolean", "example": false, "nullable": true }, "sqlApiAllowedStatements": { - "type": "array", "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "sqlApiMaxRows": { - "type": "integer", "description": "Maximum rows returned per SQL API execution (1-1000000).", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "sqlApiMaxBytes": { - "type": "integer", "description": "Maximum serialised SQL API result payload in bytes (1024-104857600).", + "type": "integer", "example": 1024, "format": "int32", "nullable": true }, "sqlApiTimeoutSeconds": { - "type": "integer", "description": "Per-call SQL API execution timeout in seconds (1-300).", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -30889,8 +36938,8 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" } @@ -31039,37 +37088,37 @@ "type": "object", "properties": { "policyId": { - "type": "string", "description": "Policy 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.", + "type": "string", "example": "<POLICY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32" }, "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "default": true, "example": false } @@ -31231,25 +37280,25 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>", "nullable": true }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "example": false, "nullable": true } @@ -31391,41 +37440,41 @@ "type": "object", "properties": { "provider": { - "type": "string", "description": "Storage provider for off-cluster backups. Allowed values: s3 (Amazon S3 or S3-compatible), gcs (Google Cloud Storage), azure (Azure Blob Storage).", + "type": "string", "example": "s3" }, "bucket": { - "type": "string", "description": "Storage bucket or container name.", + "type": "string", "example": "<BUCKET>" }, "region": { - "type": "string", "description": "Storage region.", + "type": "string", "default": "", "example": "<REGION>" }, "prefix": { - "type": "string", "description": "Object key prefix for backups.", + "type": "string", "default": "backups\/", "example": "<PREFIX>" }, "endpoint": { - "type": "string", "description": "Custom endpoint for S3-compatible storage (e.g. MinIO).", + "type": "string", "default": "", "example": "<ENDPOINT>" }, "accessKey": { - "type": "string", "description": "Access key or client ID for authentication.", + "type": "string", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "Secret key or service account JSON for authentication.", + "type": "string", "example": "<SECRET_KEY>" } }, @@ -31702,8 +37751,8 @@ "type": "object", "properties": { "branchId": { - "type": "string", "description": "Branch 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.", + "type": "string", "default": "", "example": "<BRANCH_ID>", "x-appwrite": { @@ -31711,8 +37760,8 @@ } }, "ttl": { - "type": "integer", "description": "Time-to-live in seconds before the branch expires. Min 300 (5 min), max 604800 (7 days). Default: 86400 (24h).", + "type": "integer", "default": 86400, "example": 300, "format": "int32" @@ -31922,8 +37971,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -32000,13 +38049,13 @@ "type": "object", "properties": { "day": { - "type": "string", "description": "Day of the week for the maintenance window. Allowed values: sun, mon, tue, wed, thu, fri, sat.", + "type": "string", "example": "sun" }, "hourUtc": { - "type": "integer", "description": "Hour in UTC (0-23) for maintenance window start.", + "type": "integer", "example": 0, "format": "int32" } @@ -32087,13 +38136,13 @@ "type": "object", "properties": { "targetType": { - "type": "string", "description": "Target database type to migrate to. Allowed values: shared (serverless, scales to zero when idle), dedicated (always-on with persistent resources).", + "type": "string", "example": "shared" }, "specification": { - "type": "string", "description": "Target specification to provision when migrating to dedicated. Ignored for shared. Defaults to the database's current specification.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true } @@ -32493,26 +38542,26 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Restoration type. Allowed values: backup, pitr. Use \"backup\" to restore from a specific backup, or \"pitr\" for point-in-time recovery.", + "type": "string", "default": "backup", "example": "backup" }, "backupId": { - "type": "string", "description": "Backup ID to restore from (required for backup type).", + "type": "string", "example": "<BACKUP_ID>", "nullable": true }, "targetDatabaseId": { - "type": "string", "description": "Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version.", + "type": "string", "example": "<TARGET_DATABASE_ID>", "nullable": true }, "targetTime": { - "type": "string", "description": "Target time for PITR (required for pitr type) as an [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -32722,8 +38771,8 @@ "type": "object", "properties": { "targetVersion": { - "type": "string", "description": "Target engine version to upgrade to.", + "type": "string", "example": "<TARGET_VERSION>" } }, @@ -32852,94 +38901,94 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Database 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database display name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "version": { - "type": "string", "description": "Database engine version. Defaults to latest for selected engine.", + "type": "string", "example": "17", "nullable": true }, "specification": { - "type": "string", "description": "Specification identifier. Drives the allocated CPU, memory, storage, storage class, and connection ceiling.", + "type": "string", "default": "s-1vcpu-1gb", "example": "<SPECIFICATION>" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds.", + "type": "integer", "default": 900, "example": 60, "format": "int32" }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes of inactivity before container scales to zero.", + "type": "integer", "default": 15, "example": 5, "format": "int32" }, "pitr": { - "type": "boolean", "description": "Enable point-in-time recovery (PITR). Continuously archives changes so the database can be restored to any moment within the retention window.", + "type": "boolean", "default": true, "example": false }, "pitrRetentionDays": { - "type": "integer", "description": "Number of days to retain PITR data.", + "type": "integer", "default": 7, "example": 1, "format": "int32" }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "default": false, "example": false }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "default": 85, "example": 50, "format": "int32" }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -33129,135 +39178,135 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database display name.", + "type": "string", "example": "<NAME>", "nullable": true }, "status": { - "type": "string", "description": "Database status. Allowed values: ready, paused, inactive. Set to \"paused\" to pause, \"ready\" to resume (also recovers a failed database whose infrastructure is healthy), or \"inactive\" to spin down a shared-pool database.", + "type": "string", "example": "ready", "nullable": true }, "specification": { - "type": "string", "description": "Specification. Changes cpu, memory, storage, connection ceiling, and node pool based on specification config. Resource changes are applied via rolling cutover with zero downtime.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds (60-86400).", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes before container scales to zero.", + "type": "integer", "example": 5, "format": "int32", "nullable": true }, "pitr": { - "type": "boolean", "description": "Enable or disable point-in-time recovery (PITR).", + "type": "boolean", "example": false, "nullable": true }, "pitrRetentionDays": { - "type": "integer", "description": "Days to retain PITR data.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "example": false, "nullable": true }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "example": 50, "format": "int32", "nullable": true }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "metricsTraceSampleRate": { - "type": "number", "description": "Fraction of queries to trace (0.0\u20131.0). Forwarded to the sidecar.", + "type": "number", "format": "float", "nullable": true }, "metricsSlowQueryLogThresholdMs": { - "type": "integer", "description": "Threshold in ms above which queries are logged as slow. Forwarded to the sidecar.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "sqlApiEnabled": { - "type": "boolean", "description": "Enable the SQL API sidecar for this database.", + "type": "boolean", "example": false, "nullable": true }, "sqlApiAllowedStatements": { - "type": "array", "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "sqlApiMaxRows": { - "type": "integer", "description": "Maximum rows returned per SQL API execution (1-1000000).", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "sqlApiMaxBytes": { - "type": "integer", "description": "Maximum serialised SQL API result payload in bytes (1024-104857600).", + "type": "integer", "example": 1024, "format": "int32", "nullable": true }, "sqlApiTimeoutSeconds": { - "type": "integer", "description": "Per-call SQL API execution timeout in seconds (1-300).", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -33462,8 +39511,8 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" } @@ -33612,37 +39661,37 @@ "type": "object", "properties": { "policyId": { - "type": "string", "description": "Policy 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.", + "type": "string", "example": "<POLICY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32" }, "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "default": true, "example": false } @@ -33804,25 +39853,25 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>", "nullable": true }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "example": false, "nullable": true } @@ -33964,41 +40013,41 @@ "type": "object", "properties": { "provider": { - "type": "string", "description": "Storage provider for off-cluster backups. Allowed values: s3 (Amazon S3 or S3-compatible), gcs (Google Cloud Storage), azure (Azure Blob Storage).", + "type": "string", "example": "s3" }, "bucket": { - "type": "string", "description": "Storage bucket or container name.", + "type": "string", "example": "<BUCKET>" }, "region": { - "type": "string", "description": "Storage region.", + "type": "string", "default": "", "example": "<REGION>" }, "prefix": { - "type": "string", "description": "Object key prefix for backups.", + "type": "string", "default": "backups\/", "example": "<PREFIX>" }, "endpoint": { - "type": "string", "description": "Custom endpoint for S3-compatible storage (e.g. MinIO).", + "type": "string", "default": "", "example": "<ENDPOINT>" }, "accessKey": { - "type": "string", "description": "Access key or client ID for authentication.", + "type": "string", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "Secret key or service account JSON for authentication.", + "type": "string", "example": "<SECRET_KEY>" } }, @@ -34275,8 +40324,8 @@ "type": "object", "properties": { "branchId": { - "type": "string", "description": "Branch 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.", + "type": "string", "default": "", "example": "<BRANCH_ID>", "x-appwrite": { @@ -34284,8 +40333,8 @@ } }, "ttl": { - "type": "integer", "description": "Time-to-live in seconds before the branch expires. Min 300 (5 min), max 604800 (7 days). Default: 86400 (24h).", + "type": "integer", "default": 86400, "example": 300, "format": "int32" @@ -34495,20 +40544,20 @@ "type": "object", "properties": { "sql": { - "type": "string", "description": "SQL statement to execute. Exactly one statement per request.", + "type": "string", "example": "<SQL>" }, "bindings": { - "type": "object", "description": "Optional bound parameters. Pass either a positional list or a name => value map matching the placeholder style used in the SQL.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "timeoutSeconds": { - "type": "integer", "description": "Per-call execution timeout override. Must be less than or equal to the database's configured sqlApiTimeoutSeconds.", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -34589,8 +40638,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -34667,13 +40716,13 @@ "type": "object", "properties": { "day": { - "type": "string", "description": "Day of the week for the maintenance window. Allowed values: sun, mon, tue, wed, thu, fri, sat.", + "type": "string", "example": "sun" }, "hourUtc": { - "type": "integer", "description": "Hour in UTC (0-23) for maintenance window start.", + "type": "integer", "example": 0, "format": "int32" } @@ -34754,13 +40803,13 @@ "type": "object", "properties": { "targetType": { - "type": "string", "description": "Target database type to migrate to. Allowed values: shared (serverless, scales to zero when idle), dedicated (always-on with persistent resources).", + "type": "string", "example": "shared" }, "specification": { - "type": "string", "description": "Target specification to provision when migrating to dedicated. Ignored for shared. Defaults to the database's current specification.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true } @@ -35055,52 +41104,52 @@ "type": "object", "properties": { "mode": { - "type": "string", "description": "Connection pool mode. Allowed values: transaction, session. Transaction mode returns connections to the pool after each transaction; session mode holds connections for the entire session lifetime.", + "type": "string", "example": "transaction", "nullable": true }, "maxConnections": { - "type": "integer", "description": "Client-connection ceiling the pooler accepts. Supported on MySQL and MariaDB only; the PostgreSQL pooler has no client cap, so set networkMaxConnections on the database instead.", + "type": "integer", "example": 10, "format": "int32", "nullable": true }, "defaultPoolSize": { - "type": "integer", "description": "Default pool size per user.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "readWriteSplitting": { - "type": "boolean", "description": "Route SELECTs to HA replicas, writes and locked reads to the primary. Defaults to true when HA is enabled.", + "type": "boolean", "example": false, "nullable": true }, "poolerCpuRequest": { - "type": "string", "description": "Pooler sidecar CPU request override (Kubernetes quantity, e.g. \"250m\" or \"1\"). Leave null for the proportional default (5% of DB CPU, floor 100m).", + "type": "string", "example": "<POOLER_CPU_REQUEST>", "nullable": true }, "poolerCpuLimit": { - "type": "string", "description": "Pooler sidecar CPU limit override (Kubernetes quantity, e.g. \"500m\" or \"1\"). Leave null for the proportional default (10% of DB CPU, floor 200m). Changing this field rolls the database pod.", + "type": "string", "example": "<POOLER_CPU_LIMIT>", "nullable": true }, "poolerMemoryRequest": { - "type": "string", "description": "Pooler sidecar memory request override (Kubernetes quantity, e.g. \"128Mi\" or \"1Gi\"). Leave null for the proportional default (7.5% of DB memory, floor 64Mi).", + "type": "string", "example": "<POOLER_MEMORY_REQUEST>", "nullable": true }, "poolerMemoryLimit": { - "type": "string", "description": "Pooler sidecar memory limit override (Kubernetes quantity, e.g. \"256Mi\" or \"1Gi\"). Leave null for the proportional default (15% of DB memory, floor 128Mi). Changing this field rolls the database pod.", + "type": "string", "example": "<POOLER_MEMORY_LIMIT>", "nullable": true } @@ -35341,26 +41390,26 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Restoration type. Allowed values: backup, pitr. Use \"backup\" to restore from a specific backup, or \"pitr\" for point-in-time recovery.", + "type": "string", "default": "backup", "example": "backup" }, "backupId": { - "type": "string", "description": "Backup ID to restore from (required for backup type).", + "type": "string", "example": "<BACKUP_ID>", "nullable": true }, "targetDatabaseId": { - "type": "string", "description": "Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version.", + "type": "string", "example": "<TARGET_DATABASE_ID>", "nullable": true }, "targetTime": { - "type": "string", "description": "Target time for PITR (required for pitr type) as an [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -35570,8 +41619,8 @@ "type": "object", "properties": { "targetVersion": { - "type": "string", "description": "Target engine version to upgrade to.", + "type": "string", "example": "<TARGET_VERSION>" } }, @@ -35652,19 +41701,19 @@ "type": "object", "properties": { "grant_id": { - "type": "string", "description": "Grant ID made during authorization, provided to consent screen in URL search params.", + "type": "string", "example": "<GRANT_ID>" }, "authorization_details": { - "type": "string", "description": "Enriched `authorization_details` the user consented to, replacing what the client requested. Each entry must use a `type` the project accepts. Optional; omit to keep the originally requested details.", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" }, "scope": { - "type": "string", "description": "Space-separated scopes the user consented to. Must be a subset of the scopes originally requested; identity scopes such as `openid` are always retained. Optional; omit to keep the originally requested scopes.", + "type": "string", "default": "", "example": "<SCOPE>" } @@ -35961,87 +42010,87 @@ "type": "object", "properties": { "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "<CLIENT_ID>" }, "redirect_uri": { - "type": "string", "description": "Redirect URI where visitor will be redirected after authorization, whether successful or not.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "response_type": { - "type": "string", "description": "OAuth2 \/ OIDC response type. One of `code` (Authorization Code Flow), `id_token` (Implicit Flow, OIDC login only), or `code id_token` (Hybrid Flow).", + "type": "string", "default": "", "example": "" }, "scope": { - "type": "string", "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`, `phone`.", + "type": "string", "default": "", "example": "<SCOPE>" }, "state": { - "type": "string", "description": "OAuth2 state. You receive this back in the redirect URI.", + "type": "string", "default": "", "example": "<STATE>" }, "nonce": { - "type": "string", "description": "OIDC nonce parameter to prevent replay attacks. Required when response_type includes `id_token`.", + "type": "string", "default": "", "example": "<NONCE>" }, "code_challenge": { - "type": "string", "description": "PKCE code challenge. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "<CODE_CHALLENGE>" }, "code_challenge_method": { - "type": "string", "description": "PKCE code challenge method. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "s256" }, "prompt": { - "type": "string", "description": "OIDC prompt parameter for customization of consent screen. Space-separated list of: none, login, consent, select_account.", + "type": "string", "default": "", "example": "<PROMPT>" }, "max_age": { - "type": "integer", "description": "OIDC max_age paraleter for customization of consent screen. Maximum allowable elapsed time in seconds since the user last authenticated. If exceeded, re-authentication is required.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "authorization_details": { - "type": "string", "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "<AUDIENCE>" }, "request_uri": { - "type": "string", "description": "OAuth2 authorization request handle returned by the pushed authorization request endpoint.", + "type": "string", "default": "", "example": "<REQUEST_URI>" } @@ -36121,31 +42170,31 @@ "type": "object", "properties": { "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "<CLIENT_ID>" }, "scope": { - "type": "string", "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`.", + "type": "string", "default": "", "example": "<SCOPE>" }, "authorization_details": { - "type": "string", "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "<AUDIENCE>" } @@ -36224,8 +42273,8 @@ "type": "object", "properties": { "user_code": { - "type": "string", "description": "User code displayed on the device.", + "type": "string", "example": "<USER_CODE>" } }, @@ -36480,78 +42529,78 @@ "type": "object", "properties": { "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "example": "<CLIENT_ID>" }, "redirect_uri": { - "type": "string", "description": "Redirect URI where visitor will be redirected after authorization, whether successful or not.", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "response_type": { - "type": "string", "description": "OAuth2 \/ OIDC response type.", + "type": "string", "example": "code" }, "scope": { - "type": "string", "description": "Space-separated OAuth2 scopes. Can include project scopes, and built-in scopes: `openid`, `email`, `profile`, `phone`.", + "type": "string", "default": "", "example": "<SCOPE>" }, "state": { - "type": "string", "description": "OAuth2 state. You receive this back in the redirect URI.", + "type": "string", "default": "", "example": "<STATE>" }, "nonce": { - "type": "string", "description": "OIDC nonce parameter to prevent replay attacks. Required when response_type includes `id_token`.", + "type": "string", "default": "", "example": "<NONCE>" }, "code_challenge": { - "type": "string", "description": "PKCE code challenge. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "<CODE_CHALLENGE>" }, "code_challenge_method": { - "type": "string", "description": "PKCE code challenge method. Required when OAuth2 app is public.", + "type": "string", "default": "", "example": "s256" }, "prompt": { - "type": "string", "description": "OIDC prompt parameter for customization of consent screen. Space-separated list of: none, login, consent, select_account.", + "type": "string", "default": "", "example": "<PROMPT>" }, "max_age": { - "type": "integer", "description": "OIDC max_age parameter for customization of consent screen.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "authorization_details": { - "type": "string", "description": "Rich authorization request. JSON array of objects, each with a `type` and project-defined fields", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "<AUDIENCE>" } @@ -36734,8 +42783,8 @@ "type": "object", "properties": { "grant_id": { - "type": "string", "description": "Grant ID made during authorization, provided to consent screen in URL search params.", + "type": "string", "example": "<GRANT_ID>" } }, @@ -36818,25 +42867,25 @@ "type": "object", "properties": { "token": { - "type": "string", "description": "The access or refresh token to revoke.", + "type": "string", "example": "<TOKEN>" }, "token_type_hint": { - "type": "string", "description": "Type of token to revoke (access_token or refresh_token).", + "type": "string", "default": "", "example": "access_token" }, "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "<CLIENT_ID>" }, "client_secret": { - "type": "string", "description": "OAuth2 client secret. Required for confidential apps; omitted for public apps.", + "type": "string", "default": "", "example": "<CLIENT_SECRET>" } @@ -36919,61 +42968,61 @@ "type": "object", "properties": { "grant_type": { - "type": "string", "description": "OAuth2 grant type. Can be one of: `authorization_code`, `refresh_token`, `urn:ietf:params:oauth:grant-type:device_code`.", + "type": "string", "example": "<GRANT_TYPE>" }, "code": { - "type": "string", "description": "Authorization code to be exchanged for access and refresh tokens. Required for `authorization_code` grant type.", + "type": "string", "default": "", "example": "<CODE>" }, "refresh_token": { - "type": "string", "description": "Refresh token to be exchanged for a new access and refresh tokens. Required for `refresh_token` grant type.", + "type": "string", "default": "", "example": "<REFRESH_TOKEN>" }, "device_code": { - "type": "string", "description": "Device code obtained from the device authorization endpoint. Required for `urn:ietf:params:oauth:grant-type:device_code` grant type.", + "type": "string", "default": "", "example": "<DEVICE_CODE>" }, "client_id": { - "type": "string", "description": "OAuth2 client ID. Either a registered app ID or an HTTPS client ID metadata document URL.", + "type": "string", "default": "", "example": "<CLIENT_ID>" }, "client_secret": { - "type": "string", "description": "OAuth2 client secret. Required for confidential apps.", + "type": "string", "default": "", "example": "<CLIENT_SECRET>" }, "code_verifier": { - "type": "string", "description": "PKCE code verifier. Required for public apps.", + "type": "string", "default": "", "example": "<CODE_VERIFIER>" }, "redirect_uri": { - "type": "string", "description": "Redirect URI. Required for `authorization_code` grant type.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "resource": { - "type": "string", "description": "RFC 8707 resource indicator URI or URI list. Each value must be an absolute URI without a fragment.", + "type": "string", "default": [] }, "audience": { - "type": "string", "description": "Compatibility alias for a single OAuth2 resource indicator URI.", + "type": "string", "default": "", "example": "<AUDIENCE>" } @@ -37090,8 +43139,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "New organization name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -37280,13 +43329,13 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application unique ID.", + "type": "string", "example": "<APP_ID>" }, "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. The Appwrite Console stores authorized project IDs here.", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" } @@ -37433,8 +43482,8 @@ "type": "object", "properties": { "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. Omit to keep the current value.", + "type": "string", "example": "<AUTHORIZATION_DETAILS>", "nullable": true } @@ -37633,65 +43682,143 @@ "type": "object", "properties": { "keyId": { - "type": "string", "description": "Key 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.", + "type": "string", "example": "<KEY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "OrganizationKeyScopes", "type": "string", - "enum": [ - "projects.read", - "projects.write", - "devKeys.read", - "devKeys.write", - "organization.keys.read", - "organization.keys.write", - "organization.installations.read", - "organization.installations.write", - "organization.memberships.read", - "organization.memberships.write", - "organization.read", - "organization.write", - "domains.read", - "domains.write", - "keys.read", - "keys.write" - ], - "x-enum-name": "OrganizationKeyScopes", - "x-enum-keys": [ - "projects.read", - "projects.write", - "devKeys.read", - "devKeys.write", - "organization.keys.read", - "organization.keys.write", - "organization.installations.read", - "organization.installations.write", - "organization.memberships.read", - "organization.memberships.write", - "organization.read", - "organization.write", - "domains.read", - "domains.write", - "keys.read", - "keys.write" + "oneOf": [ + { + "type": "string", + "enum": [ + "projects.read" + ], + "title": "projects.read" + }, + { + "type": "string", + "enum": [ + "projects.write" + ], + "title": "projects.write" + }, + { + "type": "string", + "enum": [ + "devKeys.read" + ], + "title": "devKeys.read" + }, + { + "type": "string", + "enum": [ + "devKeys.write" + ], + "title": "devKeys.write" + }, + { + "type": "string", + "enum": [ + "organization.keys.read" + ], + "title": "organization.keys.read" + }, + { + "type": "string", + "enum": [ + "organization.keys.write" + ], + "title": "organization.keys.write" + }, + { + "type": "string", + "enum": [ + "organization.installations.read" + ], + "title": "organization.installations.read" + }, + { + "type": "string", + "enum": [ + "organization.installations.write" + ], + "title": "organization.installations.write" + }, + { + "type": "string", + "enum": [ + "organization.memberships.read" + ], + "title": "organization.memberships.read" + }, + { + "type": "string", + "enum": [ + "organization.memberships.write" + ], + "title": "organization.memberships.write" + }, + { + "type": "string", + "enum": [ + "organization.read" + ], + "title": "organization.read" + }, + { + "type": "string", + "enum": [ + "organization.write" + ], + "title": "organization.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -37835,57 +43962,135 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "OrganizationKeyScopes", "type": "string", - "enum": [ - "projects.read", - "projects.write", - "devKeys.read", - "devKeys.write", - "organization.keys.read", - "organization.keys.write", - "organization.installations.read", - "organization.installations.write", - "organization.memberships.read", - "organization.memberships.write", - "organization.read", - "organization.write", - "domains.read", - "domains.write", - "keys.read", - "keys.write" - ], - "x-enum-name": "OrganizationKeyScopes", - "x-enum-keys": [ - "projects.read", - "projects.write", - "devKeys.read", - "devKeys.write", - "organization.keys.read", - "organization.keys.write", - "organization.installations.read", - "organization.installations.write", - "organization.memberships.read", - "organization.memberships.write", - "organization.read", - "organization.write", - "domains.read", - "domains.write", - "keys.read", - "keys.write" + "oneOf": [ + { + "type": "string", + "enum": [ + "projects.read" + ], + "title": "projects.read" + }, + { + "type": "string", + "enum": [ + "projects.write" + ], + "title": "projects.write" + }, + { + "type": "string", + "enum": [ + "devKeys.read" + ], + "title": "devKeys.read" + }, + { + "type": "string", + "enum": [ + "devKeys.write" + ], + "title": "devKeys.write" + }, + { + "type": "string", + "enum": [ + "organization.keys.read" + ], + "title": "organization.keys.read" + }, + { + "type": "string", + "enum": [ + "organization.keys.write" + ], + "title": "organization.keys.write" + }, + { + "type": "string", + "enum": [ + "organization.installations.read" + ], + "title": "organization.installations.read" + }, + { + "type": "string", + "enum": [ + "organization.installations.write" + ], + "title": "organization.installations.write" + }, + { + "type": "string", + "enum": [ + "organization.memberships.read" + ], + "title": "organization.memberships.read" + }, + { + "type": "string", + "enum": [ + "organization.memberships.write" + ], + "title": "organization.memberships.write" + }, + { + "type": "string", + "enum": [ + "organization.read" + ], + "title": "organization.read" + }, + { + "type": "string", + "enum": [ + "organization.write" + ], + "title": "organization.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -38094,42 +44299,42 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "Email of the new organization member.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "userId": { - "type": "string", "description": "ID of the user to be added to the organization.", + "type": "string", "default": "", "example": "<USER_ID>" }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "roles": { - "type": "array", "description": "Array of strings. Use this param to set the user roles in the organization. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the invitation email. This parameter is not required when an API key is supplied.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "name": { - "type": "string", "description": "Name of the new organization member. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -38270,8 +44475,8 @@ "type": "object", "properties": { "roles": { - "type": "array", "description": "An array of strings. Use this param to set the user's roles in the organization. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } @@ -38479,34 +44684,63 @@ "type": "object", "properties": { "projectId": { - "type": "string", - "description": "Unique Id. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, and hyphen. Can't start with a special char. Max length is 36 chars." + "description": "Unique Id. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, and hyphen. Can't start with a special char. Max length is 36 chars.", + "type": "string" }, "name": { - "type": "string", "description": "Project name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "region": { - "type": "string", "description": "Project Region.", + "type": "string", + "default": "default", "example": "fra", - "enum": [ - "fra", - "nyc", - "syd", - "sfo", - "sgp", - "tor" - ], - "x-enum-name": "Region", - "x-enum-keys": [ - "fra", - "nyc", - "syd", - "sfo", - "sgp", - "tor" + "title": "Region", + "oneOf": [ + { + "type": "string", + "enum": [ + "fra" + ], + "title": "fra" + }, + { + "type": "string", + "enum": [ + "nyc" + ], + "title": "nyc" + }, + { + "type": "string", + "enum": [ + "syd" + ], + "title": "syd" + }, + { + "type": "string", + "enum": [ + "sfo" + ], + "title": "sfo" + }, + { + "type": "string", + "enum": [ + "sgp" + ], + "title": "sgp" + }, + { + "type": "string", + "enum": [ + "tor" + ], + "title": "tor" + } ] } }, @@ -38647,8 +44881,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Project name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -38882,94 +45116,94 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Database 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database display name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "version": { - "type": "string", "description": "Database engine version. Defaults to latest for selected engine.", + "type": "string", "example": "17", "nullable": true }, "specification": { - "type": "string", "description": "Specification identifier. Drives the allocated CPU, memory, storage, storage class, and connection ceiling.", + "type": "string", "default": "s-1vcpu-1gb", "example": "<SPECIFICATION>" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds.", + "type": "integer", "default": 900, "example": 60, "format": "int32" }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes of inactivity before container scales to zero.", + "type": "integer", "default": 15, "example": 5, "format": "int32" }, "pitr": { - "type": "boolean", "description": "Enable point-in-time recovery (PITR). Continuously archives changes so the database can be restored to any moment within the retention window.", + "type": "boolean", "default": true, "example": false }, "pitrRetentionDays": { - "type": "integer", "description": "Number of days to retain PITR data.", + "type": "integer", "default": 7, "example": 1, "format": "int32" }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "default": false, "example": false }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "default": 85, "example": 50, "format": "int32" }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -39159,135 +45393,135 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database display name.", + "type": "string", "example": "<NAME>", "nullable": true }, "status": { - "type": "string", "description": "Database status. Allowed values: ready, paused, inactive. Set to \"paused\" to pause, \"ready\" to resume (also recovers a failed database whose infrastructure is healthy), or \"inactive\" to spin down a shared-pool database.", + "type": "string", "example": "ready", "nullable": true }, "specification": { - "type": "string", "description": "Specification. Changes cpu, memory, storage, connection ceiling, and node pool based on specification config. Resource changes are applied via rolling cutover with zero downtime.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode preference. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true }, "networkIdleTimeoutSeconds": { - "type": "integer", "description": "Connection idle timeout in seconds (60-86400).", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "networkIPAllowlist": { - "type": "array", "description": "IP addresses\/CIDR ranges allowed to connect.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "idleTimeoutMinutes": { - "type": "integer", "description": "Minutes before container scales to zero.", + "type": "integer", "example": 5, "format": "int32", "nullable": true }, "pitr": { - "type": "boolean", "description": "Enable or disable point-in-time recovery (PITR).", + "type": "boolean", "example": false, "nullable": true }, "pitrRetentionDays": { - "type": "integer", "description": "Days to retain PITR data.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "storageAutoscaling": { - "type": "boolean", "description": "Enable automatic storage expansion when usage exceeds threshold.", + "type": "boolean", "example": false, "nullable": true }, "storageAutoscalingThresholdPercent": { - "type": "integer", "description": "Storage usage percentage (50-95) that triggers automatic expansion.", + "type": "integer", "example": 50, "format": "int32", "nullable": true }, "storageAutoscalingMaxGb": { - "type": "integer", "description": "Maximum storage size in GB for autoscaling. 0 means no limit.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "metricsTraceSampleRate": { - "type": "number", "description": "Fraction of queries to trace (0.0\u20131.0). Forwarded to the sidecar.", + "type": "number", "format": "float", "nullable": true }, "metricsSlowQueryLogThresholdMs": { - "type": "integer", "description": "Threshold in ms above which queries are logged as slow. Forwarded to the sidecar.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "sqlApiEnabled": { - "type": "boolean", "description": "Enable the SQL API sidecar for this database.", + "type": "boolean", "example": false, "nullable": true }, "sqlApiAllowedStatements": { - "type": "array", "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "sqlApiMaxRows": { - "type": "integer", "description": "Maximum rows returned per SQL API execution (1-1000000).", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "sqlApiMaxBytes": { - "type": "integer", "description": "Maximum serialised SQL API result payload in bytes (1024-104857600).", + "type": "integer", "example": 1024, "format": "int32", "nullable": true }, "sqlApiTimeoutSeconds": { - "type": "integer", "description": "Per-call SQL API execution timeout in seconds (1-300).", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -39492,8 +45726,8 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" } @@ -39642,37 +45876,37 @@ "type": "object", "properties": { "policyId": { - "type": "string", "description": "Policy 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.", + "type": "string", "example": "<POLICY_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32" }, "type": { - "type": "string", "description": "Backup type: full or incremental.", + "type": "string", "default": "full", "example": "full" }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "default": true, "example": false } @@ -39834,25 +46068,25 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Policy name. Max length: 128 chars.", + "type": "string", "example": "<NAME>", "nullable": true }, "schedule": { - "type": "string", - "description": "Schedule CRON syntax." + "description": "Schedule CRON syntax.", + "type": "string" }, "retention": { - "type": "integer", "description": "Days to keep backups before deletion.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Is policy enabled? When disabled, no backups will be taken.", + "type": "boolean", "example": false, "nullable": true } @@ -39994,41 +46228,41 @@ "type": "object", "properties": { "provider": { - "type": "string", "description": "Storage provider for off-cluster backups. Allowed values: s3 (Amazon S3 or S3-compatible), gcs (Google Cloud Storage), azure (Azure Blob Storage).", + "type": "string", "example": "s3" }, "bucket": { - "type": "string", "description": "Storage bucket or container name.", + "type": "string", "example": "<BUCKET>" }, "region": { - "type": "string", "description": "Storage region.", + "type": "string", "default": "", "example": "<REGION>" }, "prefix": { - "type": "string", "description": "Object key prefix for backups.", + "type": "string", "default": "backups\/", "example": "<PREFIX>" }, "endpoint": { - "type": "string", "description": "Custom endpoint for S3-compatible storage (e.g. MinIO).", + "type": "string", "default": "", "example": "<ENDPOINT>" }, "accessKey": { - "type": "string", "description": "Access key or client ID for authentication.", + "type": "string", "example": "<ACCESS_KEY>" }, "secretKey": { - "type": "string", "description": "Secret key or service account JSON for authentication.", + "type": "string", "example": "<SECRET_KEY>" } }, @@ -40305,8 +46539,8 @@ "type": "object", "properties": { "branchId": { - "type": "string", "description": "Branch 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.", + "type": "string", "default": "", "example": "<BRANCH_ID>", "x-appwrite": { @@ -40314,8 +46548,8 @@ } }, "ttl": { - "type": "integer", "description": "Time-to-live in seconds before the branch expires. Min 300 (5 min), max 604800 (7 days). Default: 86400 (24h).", + "type": "integer", "default": 86400, "example": 300, "format": "int32" @@ -40525,20 +46759,20 @@ "type": "object", "properties": { "sql": { - "type": "string", "description": "SQL statement to execute. Exactly one statement per request.", + "type": "string", "example": "<SQL>" }, "bindings": { - "type": "object", "description": "Optional bound parameters. Pass either a positional list or a name => value map matching the placeholder style used in the SQL.", + "type": "object", "default": {}, "example": {}, "nullable": true }, "timeoutSeconds": { - "type": "integer", "description": "Per-call execution timeout override. Must be less than or equal to the database's configured sqlApiTimeoutSeconds.", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -40678,8 +46912,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Extension name (e.g., pgvector, postgis, uuid-ossp).", + "type": "string", "example": "<NAME>" } }, @@ -40829,8 +47063,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -40907,13 +47141,13 @@ "type": "object", "properties": { "day": { - "type": "string", "description": "Day of the week for the maintenance window. Allowed values: sun, mon, tue, wed, thu, fri, sat.", + "type": "string", "example": "sun" }, "hourUtc": { - "type": "integer", "description": "Hour in UTC (0-23) for maintenance window start.", + "type": "integer", "example": 0, "format": "int32" } @@ -40994,13 +47228,13 @@ "type": "object", "properties": { "targetType": { - "type": "string", "description": "Target database type to migrate to. Allowed values: shared (serverless, scales to zero when idle), dedicated (always-on with persistent resources).", + "type": "string", "example": "shared" }, "specification": { - "type": "string", "description": "Target specification to provision when migrating to dedicated. Ignored for shared. Defaults to the database's current specification.", + "type": "string", "example": "<SPECIFICATION>", "nullable": true } @@ -41295,52 +47529,52 @@ "type": "object", "properties": { "mode": { - "type": "string", "description": "Connection pool mode. Allowed values: transaction, session. Transaction mode returns connections to the pool after each transaction; session mode holds connections for the entire session lifetime.", + "type": "string", "example": "transaction", "nullable": true }, "maxConnections": { - "type": "integer", "description": "Client-connection ceiling the pooler accepts. Supported on MySQL and MariaDB only; the PostgreSQL pooler has no client cap, so set networkMaxConnections on the database instead.", + "type": "integer", "example": 10, "format": "int32", "nullable": true }, "defaultPoolSize": { - "type": "integer", "description": "Default pool size per user.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "readWriteSplitting": { - "type": "boolean", "description": "Route SELECTs to HA replicas, writes and locked reads to the primary. Defaults to true when HA is enabled.", + "type": "boolean", "example": false, "nullable": true }, "poolerCpuRequest": { - "type": "string", "description": "Pooler sidecar CPU request override (Kubernetes quantity, e.g. \"250m\" or \"1\"). Leave null for the proportional default (5% of DB CPU, floor 100m).", + "type": "string", "example": "<POOLER_CPU_REQUEST>", "nullable": true }, "poolerCpuLimit": { - "type": "string", "description": "Pooler sidecar CPU limit override (Kubernetes quantity, e.g. \"500m\" or \"1\"). Leave null for the proportional default (10% of DB CPU, floor 200m). Changing this field rolls the database pod.", + "type": "string", "example": "<POOLER_CPU_LIMIT>", "nullable": true }, "poolerMemoryRequest": { - "type": "string", "description": "Pooler sidecar memory request override (Kubernetes quantity, e.g. \"128Mi\" or \"1Gi\"). Leave null for the proportional default (7.5% of DB memory, floor 64Mi).", + "type": "string", "example": "<POOLER_MEMORY_REQUEST>", "nullable": true }, "poolerMemoryLimit": { - "type": "string", "description": "Pooler sidecar memory limit override (Kubernetes quantity, e.g. \"256Mi\" or \"1Gi\"). Leave null for the proportional default (15% of DB memory, floor 128Mi). Changing this field rolls the database pod.", + "type": "string", "example": "<POOLER_MEMORY_LIMIT>", "nullable": true } @@ -41581,26 +47815,26 @@ "type": "object", "properties": { "type": { - "type": "string", "description": "Restoration type. Allowed values: backup, pitr. Use \"backup\" to restore from a specific backup, or \"pitr\" for point-in-time recovery.", + "type": "string", "default": "backup", "example": "backup" }, "backupId": { - "type": "string", "description": "Backup ID to restore from (required for backup type).", + "type": "string", "example": "<BACKUP_ID>", "nullable": true }, "targetDatabaseId": { - "type": "string", "description": "Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version.", + "type": "string", "example": "<TARGET_DATABASE_ID>", "nullable": true }, "targetTime": { - "type": "string", "description": "Target time for PITR (required for pitr type) as an [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -41810,8 +48044,8 @@ "type": "object", "properties": { "targetVersion": { - "type": "string", "description": "Target engine version to upgrade to.", + "type": "string", "example": "<TARGET_VERSION>" } }, @@ -42078,18 +48312,18 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "status": { - "type": "string", "description": "Presence status.", + "type": "string", "example": "<STATUS>" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -42098,14 +48332,14 @@ } }, "expiresAt": { - "type": "string", "description": "Presence expiry datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime" }, "metadata": { - "type": "object", "description": "Presence metadata object.", + "type": "object", "default": [], "example": {} } @@ -42217,30 +48451,30 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "status": { - "type": "string", "description": "Presence status.", + "type": "string", "example": "<STATUS>" }, "expiresAt": { - "type": "string", "description": "Presence expiry datetime.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime" }, "metadata": { - "type": "object", "description": "Presence metadata object.", + "type": "object", "default": {}, "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -42249,8 +48483,8 @@ } }, "purge": { - "type": "boolean", "description": "When true, purge cached responses used by list presences endpoint.", + "type": "boolean", "default": false, "example": false } @@ -42461,24 +48695,57 @@ "schema": { "type": "string", "example": "email-password", - "enum": [ - "email-password", - "magic-url", - "email-otp", - "anonymous", - "invites", - "jwt", - "phone" - ], - "x-enum-name": "ProjectAuthMethodId", - "x-enum-keys": [ - "email-password", - "magic-url", - "email-otp", - "anonymous", - "invites", - "jwt", - "phone" + "title": "ProjectAuthMethodId", + "oneOf": [ + { + "type": "string", + "enum": [ + "email-password" + ], + "title": "email-password" + }, + { + "type": "string", + "enum": [ + "magic-url" + ], + "title": "magic-url" + }, + { + "type": "string", + "enum": [ + "email-otp" + ], + "title": "email-otp" + }, + { + "type": "string", + "enum": [ + "anonymous" + ], + "title": "anonymous" + }, + { + "type": "string", + "enum": [ + "invites" + ], + "title": "invites" + }, + { + "type": "string", + "enum": [ + "jwt" + ], + "title": "jwt" + }, + { + "type": "string", + "enum": [ + "phone" + ], + "title": "phone" + } ] }, "in": "path" @@ -42491,8 +48758,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Auth method status.", + "type": "boolean", "example": false } }, @@ -42634,230 +48901,753 @@ "type": "object", "properties": { "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } }, "duration": { - "type": "integer", "description": "Time in seconds before ephemeral key expires. Maximum duration is 3600 seconds.", + "type": "integer", "example": 600, "format": "int32" } @@ -42997,235 +49787,758 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Key name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "scopes": { - "type": "array", "description": "Key scopes list. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } }, "expire": { - "type": "string", "description": "Expiration time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Use null for unlimited expiration.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -43347,8 +50660,8 @@ "type": "object", "properties": { "labels": { - "type": "array", "description": "Array of project labels. Replaces the previous labels. Maximum of 1000 labels are allowed, each up to 36 alphanumeric characters long.", + "type": "array", "items": { "type": "string" } @@ -43490,14 +50803,14 @@ "type": "object", "properties": { "number": { - "type": "string", "description": "Phone number to associate with the mock phone. Must be a valid E.164 formatted phone number.", + "type": "string", "example": "+12065550100", "format": "phone" }, "otp": { - "type": "string", "description": "One-time password (OTP) to associate with the mock phone. Must be a 6-digit numeric code.", + "type": "string", "example": "<OTP>" } }, @@ -43638,8 +50951,8 @@ "type": "object", "properties": { "otp": { - "type": "string", "description": "One-time password (OTP) to associate with the mock phone. Must be a 6-digit numeric code.", + "type": "string", "example": "<OTP>" } }, @@ -43834,111 +51147,111 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Enable or disable the OAuth2 server.", + "type": "boolean", "example": false }, "authorizationUrl": { - "type": "string", "description": "URL to your application with consent screen.", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "scopes": { - "type": "array", "description": "List of allowed OAuth2 scopes. Maximum of 100 scopes are allowed, each up to 128 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "authorizationDetailsTypes": { - "type": "array", "description": "List of accepted `authorization_details` types. Maximum of 100 types are allowed, each up to 128 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "accessTokenDuration": { - "type": "integer", "description": "Access token duration in seconds for confidential clients (server-side apps that authenticate with a client secret). Leave empty to use default 8 hours.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "refreshTokenDuration": { - "type": "integer", "description": "Refresh token duration in seconds for confidential clients (server-side apps that authenticate with a client secret). Leave empty to use default 1 year.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "publicAccessTokenDuration": { - "type": "integer", "description": "Access token duration in seconds for public clients (SPAs, mobile, and native apps that cannot keep a client secret). Leave empty to use default 1 hour.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "publicRefreshTokenDuration": { - "type": "integer", "description": "Refresh token duration in seconds for public clients (SPAs, mobile, and native apps that cannot keep a client secret). Leave empty to use default 30 days.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "installationAccessTokenDuration": { - "type": "integer", "description": "Access token duration in seconds for app installation access tokens. Leave empty to use default 1 hour.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "confidentialPkce": { - "type": "boolean", "description": "When enabled, PKCE is required for confidential clients (server-side flows using client_secret). PKCE is always required for public clients regardless of this setting.", + "type": "boolean", "example": false, "nullable": true }, "verificationUrl": { - "type": "string", "description": "URL to your application page where users enter the device flow user code. Required to enable the Device Authorization Grant.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "userCodeLength": { - "type": "integer", "description": "Number of characters in the device flow user code, excluding the formatting separator. Shorter codes are easier to type but weaker; pair short codes with short expiry. Leave empty to use default 8.", + "type": "integer", "example": 6, "format": "int32", "nullable": true }, "userCodeFormat": { - "type": "string", "description": "Character set for device flow user codes: `numeric` (digits only \u2014 best for numeric keypads and TV remotes), `alphabetic` (letters only), or `alphanumeric` (letters and digits \u2014 highest entropy per character). Defaults to `alphanumeric`.", + "type": "string", "default": "alphanumeric", "example": "numeric" }, "deviceCodeDuration": { - "type": "integer", "description": "Lifetime in seconds of device flow device codes and user codes. Device codes are intentionally short-lived. Leave empty to use default 600.", + "type": "integer", "example": 60, "format": "int32", "nullable": true }, "defaultScopes": { - "type": "array", "description": "List of OAuth2 scopes used when an authorization request omits the scope parameter. Every default scope must also be allowed by the OAuth2 server. Maximum of 100 scopes are allowed, each up to 128 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "installationScopes": { - "type": "array", "description": "List of scopes an application may request when installed on a team. Omitting the parameter clears the list, so no installation scopes can be granted. Maximum of 100 scopes are allowed, each up to 128 characters long.", + "type": "array", "default": [], "items": { "type": "string" @@ -44009,20 +51322,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Amazon OAuth2 app. For example: amzn1.application-oa2-client.87400c00000000000000000000063d5b2", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Amazon OAuth2 app. For example: 79ffe4000000000000000000000000000000000000000000000000000002de55", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44087,32 +51400,32 @@ "type": "object", "properties": { "serviceId": { - "type": "string", "description": "'Service ID' of Apple OAuth2 app. For example: ip.appwrite.app.web", + "type": "string", "example": "<SERVICE_ID>", "nullable": true }, "keyId": { - "type": "string", "description": "'Key ID' of Apple OAuth2 app. For example: P4000000N8", + "type": "string", "example": "<KEY_ID>", "nullable": true }, "teamId": { - "type": "string", "description": "'Team ID' of Apple OAuth2 app. For example: D4000000R6", + "type": "string", "example": "<TEAM_ID>", "nullable": true }, "p8File": { - "type": "string", "description": "Contents of the Apple OAuth2 app .p8 private key file. The secret key wrapped by the PEM markers is 200 characters long. For example: -----BEGIN PRIVATE KEY-----MIGTAg...jy2Xbna-----END PRIVATE KEY-----", + "type": "string", "example": "<P8_FILE>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44177,20 +51490,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Appwrite OAuth2 app. For example: 6a42000000000000b5a0", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Appwrite OAuth2 app. For example: b86afd000000000000000000000000000000000000000000000000000ced5f93", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44255,26 +51568,26 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Auth0 OAuth2 app. For example: OaOkIA000000000000000000005KLSYq", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Auth0 OAuth2 app. For example: zXz0000-00000000000000000000000000000-00000000000000000000PJafnF", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Domain of Auth0 instance. For example: example.us.auth0.com", + "type": "string", "example": "<ENDPOINT>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44339,26 +51652,26 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Authentik OAuth2 app. For example: dTKOPa0000000000000000000000000000e7G8hv", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Authentik OAuth2 app. For example: ntQadq000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000Hp5WK", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Domain of Authentik instance. For example: example.authentik.com", + "type": "string", "example": "<ENDPOINT>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44423,20 +51736,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Autodesk OAuth2 app. For example: 5zw90v00000000000000000000kVYXN7", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Autodesk OAuth2 app. For example: 7I000000000000MW", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44501,20 +51814,20 @@ "type": "object", "properties": { "key": { - "type": "string", "description": "'Key' of Bitbucket OAuth2 app. For example: Knt70000000000ByRc", + "type": "string", "example": "<KEY>", "nullable": true }, "secret": { - "type": "string", "description": "'Secret' of Bitbucket OAuth2 app. For example: NMfLZJ00000000000000000000TLQdDx", + "type": "string", "example": "<SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44579,20 +51892,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Bitly OAuth2 app. For example: d95151000000000000000000000000000067af9b", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Bitly OAuth2 app. For example: a13e250000000000000000000000000000d73095", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44657,20 +51970,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Box OAuth2 app. For example: deglcs00000000000000000000x2og6y", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Box OAuth2 app. For example: OKM1f100000000000000000000eshEif", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44735,20 +52048,20 @@ "type": "object", "properties": { "apiKey": { - "type": "string", "description": "'API Key' of Dailymotion OAuth2 app. For example: 07a9000000000000067f", + "type": "string", "example": "<API_KEY>", "nullable": true }, "apiSecret": { - "type": "string", "description": "'API Secret' of Dailymotion OAuth2 app. For example: a399a90000000000000000000000000000d90639", + "type": "string", "example": "<API_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44813,20 +52126,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Discord OAuth2 app. For example: 950722000000343754", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Discord OAuth2 app. For example: YmPXnM000000000000000000002zFg5D", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44891,20 +52204,20 @@ "type": "object", "properties": { "publicKey": { - "type": "string", "description": "'Public Key, also known as API Key' of Disqus OAuth2 app. For example: cgegH70000000000000000000000000000000000000000000000000000Hr1nYX", + "type": "string", "example": "<PUBLIC_KEY>", "nullable": true }, "secretKey": { - "type": "string", "description": "'Secret Key, also known as API Secret' of Disqus OAuth2 app. For example: W7Bykj00000000000000000000000000000000000000000000000000003o43w9", + "type": "string", "example": "<SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -44969,20 +52282,20 @@ "type": "object", "properties": { "appKey": { - "type": "string", "description": "'App Key' of Dropbox OAuth2 app. For example: jl000000000009t", + "type": "string", "example": "<APP_KEY>", "nullable": true }, "appSecret": { - "type": "string", "description": "'App Secret' of Dropbox OAuth2 app. For example: g200000000000vw", + "type": "string", "example": "<APP_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45047,20 +52360,20 @@ "type": "object", "properties": { "keyString": { - "type": "string", "description": "'Keystring' of Etsy OAuth2 app. For example: nsgzxh0000000000008j85a2", + "type": "string", "example": "<KEY_STRING>", "nullable": true }, "sharedSecret": { - "type": "string", "description": "'Shared Secret' of Etsy OAuth2 app. For example: tp000000ru", + "type": "string", "example": "<SHARED_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45125,20 +52438,20 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "'App ID' of Facebook OAuth2 app. For example: 260600000007694", + "type": "string", "example": "<APP_ID>", "nullable": true }, "appSecret": { - "type": "string", "description": "'App Secret' of Facebook OAuth2 app. For example: 2d0b2800000000000000000000d38af4", + "type": "string", "example": "<APP_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45203,20 +52516,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Figma OAuth2 app. For example: byay5H0000000000VtiI40", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Figma OAuth2 app. For example: yEpOYn0000000000000000004iIsU5", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45281,26 +52594,26 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of FusionAuth OAuth2 app. For example: b2222c00-0000-0000-0000-000000862097", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of FusionAuth OAuth2 app. For example: Jx4s0C0000000000000000000000000000000wGqLsc", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Domain of FusionAuth instance. For example: example.fusionauth.io", + "type": "string", "example": "<ENDPOINT>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45365,20 +52678,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'OAuth2 app Client ID, or App ID' of GitHub OAuth2 app. For example: e4d87900000000540733. Example of wrong value: 370006", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of GitHub OAuth2 app. For example: 5e07c00000000000000000000000000000198bcc", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45443,27 +52756,27 @@ "type": "object", "properties": { "applicationId": { - "type": "string", "description": "'Application ID' of Gitlab OAuth2 app. For example: d41ffe0000000000000000000000000000000000000000000000000000d5e252", + "type": "string", "example": "<APPLICATION_ID>", "nullable": true }, "secret": { - "type": "string", "description": "'Secret' of Gitlab OAuth2 app. For example: gloas-838cfa0000000000000000000000000000000000000000000000000000ecbb38", + "type": "string", "example": "<SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Endpoint URL of self-hosted GitLab instance. For example: https:\/\/gitlab.com", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45528,39 +52841,130 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Google OAuth2 app. For example: 120000000095-92ifjb00000000000000000000g7ijfb.apps.googleusercontent.com", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Google OAuth2 app. For example: GOCSPX-2k8gsR0000000000000000VNahJj", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "prompt": { - "type": "array", "description": "Array of Google OAuth2 prompt values. If \"none\" is included, it must be the only element. \"none\" means: don't display any authentication or consent screens. Must not be specified with other values. \"consent\" means: prompt the user for consent. \"select_account\" means: prompt the user to select an account.", + "type": "array", "items": { + "title": "ProjectOAuth2GooglePrompt", "type": "string", - "enum": [ - "none", - "consent", - "select_account" - ], - "x-enum-name": "ProjectOAuth2GooglePrompt", - "x-enum-keys": [ - "none", - "consent", - "select_account" + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "consent" + ], + "title": "consent" + }, + { + "type": "string", + "enum": [ + "select_account" + ], + "title": "select_account" + } ] }, "nullable": true }, "enabled": { + "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", "type": "boolean", + "example": false, + "nullable": true + } + } + } + } + } + } + } + }, + "\/project\/oauth2\/huggingface": { + "patch": { + "summary": "Update project OAuth2 Hugging Face", + "operationId": "projectUpdateOAuth2HuggingFace", + "tags": [ + "project" + ], + "description": "Update the project OAuth2 Hugging Face configuration.", + "responses": { + "200": { + "description": "OAuth2HuggingFace", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/oAuth2HuggingFace" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "oauth2", + "cookies": false, + "type": "", + "demo": "project\/update-o-auth-2-hugging-face.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "project.oauth2.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "clientId": { + "description": "'Client ID' of Hugging Face OAuth2 app. For example: 2ab9cff9-d711-40ad-a91e-b08a49c42d24", + "type": "string", + "example": "<CLIENT_ID>", + "nullable": true + }, + "clientSecret": { + "description": "'Client Secret' of Hugging Face OAuth2 app. For example: oauth_app_secret_wcLhRtl000000000000000000000xbNdLt", + "type": "string", + "example": "<CLIENT_SECRET>", + "nullable": true + }, + "enabled": { "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45625,32 +53029,32 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Keycloak OAuth2 app. For example: appwrite-o0000000st-app", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Keycloak OAuth2 app. For example: jdjrJd00000000000000000000HUsaZO", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "endpoint": { - "type": "string", "description": "Domain of Keycloak instance. For example: keycloak.example.com", + "type": "string", "example": "<ENDPOINT>", "nullable": true }, "realmName": { - "type": "string", "description": "Keycloak realm name. For example: appwrite-realm", + "type": "string", "example": "<REALM_NAME>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45715,20 +53119,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Kick OAuth2 app. For example: 01KQ7C00000000000001MFHS32", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Kick OAuth2 app. For example: 34ac5600000000000000000000000000000000000000000000000000e830c8b", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45793,20 +53197,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Linkedin OAuth2 app. For example: 770000000000dv", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "primaryClientSecret": { - "type": "string", "description": "'Primary Client Secret or Secondary Client Secret' of Linkedin OAuth2 app. For example: WPL_AP1.2Bf0000000000000.\/HtlYw==", + "type": "string", "example": "<PRIMARY_CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45871,26 +53275,26 @@ "type": "object", "properties": { "applicationId": { - "type": "string", "description": "'Entra ID Application ID, also known as Client ID' of Microsoft OAuth2 app. For example: 00001111-aaaa-2222-bbbb-3333cccc4444", + "type": "string", "example": "<APPLICATION_ID>", "nullable": true }, "applicationSecret": { - "type": "string", "description": "'Entra ID Application Secret, also known as Client Secret' of Microsoft OAuth2 app. For example: A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u", + "type": "string", "example": "<APPLICATION_SECRET>", "nullable": true }, "tenant": { - "type": "string", "description": "Microsoft Entra ID tenant identifier. Use 'common', 'organizations', 'consumers' or a specific tenant ID. For example: common", + "type": "string", "example": "<TENANT>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -45955,20 +53359,20 @@ "type": "object", "properties": { "oauthClientId": { - "type": "string", "description": "'OAuth Client ID' of Notion OAuth2 app. For example: 341d8700-0000-0000-0000-000000446ee3", + "type": "string", "example": "<OAUTH_CLIENT_ID>", "nullable": true }, "oauthClientSecret": { - "type": "string", "description": "'OAuth Client Secret' of Notion OAuth2 app. For example: secret_dLUr4b000000000000000000000000000000lFHAa9", + "type": "string", "example": "<OAUTH_CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46033,76 +53437,94 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Oidc OAuth2 app. For example: qibI2x0000000000000000000000000006L2YFoG", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Oidc OAuth2 app. For example: Ah68ed000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003qpcHV", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "wellKnownURL": { - "type": "string", "description": "OpenID Connect well-known configuration URL. When provided, authorization, token, and user info endpoints can be discovered automatically. For example: https:\/\/myoauth.com\/.well-known\/openid-configuration", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "authorizationURL": { - "type": "string", "description": "OpenID Connect authorization endpoint URL. Required when wellKnownURL is not provided. For example: https:\/\/myoauth.com\/oauth2\/authorize", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "tokenURL": { - "type": "string", "description": "OpenID Connect token endpoint URL. Required when wellKnownURL is not provided. For example: https:\/\/myoauth.com\/oauth2\/token", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "userInfoURL": { - "type": "string", "description": "OpenID Connect user info endpoint URL. Required when wellKnownURL is not provided. For example: https:\/\/myoauth.com\/oauth2\/userinfo", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "prompt": { - "type": "array", "description": "Array of OpenID Connect prompt values controlling the authentication and consent screens. If \"none\" is included, it must be the only element. \"none\" means: don't display any authentication or consent screens. \"login\" means: prompt the user to re-authenticate. \"consent\" means: prompt the user for consent. \"select_account\" means: prompt the user to select an account.", + "type": "array", "items": { + "title": "ProjectOAuth2OidcPrompt", "type": "string", - "enum": [ - "none", - "login", - "consent", - "select_account" - ], - "x-enum-name": "ProjectOAuth2OidcPrompt", - "x-enum-keys": [ - "none", - "login", - "consent", - "select_account" + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "login" + ], + "title": "login" + }, + { + "type": "string", + "enum": [ + "consent" + ], + "title": "consent" + }, + { + "type": "string", + "enum": [ + "select_account" + ], + "title": "select_account" + } ] }, "nullable": true }, "maxAge": { - "type": "integer", "description": "Maximum authentication age in seconds. When set, the user must have authenticated within this many seconds, otherwise they are prompted to re-authenticate.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46167,31 +53589,31 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Okta OAuth2 app. For example: 0oa00000000000000698", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Okta OAuth2 app. For example: Kiq0000000000000000000000000000000000000-00000000000H2L5-3SJ-vRV", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "domain": { - "type": "string", "description": "Okta company domain. Required when enabling the provider. For example: trial-6400025.okta.com. Example of wrong value: trial-6400025-admin.okta.com, or https:\/\/trial-6400025.okta.com\/", + "type": "string", "nullable": true }, "authorizationServerId": { - "type": "string", "description": "Custom Authorization Servers. Optional, can be left empty or unconfigured. For example: aus000000000000000h7z", + "type": "string", "example": "<AUTHORIZATION_SERVER_ID>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46256,20 +53678,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Paypal OAuth2 app. For example: AdhIEG7-000000000000-0000000000000000000000000000000-0000000000000000000000-2pyB", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "secretKey": { - "type": "string", "description": "'Secret Key 1 or Secret Key 2' of Paypal OAuth2 app. For example: EH8KCXtew--000000000000000000000000000000000000000_C-1_5UP_000000000000000CB7KDp", + "type": "string", "example": "<SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46334,20 +53756,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of PaypalSandbox OAuth2 app. For example: AdhIEG7-000000000000-0000000000000000000000000000000-0000000000000000000000-2pyB", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "secretKey": { - "type": "string", "description": "'Secret Key 1 or Secret Key 2' of PaypalSandbox OAuth2 app. For example: EH8KCXtew--000000000000000000000000000000000000000_C-1_5UP_000000000000000CB7KDp", + "type": "string", "example": "<SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46412,20 +53834,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Podio OAuth2 app. For example: appwrite-o0000000st-app", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Podio OAuth2 app. For example: Rn247T0000000000000000000000000000000000000000000000000000W2zWTN", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46490,20 +53912,20 @@ "type": "object", "properties": { "customerKey": { - "type": "string", "description": "'Consumer Key' of Salesforce OAuth2 app. For example: 3MVG9I0000000000000000000000000000000000000000000000000000000000000000000000000C5Aejq", + "type": "string", "example": "<CUSTOMER_KEY>", "nullable": true }, "customerSecret": { - "type": "string", "description": "'Consumer Secret' of Salesforce OAuth2 app. For example: 3w000000000000e2", + "type": "string", "example": "<CUSTOMER_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46568,20 +53990,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Slack OAuth2 app. For example: 23000000089.15000000000023", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Slack OAuth2 app. For example: 81656000000000000000000000f3d2fd", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46646,20 +54068,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Spotify OAuth2 app. For example: 6ec271000000000000000000009beace", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Spotify OAuth2 app. For example: db068a000000000000000000008b5b9f", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46724,20 +54146,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Stripe OAuth2 app. For example: ca_UKibXX0000000000000000000006byvR", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "apiSecretKey": { - "type": "string", "description": "'API Secret Key' of Stripe OAuth2 app. For example: sk_51SfOd000000000000000000000000000000000000000000000000000000000000000000000000000000000000000QGWYfp", + "type": "string", "example": "<API_SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46802,20 +54224,20 @@ "type": "object", "properties": { "oauth2ClientId": { - "type": "string", "description": "'OAuth2 Client ID' of Tradeshift OAuth2 app. For example: appwrite-tes00000.0000000000est-app", + "type": "string", "example": "<OAUTH2_CLIENT_ID>", "nullable": true }, "oauth2ClientSecret": { - "type": "string", "description": "'OAuth2 Client Secret' of Tradeshift OAuth2 app. For example: 7cb52700-0000-0000-0000-000000ca5b83", + "type": "string", "example": "<OAUTH2_CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46880,20 +54302,20 @@ "type": "object", "properties": { "oauth2ClientId": { - "type": "string", "description": "'OAuth2 Client ID' of Tradeshift Sandbox OAuth2 app. For example: appwrite-tes00000.0000000000est-app", + "type": "string", "example": "<OAUTH2_CLIENT_ID>", "nullable": true }, "oauth2ClientSecret": { - "type": "string", "description": "'OAuth2 Client Secret' of Tradeshift Sandbox OAuth2 app. For example: 7cb52700-0000-0000-0000-000000ca5b83", + "type": "string", "example": "<OAUTH2_CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -46958,20 +54380,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Twitch OAuth2 app. For example: vvi0in000000000000000000ikmt9p", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Twitch OAuth2 app. For example: pmapue000000000000000000zylw3v", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -47036,20 +54458,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of WordPress OAuth2 app. For example: 130005", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of WordPress OAuth2 app. For example: PlBfJS0000000000000000000000000000000000000000000000000000EdUZJk", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -47114,20 +54536,20 @@ "type": "object", "properties": { "customerKey": { - "type": "string", "description": "'Customer Key' of X OAuth2 app. For example: slzZV0000000000000NFLaWT", + "type": "string", "example": "<CUSTOMER_KEY>", "nullable": true }, "secretKey": { - "type": "string", "description": "'Secret Key' of X OAuth2 app. For example: tkEPkp00000000000000000000000000000000000000FTxbI9", + "type": "string", "example": "<SECRET_KEY>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -47192,20 +54614,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID, also known as Customer Key' of Yahoo OAuth2 app. For example: dj0yJm000000000000000000000000000000000000000000000000000000000000000000000000000000000000Z4PWRm", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret, also known as Customer Secret' of Yahoo OAuth2 app. For example: cf978f0000000000000000000000000000c5e2e9", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -47270,20 +54692,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Yandex OAuth2 app. For example: 6a8a6a0000000000000000000091483c", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Yandex OAuth2 app. For example: bbf98500000000000000000000c75a63", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -47348,20 +54770,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Zoho OAuth2 app. For example: 1000.83C178000000000000000000RPNX0B", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Zoho OAuth2 app. For example: fb5cac000000000000000000000000000000a68f6e", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -47426,20 +54848,20 @@ "type": "object", "properties": { "clientId": { - "type": "string", "description": "'Client ID' of Zoom OAuth2 app. For example: QMAC00000000000000w0AQ", + "type": "string", "example": "<CLIENT_ID>", "nullable": true }, "clientSecret": { - "type": "string", "description": "'Client Secret' of Zoom OAuth2 app. For example: GAWsG4000000000000000000007U01ON", + "type": "string", "example": "<CLIENT_SECRET>", "nullable": true }, "enabled": { - "type": "boolean", "description": "OAuth2 sign-in method status. Set to true to enable new session creation. Setting to true will trigger end-to-end credentials validation, and will throw if the credentials are invalid.", + "type": "boolean", "example": false, "nullable": true } @@ -47460,7 +54882,7 @@ "description": "Get a single OAuth2 provider configuration. Credential fields (client secret, p8 file, key\/team IDs) are write-only and always returned empty.", "responses": { "200": { - "description": "OAuth2GitHub, or OAuth2Discord, or OAuth2Figma, or OAuth2Dropbox, or OAuth2Dailymotion, or OAuth2Bitbucket, or OAuth2Bitly, or OAuth2Box, or OAuth2Autodesk, or OAuth2Google, or OAuth2Zoom, or OAuth2Zoho, or OAuth2Yandex, or OAuth2X, or OAuth2WordPress, or OAuth2Twitch, or OAuth2Stripe, or OAuth2Spotify, or OAuth2Slack, or OAuth2Podio, or OAuth2Notion, or OAuth2Salesforce, or OAuth2Yahoo, or OAuth2Linkedin, or OAuth2Disqus, or OAuth2Amazon, or OAuth2Etsy, or OAuth2Facebook, or OAuth2Tradeshift, or OAuth2Paypal, or OAuth2Gitlab, or OAuth2Authentik, or OAuth2Auth0, or OAuth2FusionAuth, or OAuth2Keycloak, or OAuth2Oidc, or OAuth2Apple, or OAuth2Okta, or OAuth2Kick, or OAuth2Microsoft", + "description": "OAuth2GitHub, or OAuth2Discord, or OAuth2Figma, or OAuth2Dropbox, or OAuth2Dailymotion, or OAuth2Bitbucket, or OAuth2Bitly, or OAuth2Box, or OAuth2Autodesk, or OAuth2Google, or OAuth2Zoom, or OAuth2Zoho, or OAuth2Yandex, or OAuth2X, or OAuth2WordPress, or OAuth2Twitch, or OAuth2Stripe, or OAuth2Spotify, or OAuth2Slack, or OAuth2Podio, or OAuth2Notion, or OAuth2Salesforce, or OAuth2Yahoo, or OAuth2HuggingFace, or OAuth2Linkedin, or OAuth2Disqus, or OAuth2Amazon, or OAuth2Etsy, or OAuth2Facebook, or OAuth2Tradeshift, or OAuth2Paypal, or OAuth2Gitlab, or OAuth2Authentik, or OAuth2Auth0, or OAuth2FusionAuth, or OAuth2Keycloak, or OAuth2Oidc, or OAuth2Apple, or OAuth2Okta, or OAuth2Kick, or OAuth2Microsoft", "content": { "application\/json": { "schema": { @@ -47534,6 +54956,9 @@ { "$ref": "#\/components\/schemas\/oAuth2Yahoo" }, + { + "$ref": "#\/components\/schemas\/oAuth2HuggingFace" + }, { "$ref": "#\/components\/schemas\/oAuth2Linkedin" }, @@ -47612,6 +55037,7 @@ "notion": "#\/components\/schemas\/oAuth2Notion", "salesforce": "#\/components\/schemas\/oAuth2Salesforce", "yahoo": "#\/components\/schemas\/oAuth2Yahoo", + "huggingface": "#\/components\/schemas\/oAuth2HuggingFace", "linkedin": "#\/components\/schemas\/oAuth2Linkedin", "disqus": "#\/components\/schemas\/oAuth2Disqus", "amazon": "#\/components\/schemas\/oAuth2Amazon", @@ -47673,98 +55099,323 @@ "schema": { "type": "string", "example": "amazon", - "enum": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" - ], - "x-enum-name": "ProjectOAuthProviderId", - "x-enum-keys": [ - "amazon", - "apple", - "appwrite", - "auth0", - "authentik", - "autodesk", - "bitbucket", - "bitly", - "box", - "dailymotion", - "discord", - "disqus", - "dropbox", - "etsy", - "facebook", - "figma", - "fusionauth", - "github", - "gitlab", - "google", - "keycloak", - "kick", - "linkedin", - "microsoft", - "notion", - "oidc", - "okta", - "paypal", - "paypalSandbox", - "podio", - "salesforce", - "slack", - "spotify", - "stripe", - "tradeshift", - "tradeshiftBox", - "twitch", - "wordpress", - "x", - "yahoo", - "yammer", - "yandex", - "zoho", - "zoom" + "title": "ProjectOAuthProviderId", + "oneOf": [ + { + "type": "string", + "enum": [ + "amazon" + ], + "title": "amazon" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "appwrite" + ], + "title": "appwrite" + }, + { + "type": "string", + "enum": [ + "auth0" + ], + "title": "auth0" + }, + { + "type": "string", + "enum": [ + "authentik" + ], + "title": "authentik" + }, + { + "type": "string", + "enum": [ + "autodesk" + ], + "title": "autodesk" + }, + { + "type": "string", + "enum": [ + "bitbucket" + ], + "title": "bitbucket" + }, + { + "type": "string", + "enum": [ + "bitly" + ], + "title": "bitly" + }, + { + "type": "string", + "enum": [ + "box" + ], + "title": "box" + }, + { + "type": "string", + "enum": [ + "dailymotion" + ], + "title": "dailymotion" + }, + { + "type": "string", + "enum": [ + "discord" + ], + "title": "discord" + }, + { + "type": "string", + "enum": [ + "disqus" + ], + "title": "disqus" + }, + { + "type": "string", + "enum": [ + "dropbox" + ], + "title": "dropbox" + }, + { + "type": "string", + "enum": [ + "etsy" + ], + "title": "etsy" + }, + { + "type": "string", + "enum": [ + "facebook" + ], + "title": "facebook" + }, + { + "type": "string", + "enum": [ + "figma" + ], + "title": "figma" + }, + { + "type": "string", + "enum": [ + "fusionauth" + ], + "title": "fusionauth" + }, + { + "type": "string", + "enum": [ + "github" + ], + "title": "github" + }, + { + "type": "string", + "enum": [ + "gitlab" + ], + "title": "gitlab" + }, + { + "type": "string", + "enum": [ + "google" + ], + "title": "google" + }, + { + "type": "string", + "enum": [ + "huggingface" + ], + "title": "huggingface" + }, + { + "type": "string", + "enum": [ + "keycloak" + ], + "title": "keycloak" + }, + { + "type": "string", + "enum": [ + "kick" + ], + "title": "kick" + }, + { + "type": "string", + "enum": [ + "linkedin" + ], + "title": "linkedin" + }, + { + "type": "string", + "enum": [ + "microsoft" + ], + "title": "microsoft" + }, + { + "type": "string", + "enum": [ + "notion" + ], + "title": "notion" + }, + { + "type": "string", + "enum": [ + "oidc" + ], + "title": "oidc" + }, + { + "type": "string", + "enum": [ + "okta" + ], + "title": "okta" + }, + { + "type": "string", + "enum": [ + "paypal" + ], + "title": "paypal" + }, + { + "type": "string", + "enum": [ + "paypalSandbox" + ], + "title": "paypalSandbox" + }, + { + "type": "string", + "enum": [ + "podio" + ], + "title": "podio" + }, + { + "type": "string", + "enum": [ + "salesforce" + ], + "title": "salesforce" + }, + { + "type": "string", + "enum": [ + "slack" + ], + "title": "slack" + }, + { + "type": "string", + "enum": [ + "spotify" + ], + "title": "spotify" + }, + { + "type": "string", + "enum": [ + "stripe" + ], + "title": "stripe" + }, + { + "type": "string", + "enum": [ + "tradeshift" + ], + "title": "tradeshift" + }, + { + "type": "string", + "enum": [ + "tradeshiftBox" + ], + "title": "tradeshiftBox" + }, + { + "type": "string", + "enum": [ + "twitch" + ], + "title": "twitch" + }, + { + "type": "string", + "enum": [ + "wordpress" + ], + "title": "wordpress" + }, + { + "type": "string", + "enum": [ + "x" + ], + "title": "x" + }, + { + "type": "string", + "enum": [ + "yahoo" + ], + "title": "yahoo" + }, + { + "type": "string", + "enum": [ + "yammer" + ], + "title": "yammer" + }, + { + "type": "string", + "enum": [ + "yandex" + ], + "title": "yandex" + }, + { + "type": "string", + "enum": [ + "zoho" + ], + "title": "zoho" + }, + { + "type": "string", + "enum": [ + "zoom" + ], + "title": "zoom" + } ] }, "in": "path" @@ -47901,21 +55552,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "applicationId": { - "type": "string", "description": "Android application ID. Max length: 256 chars.", + "type": "string", "example": "<APPLICATION_ID>" } }, @@ -47996,13 +55647,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "applicationId": { - "type": "string", "description": "Android application ID. Max length: 256 chars.", + "type": "string", "example": "<APPLICATION_ID>" } }, @@ -48070,21 +55721,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "bundleIdentifier": { - "type": "string", "description": "Apple bundle identifier. Max length: 256 chars.", + "type": "string", "example": "<BUNDLE_IDENTIFIER>" } }, @@ -48165,13 +55816,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "bundleIdentifier": { - "type": "string", "description": "Apple bundle identifier. Max length: 256 chars.", + "type": "string", "example": "<BUNDLE_IDENTIFIER>" } }, @@ -48239,21 +55890,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "packageName": { - "type": "string", "description": "Linux package name. Max length: 256 chars.", + "type": "string", "example": "<PACKAGE_NAME>" } }, @@ -48334,13 +55985,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "packageName": { - "type": "string", "description": "Linux package name. Max length: 256 chars.", + "type": "string", "example": "<PACKAGE_NAME>" } }, @@ -48408,21 +56059,21 @@ "type": "object", "properties": { "platformId": { - "type": "string", "description": "Platform 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.", + "type": "string", "example": "<PLATFORM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "hostname": { - "type": "string", "description": "Platform web hostname. Max length: 256 chars.", + "type": "string", "example": "app.example.com" } }, @@ -48503,182 +56154,182 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Platform name. Max length: 128 chars.", - "example": "<NAME>" - }, - "hostname": { "type": "string", - "description": "Platform web hostname. Max length: 256 chars.", - "example": "app.example.com" - } - }, - "required": [ - "name", - "hostname" - ] - } - } - } - } - } - }, - "\/project\/platforms\/windows": { - "post": { - "summary": "Create project Windows platform", - "operationId": "projectCreateWindowsPlatform", - "tags": [ - "project" - ], - "description": "Create a new Windows platform for your project. Use this endpoint to register a new Windows platform where your users will run your application which will interact with the Appwrite API.", - "responses": { - "201": { - "description": "Platform Windows", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/platformWindows" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "platforms", - "cookies": false, - "type": "", - "demo": "project\/create-windows-platform.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "platforms.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "platformId": { - "type": "string", - "description": "Platform 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.", - "example": "<PLATFORM_ID>", - "x-appwrite": { - "idGenerator": "ID.unique" - } - }, - "name": { - "type": "string", - "description": "Platform name. Max length: 128 chars.", + "example": "<NAME>" + }, + "hostname": { + "description": "Platform web hostname. Max length: 256 chars.", + "type": "string", + "example": "app.example.com" + } + }, + "required": [ + "name", + "hostname" + ] + } + } + } + } + } + }, + "\/project\/platforms\/windows": { + "post": { + "summary": "Create project Windows platform", + "operationId": "projectCreateWindowsPlatform", + "tags": [ + "project" + ], + "description": "Create a new Windows platform for your project. Use this endpoint to register a new Windows platform where your users will run your application which will interact with the Appwrite API.", + "responses": { + "201": { + "description": "Platform Windows", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/platformWindows" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "platforms", + "cookies": false, + "type": "", + "demo": "project\/create-windows-platform.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "platforms.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "platformId": { + "description": "Platform 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.", + "type": "string", + "example": "<PLATFORM_ID>", + "x-appwrite": { + "idGenerator": "ID.unique" + } + }, + "name": { + "description": "Platform name. Max length: 128 chars.", + "type": "string", + "example": "<NAME>" + }, + "packageIdentifierName": { + "description": "Windows package identifier name. Max length: 256 chars.", + "type": "string", + "example": "<PACKAGE_IDENTIFIER_NAME>" + } + }, + "required": [ + "platformId", + "name", + "packageIdentifierName" + ] + } + } + } + } + } + }, + "\/project\/platforms\/windows\/{platformId}": { + "put": { + "summary": "Update project Windows platform", + "operationId": "projectUpdateWindowsPlatform", + "tags": [ + "project" + ], + "description": "Update a Windows platform by its unique ID. Use this endpoint to update the platform's name or package identifier name.", + "responses": { + "200": { + "description": "Platform Windows", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/platformWindows" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "platforms", + "cookies": false, + "type": "", + "demo": "project\/update-windows-platform.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "platforms.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "platformId", + "description": "Platform ID.", + "required": true, + "schema": { + "type": "string", + "example": "<PLATFORM_ID>" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "description": "Platform name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "packageIdentifierName": { - "type": "string", "description": "Windows package identifier name. Max length: 256 chars.", - "example": "<PACKAGE_IDENTIFIER_NAME>" - } - }, - "required": [ - "platformId", - "name", - "packageIdentifierName" - ] - } - } - } - } - } - }, - "\/project\/platforms\/windows\/{platformId}": { - "put": { - "summary": "Update project Windows platform", - "operationId": "projectUpdateWindowsPlatform", - "tags": [ - "project" - ], - "description": "Update a Windows platform by its unique ID. Use this endpoint to update the platform's name or package identifier name.", - "responses": { - "200": { - "description": "Platform Windows", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/platformWindows" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "platforms", - "cookies": false, - "type": "", - "demo": "project\/update-windows-platform.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "platforms.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "platformId", - "description": "Platform ID.", - "required": true, - "schema": { - "type": "string", - "example": "<PLATFORM_ID>" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Platform name. Max length: 128 chars.", - "example": "<NAME>" - }, - "packageIdentifierName": { "type": "string", - "description": "Windows package identifier name. Max length: 256 chars.", "example": "<PACKAGE_IDENTIFIER_NAME>" } }, @@ -48966,8 +56617,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Set whether or not to block aliased emails during signup and email updates.", + "type": "boolean", "example": false } }, @@ -49037,8 +56688,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Set whether or not to restrict sign-ups and email updates to corporate email addresses only.", + "type": "boolean", "example": false } }, @@ -49108,8 +56759,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Set whether or not to block disposable email addresses during signup and email updates.", + "type": "boolean", "example": false } }, @@ -49179,8 +56830,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Set whether or not to block free email addresses during signup and email updates.", + "type": "boolean", "example": false } }, @@ -49250,33 +56901,33 @@ "type": "object", "properties": { "userId": { - "type": "boolean", "description": "Set to true if you want make user ID visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userEmail": { - "type": "boolean", "description": "Set to true if you want make user email visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userPhone": { - "type": "boolean", "description": "Set to true if you want make user phone number visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userName": { - "type": "boolean", "description": "Set to true if you want make user name visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userMFA": { - "type": "boolean", "description": "Set to true if you want make user MFA status visible to all team members, or false to hide it.", + "type": "boolean", "example": false }, "userAccessedAt": { - "type": "boolean", "description": "Set to true if you want make user last access time visible to all team members, or false to hide it.", + "type": "boolean", "example": false } } @@ -49343,23 +56994,23 @@ "type": "object", "properties": { "totp": { - "type": "boolean", "description": "Set to true to allow TOTP to complete an MFA challenge, or false to disable it.", + "type": "boolean", "example": false }, "email": { - "type": "boolean", "description": "Set to true to allow email to complete an MFA challenge, or false to disable it.", + "type": "boolean", "example": false }, "phone": { - "type": "boolean", "description": "Set to true to allow phone (SMS) to complete an MFA challenge, or false to disable it.", + "type": "boolean", "example": false }, "custom": { - "type": "boolean", "description": "Set to true to allow the custom factor to complete an MFA challenge, or false to disable it.", + "type": "boolean", "example": false } } @@ -49426,8 +57077,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Toggle password dictionary policy. Set to true if you want password change to block passwords in the dictionary, or false to allow them. When changing this policy, existing passwords remain valid.", + "type": "boolean", "example": false } }, @@ -49497,8 +57148,8 @@ "type": "object", "properties": { "total": { - "type": "integer", "description": "Set the password history length per user. Value can be between 1 and 20, or null to disable the limit.", + "type": "integer", "example": 1, "format": "int32", "nullable": true @@ -49570,8 +57221,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Toggle password personal data policy. Set to true if you want to block passwords including user's personal data, or false to allow it. When changing this policy, existing passwords remain valid.", + "type": "boolean", "example": false } }, @@ -49641,29 +57292,29 @@ "type": "object", "properties": { "min": { - "type": "integer", "description": "Minimum password length. Value must be between 8 and 256. Default is 8.", + "type": "integer", "example": 8, "format": "int32" }, "uppercase": { - "type": "boolean", "description": "Whether passwords must include at least one uppercase letter.", + "type": "boolean", "example": false }, "lowercase": { - "type": "boolean", "description": "Whether passwords must include at least one lowercase letter.", + "type": "boolean", "example": false }, "number": { - "type": "boolean", "description": "Whether passwords must include at least one number.", + "type": "boolean", "example": false }, "symbols": { - "type": "boolean", "description": "Whether passwords must include at least one symbol.", + "type": "boolean", "example": false } } @@ -49730,8 +57381,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Toggle session alert policy. Set to true if you want users to receive email notifications when a sessions are created for their users, or false to not send email alerts.", + "type": "boolean", "example": false } }, @@ -49801,8 +57452,8 @@ "type": "object", "properties": { "duration": { - "type": "integer", "description": "Maximum session length in seconds. Minium allowed value is 60 seconds, and maximum is 1 year, which is 31536000 seconds.", + "type": "integer", "example": 60, "format": "int32" } @@ -49873,8 +57524,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Toggle session invalidation policy. Set to true if you want password change to invalidate all sessions of an user, or false to keep sessions active.", + "type": "boolean", "example": false } }, @@ -49944,8 +57595,8 @@ "type": "object", "properties": { "total": { - "type": "integer", "description": "Set the maximum number of sessions allowed per user. Value can be between 1 and 100.", + "type": "integer", "example": 1, "format": "int32" } @@ -50016,8 +57667,8 @@ "type": "object", "properties": { "total": { - "type": "integer", "description": "Set the maximum number of users allowed in the project. Value can be between 0 and 10000. Use 0 or null to disable the limit.", + "type": "integer", "example": 0, "format": "int32", "nullable": true @@ -50156,40 +57807,113 @@ "schema": { "type": "string", "example": "password-dictionary", - "enum": [ - "password-dictionary", - "password-history", - "password-strength", - "password-personal-data", - "session-alert", - "session-duration", - "session-invalidation", - "session-limit", - "user-limit", - "membership-privacy", - "mfa-factors", - "deny-aliased-email", - "deny-disposable-email", - "deny-free-email", - "deny-corporate-email" - ], - "x-enum-name": "ProjectPolicyId", - "x-enum-keys": [ - "password-dictionary", - "password-history", - "password-strength", - "password-personal-data", - "session-alert", - "session-duration", - "session-invalidation", - "session-limit", - "user-limit", - "membership-privacy", - "mfa-factors", - "deny-aliased-email", - "deny-disposable-email", - "deny-free-email", - "deny-corporate-email" + "title": "ProjectPolicyId", + "oneOf": [ + { + "type": "string", + "enum": [ + "password-dictionary" + ], + "title": "password-dictionary" + }, + { + "type": "string", + "enum": [ + "password-history" + ], + "title": "password-history" + }, + { + "type": "string", + "enum": [ + "password-strength" + ], + "title": "password-strength" + }, + { + "type": "string", + "enum": [ + "password-personal-data" + ], + "title": "password-personal-data" + }, + { + "type": "string", + "enum": [ + "session-alert" + ], + "title": "session-alert" + }, + { + "type": "string", + "enum": [ + "session-duration" + ], + "title": "session-duration" + }, + { + "type": "string", + "enum": [ + "session-invalidation" + ], + "title": "session-invalidation" + }, + { + "type": "string", + "enum": [ + "session-limit" + ], + "title": "session-limit" + }, + { + "type": "string", + "enum": [ + "user-limit" + ], + "title": "user-limit" + }, + { + "type": "string", + "enum": [ + "membership-privacy" + ], + "title": "membership-privacy" + }, + { + "type": "string", + "enum": [ + "mfa-factors" + ], + "title": "mfa-factors" + }, + { + "type": "string", + "enum": [ + "deny-aliased-email" + ], + "title": "deny-aliased-email" + }, + { + "type": "string", + "enum": [ + "deny-disposable-email" + ], + "title": "deny-disposable-email" + }, + { + "type": "string", + "enum": [ + "deny-free-email" + ], + "title": "deny-free-email" + }, + { + "type": "string", + "enum": [ + "deny-corporate-email" + ], + "title": "deny-corporate-email" + } ] }, "in": "path" @@ -50252,16 +57976,29 @@ "schema": { "type": "string", "example": "rest", - "enum": [ - "rest", - "graphql", - "websocket" - ], - "x-enum-name": "ProjectProtocolId", - "x-enum-keys": [ - "rest", - "graphql", - "websocket" + "title": "ProjectProtocolId", + "oneOf": [ + { + "type": "string", + "enum": [ + "rest" + ], + "title": "rest" + }, + { + "type": "string", + "enum": [ + "graphql" + ], + "title": "graphql" + }, + { + "type": "string", + "enum": [ + "websocket" + ], + "title": "websocket" + } ] }, "in": "path" @@ -50274,8 +58011,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Protocol status.", + "type": "boolean", "example": false } }, @@ -50343,48 +58080,141 @@ "schema": { "type": "string", "example": "account", - "enum": [ - "account", - "avatars", - "databases", - "tablesdb", - "locale", - "health", - "project", - "storage", - "teams", - "users", - "vcs", - "sites", - "functions", - "proxy", - "graphql", - "migrations", - "messaging", - "advisor", - "oauth2" - ], - "x-enum-name": "ProjectServiceId", - "x-enum-keys": [ - "account", - "avatars", - "databases", - "tablesdb", - "locale", - "health", - "project", - "storage", - "teams", - "users", - "vcs", - "sites", - "functions", - "proxy", - "graphql", - "migrations", - "messaging", - "advisor", - "oauth2" + "title": "ProjectServiceId", + "oneOf": [ + { + "type": "string", + "enum": [ + "account" + ], + "title": "account" + }, + { + "type": "string", + "enum": [ + "avatars" + ], + "title": "avatars" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "locale" + ], + "title": "locale" + }, + { + "type": "string", + "enum": [ + "health" + ], + "title": "health" + }, + { + "type": "string", + "enum": [ + "project" + ], + "title": "project" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + }, + { + "type": "string", + "enum": [ + "teams" + ], + "title": "teams" + }, + { + "type": "string", + "enum": [ + "users" + ], + "title": "users" + }, + { + "type": "string", + "enum": [ + "vcs" + ], + "title": "vcs" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "proxy" + ], + "title": "proxy" + }, + { + "type": "string", + "enum": [ + "graphql" + ], + "title": "graphql" + }, + { + "type": "string", + "enum": [ + "migrations" + ], + "title": "migrations" + }, + { + "type": "string", + "enum": [ + "messaging" + ], + "title": "messaging" + }, + { + "type": "string", + "enum": [ + "advisor" + ], + "title": "advisor" + }, + { + "type": "string", + "enum": [ + "oauth2" + ], + "title": "oauth2" + } ] }, "in": "path" @@ -50397,8 +58227,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean", "description": "Service status.", + "type": "boolean", "example": false } }, @@ -50465,106 +58295,1341 @@ "type": "object", "properties": { "host": { - "type": "string", "description": "SMTP server hostname (domain)", + "type": "string", + "nullable": true + }, + "port": { + "description": "SMTP server port", + "type": "integer", + "format": "int32", + "nullable": true + }, + "username": { + "description": "SMTP server username. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "<USERNAME>", + "nullable": true + }, + "password": { + "description": "SMTP server password. Pass an empty string to clear a previously set value. This property is stored securely and cannot be read in future (write-only).", + "type": "string", + "example": "password", + "format": "password", + "nullable": true + }, + "senderEmail": { + "description": "Email address shown in inbox as the sender of the email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "email@example.com", + "format": "email", + "nullable": true + }, + "senderName": { + "description": "Name shown in inbox as the sender of the email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "<SENDER_NAME>", + "nullable": true + }, + "replyToEmail": { + "description": "Email used when user replies to the email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "email@example.com", + "format": "email", + "nullable": true + }, + "replyToName": { + "description": "Name used when user replies to the email. Pass an empty string to clear a previously set value.", + "type": "string", + "example": "<REPLY_TO_NAME>", + "nullable": true + }, + "secure": { + "description": "Configures if communication with SMTP server is encrypted. Allowed values are: tls, ssl. Leave empty for no encryption.", + "type": "string", + "example": "tls", + "title": "ProjectSMTPSecure", + "oneOf": [ + { + "type": "string", + "enum": [ + "tls" + ], + "title": "tls" + }, + { + "type": "string", + "enum": [ + "ssl" + ], + "title": "ssl" + } + ], "nullable": true }, - "port": { - "type": "integer", - "description": "SMTP server port", - "format": "int32", + "enabled": { + "description": "Enable or disable custom SMTP. Custom SMTP is useful for branding purposes, but also allows use of custom email templates.", + "type": "boolean", + "example": false, + "nullable": true + } + } + } + } + } + } + } + }, + "\/project\/smtp\/tests": { + "post": { + "summary": "Create project SMTP test", + "operationId": "projectCreateSMTPTest", + "tags": [ + "project" + ], + "description": "Send a test email to verify SMTP configuration. ", + "responses": { + "204": { + "description": "No content" + } + }, + "deprecated": false, + "x-appwrite": { + "group": "smtp", + "cookies": false, + "type": "", + "demo": "project\/create-smtp-test.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "project.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "emails": { + "description": "Array of emails to send test email to. Maximum of 10 emails are allowed.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "emails" + ] + } + } + } + } + } + }, + "\/project\/templates\/email": { + "get": { + "summary": "List project email templates", + "operationId": "projectListEmailTemplates", + "tags": [ + "project" + ], + "description": "Get a list of all custom email templates configured for the project. This endpoint returns an array of all configured email templates and their locales.", + "responses": { + "200": { + "description": "Email Templates List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/emailTemplateList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "templates", + "cookies": false, + "type": "", + "demo": "project\/list-email-templates.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "templates.read", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "queries", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Only supported methods are limit and offset", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "default": [] + }, + "in": "query" + }, + { + "name": "total", + "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": true + }, + "in": "query" + } + ] + }, + "patch": { + "summary": "Update project email template", + "operationId": "projectUpdateEmailTemplate", + "tags": [ + "project" + ], + "description": "Update a custom email template for the specified locale and type. Use this endpoint to modify the content of your email templates.", + "responses": { + "200": { + "description": "EmailTemplate", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/emailTemplate" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "templates", + "cookies": false, + "type": "", + "demo": "project\/update-email-template.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "templates.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "templateId": { + "description": "Custom email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", + "type": "string", + "example": "verification", + "title": "ProjectEmailTemplateId", + "oneOf": [ + { + "type": "string", + "enum": [ + "verification" + ], + "title": "verification" + }, + { + "type": "string", + "enum": [ + "magicSession" + ], + "title": "magicSession" + }, + { + "type": "string", + "enum": [ + "recovery" + ], + "title": "recovery" + }, + { + "type": "string", + "enum": [ + "invitation" + ], + "title": "invitation" + }, + { + "type": "string", + "enum": [ + "mfaChallenge" + ], + "title": "mfaChallenge" + }, + { + "type": "string", + "enum": [ + "sessionAlert" + ], + "title": "sessionAlert" + }, + { + "type": "string", + "enum": [ + "otpSession" + ], + "title": "otpSession" + } + ] + }, + "locale": { + "description": "Custom email template locale. If left empty, the fallback locale (en) will be used.", + "type": "string", + "default": "", + "example": "af", + "title": "ProjectEmailTemplateLocale", + "oneOf": [ + { + "type": "string", + "enum": [ + "af" + ], + "title": "af" + }, + { + "type": "string", + "enum": [ + "ar-ae" + ], + "title": "ar-ae" + }, + { + "type": "string", + "enum": [ + "ar-bh" + ], + "title": "ar-bh" + }, + { + "type": "string", + "enum": [ + "ar-dz" + ], + "title": "ar-dz" + }, + { + "type": "string", + "enum": [ + "ar-eg" + ], + "title": "ar-eg" + }, + { + "type": "string", + "enum": [ + "ar-iq" + ], + "title": "ar-iq" + }, + { + "type": "string", + "enum": [ + "ar-jo" + ], + "title": "ar-jo" + }, + { + "type": "string", + "enum": [ + "ar-kw" + ], + "title": "ar-kw" + }, + { + "type": "string", + "enum": [ + "ar-lb" + ], + "title": "ar-lb" + }, + { + "type": "string", + "enum": [ + "ar-ly" + ], + "title": "ar-ly" + }, + { + "type": "string", + "enum": [ + "ar-ma" + ], + "title": "ar-ma" + }, + { + "type": "string", + "enum": [ + "ar-om" + ], + "title": "ar-om" + }, + { + "type": "string", + "enum": [ + "ar-qa" + ], + "title": "ar-qa" + }, + { + "type": "string", + "enum": [ + "ar-sa" + ], + "title": "ar-sa" + }, + { + "type": "string", + "enum": [ + "ar-sy" + ], + "title": "ar-sy" + }, + { + "type": "string", + "enum": [ + "ar-tn" + ], + "title": "ar-tn" + }, + { + "type": "string", + "enum": [ + "ar-ye" + ], + "title": "ar-ye" + }, + { + "type": "string", + "enum": [ + "as" + ], + "title": "as" + }, + { + "type": "string", + "enum": [ + "az" + ], + "title": "az" + }, + { + "type": "string", + "enum": [ + "be" + ], + "title": "be" + }, + { + "type": "string", + "enum": [ + "bg" + ], + "title": "bg" + }, + { + "type": "string", + "enum": [ + "bh" + ], + "title": "bh" + }, + { + "type": "string", + "enum": [ + "bn" + ], + "title": "bn" + }, + { + "type": "string", + "enum": [ + "bs" + ], + "title": "bs" + }, + { + "type": "string", + "enum": [ + "ca" + ], + "title": "ca" + }, + { + "type": "string", + "enum": [ + "cs" + ], + "title": "cs" + }, + { + "type": "string", + "enum": [ + "cy" + ], + "title": "cy" + }, + { + "type": "string", + "enum": [ + "da" + ], + "title": "da" + }, + { + "type": "string", + "enum": [ + "de" + ], + "title": "de" + }, + { + "type": "string", + "enum": [ + "de-at" + ], + "title": "de-at" + }, + { + "type": "string", + "enum": [ + "de-ch" + ], + "title": "de-ch" + }, + { + "type": "string", + "enum": [ + "de-li" + ], + "title": "de-li" + }, + { + "type": "string", + "enum": [ + "de-lu" + ], + "title": "de-lu" + }, + { + "type": "string", + "enum": [ + "el" + ], + "title": "el" + }, + { + "type": "string", + "enum": [ + "en" + ], + "title": "en" + }, + { + "type": "string", + "enum": [ + "en-au" + ], + "title": "en-au" + }, + { + "type": "string", + "enum": [ + "en-bz" + ], + "title": "en-bz" + }, + { + "type": "string", + "enum": [ + "en-ca" + ], + "title": "en-ca" + }, + { + "type": "string", + "enum": [ + "en-gb" + ], + "title": "en-gb" + }, + { + "type": "string", + "enum": [ + "en-ie" + ], + "title": "en-ie" + }, + { + "type": "string", + "enum": [ + "en-jm" + ], + "title": "en-jm" + }, + { + "type": "string", + "enum": [ + "en-nz" + ], + "title": "en-nz" + }, + { + "type": "string", + "enum": [ + "en-tt" + ], + "title": "en-tt" + }, + { + "type": "string", + "enum": [ + "en-us" + ], + "title": "en-us" + }, + { + "type": "string", + "enum": [ + "en-za" + ], + "title": "en-za" + }, + { + "type": "string", + "enum": [ + "eo" + ], + "title": "eo" + }, + { + "type": "string", + "enum": [ + "es" + ], + "title": "es" + }, + { + "type": "string", + "enum": [ + "es-ar" + ], + "title": "es-ar" + }, + { + "type": "string", + "enum": [ + "es-bo" + ], + "title": "es-bo" + }, + { + "type": "string", + "enum": [ + "es-cl" + ], + "title": "es-cl" + }, + { + "type": "string", + "enum": [ + "es-co" + ], + "title": "es-co" + }, + { + "type": "string", + "enum": [ + "es-cr" + ], + "title": "es-cr" + }, + { + "type": "string", + "enum": [ + "es-do" + ], + "title": "es-do" + }, + { + "type": "string", + "enum": [ + "es-ec" + ], + "title": "es-ec" + }, + { + "type": "string", + "enum": [ + "es-gt" + ], + "title": "es-gt" + }, + { + "type": "string", + "enum": [ + "es-hn" + ], + "title": "es-hn" + }, + { + "type": "string", + "enum": [ + "es-mx" + ], + "title": "es-mx" + }, + { + "type": "string", + "enum": [ + "es-ni" + ], + "title": "es-ni" + }, + { + "type": "string", + "enum": [ + "es-pa" + ], + "title": "es-pa" + }, + { + "type": "string", + "enum": [ + "es-pe" + ], + "title": "es-pe" + }, + { + "type": "string", + "enum": [ + "es-pr" + ], + "title": "es-pr" + }, + { + "type": "string", + "enum": [ + "es-py" + ], + "title": "es-py" + }, + { + "type": "string", + "enum": [ + "es-sv" + ], + "title": "es-sv" + }, + { + "type": "string", + "enum": [ + "es-uy" + ], + "title": "es-uy" + }, + { + "type": "string", + "enum": [ + "es-ve" + ], + "title": "es-ve" + }, + { + "type": "string", + "enum": [ + "et" + ], + "title": "et" + }, + { + "type": "string", + "enum": [ + "eu" + ], + "title": "eu" + }, + { + "type": "string", + "enum": [ + "fa" + ], + "title": "fa" + }, + { + "type": "string", + "enum": [ + "fi" + ], + "title": "fi" + }, + { + "type": "string", + "enum": [ + "fo" + ], + "title": "fo" + }, + { + "type": "string", + "enum": [ + "fr" + ], + "title": "fr" + }, + { + "type": "string", + "enum": [ + "fr-be" + ], + "title": "fr-be" + }, + { + "type": "string", + "enum": [ + "fr-ca" + ], + "title": "fr-ca" + }, + { + "type": "string", + "enum": [ + "fr-ch" + ], + "title": "fr-ch" + }, + { + "type": "string", + "enum": [ + "fr-lu" + ], + "title": "fr-lu" + }, + { + "type": "string", + "enum": [ + "ga" + ], + "title": "ga" + }, + { + "type": "string", + "enum": [ + "gd" + ], + "title": "gd" + }, + { + "type": "string", + "enum": [ + "he" + ], + "title": "he" + }, + { + "type": "string", + "enum": [ + "hi" + ], + "title": "hi" + }, + { + "type": "string", + "enum": [ + "hr" + ], + "title": "hr" + }, + { + "type": "string", + "enum": [ + "hu" + ], + "title": "hu" + }, + { + "type": "string", + "enum": [ + "id" + ], + "title": "id" + }, + { + "type": "string", + "enum": [ + "is" + ], + "title": "is" + }, + { + "type": "string", + "enum": [ + "it" + ], + "title": "it" + }, + { + "type": "string", + "enum": [ + "it-ch" + ], + "title": "it-ch" + }, + { + "type": "string", + "enum": [ + "ja" + ], + "title": "ja" + }, + { + "type": "string", + "enum": [ + "ji" + ], + "title": "ji" + }, + { + "type": "string", + "enum": [ + "ko" + ], + "title": "ko" + }, + { + "type": "string", + "enum": [ + "ku" + ], + "title": "ku" + }, + { + "type": "string", + "enum": [ + "lt" + ], + "title": "lt" + }, + { + "type": "string", + "enum": [ + "lv" + ], + "title": "lv" + }, + { + "type": "string", + "enum": [ + "mk" + ], + "title": "mk" + }, + { + "type": "string", + "enum": [ + "ml" + ], + "title": "ml" + }, + { + "type": "string", + "enum": [ + "ms" + ], + "title": "ms" + }, + { + "type": "string", + "enum": [ + "mt" + ], + "title": "mt" + }, + { + "type": "string", + "enum": [ + "nb" + ], + "title": "nb" + }, + { + "type": "string", + "enum": [ + "ne" + ], + "title": "ne" + }, + { + "type": "string", + "enum": [ + "nl" + ], + "title": "nl" + }, + { + "type": "string", + "enum": [ + "nl-be" + ], + "title": "nl-be" + }, + { + "type": "string", + "enum": [ + "nn" + ], + "title": "nn" + }, + { + "type": "string", + "enum": [ + "no" + ], + "title": "no" + }, + { + "type": "string", + "enum": [ + "pa" + ], + "title": "pa" + }, + { + "type": "string", + "enum": [ + "pl" + ], + "title": "pl" + }, + { + "type": "string", + "enum": [ + "pt" + ], + "title": "pt" + }, + { + "type": "string", + "enum": [ + "pt-br" + ], + "title": "pt-br" + }, + { + "type": "string", + "enum": [ + "rm" + ], + "title": "rm" + }, + { + "type": "string", + "enum": [ + "ro" + ], + "title": "ro" + }, + { + "type": "string", + "enum": [ + "ro-md" + ], + "title": "ro-md" + }, + { + "type": "string", + "enum": [ + "ru" + ], + "title": "ru" + }, + { + "type": "string", + "enum": [ + "ru-md" + ], + "title": "ru-md" + }, + { + "type": "string", + "enum": [ + "sb" + ], + "title": "sb" + }, + { + "type": "string", + "enum": [ + "sk" + ], + "title": "sk" + }, + { + "type": "string", + "enum": [ + "sl" + ], + "title": "sl" + }, + { + "type": "string", + "enum": [ + "sq" + ], + "title": "sq" + }, + { + "type": "string", + "enum": [ + "sr" + ], + "title": "sr" + }, + { + "type": "string", + "enum": [ + "sv" + ], + "title": "sv" + }, + { + "type": "string", + "enum": [ + "sv-fi" + ], + "title": "sv-fi" + }, + { + "type": "string", + "enum": [ + "th" + ], + "title": "th" + }, + { + "type": "string", + "enum": [ + "tn" + ], + "title": "tn" + }, + { + "type": "string", + "enum": [ + "tr" + ], + "title": "tr" + }, + { + "type": "string", + "enum": [ + "ts" + ], + "title": "ts" + }, + { + "type": "string", + "enum": [ + "ua" + ], + "title": "ua" + }, + { + "type": "string", + "enum": [ + "ur" + ], + "title": "ur" + }, + { + "type": "string", + "enum": [ + "ve" + ], + "title": "ve" + }, + { + "type": "string", + "enum": [ + "vi" + ], + "title": "vi" + }, + { + "type": "string", + "enum": [ + "xh" + ], + "title": "xh" + }, + { + "type": "string", + "enum": [ + "zh-cn" + ], + "title": "zh-cn" + }, + { + "type": "string", + "enum": [ + "zh-hk" + ], + "title": "zh-hk" + }, + { + "type": "string", + "enum": [ + "zh-sg" + ], + "title": "zh-sg" + }, + { + "type": "string", + "enum": [ + "zh-tw" + ], + "title": "zh-tw" + }, + { + "type": "string", + "enum": [ + "zu" + ], + "title": "zu" + } + ] + }, + "subject": { + "description": "Subject of the email template. Can be up to 255 characters.", + "type": "string", + "example": "<SUBJECT>", "nullable": true }, - "username": { + "message": { + "description": "Plain or HTML body of the email template message. Can be up to 10MB of content.", "type": "string", - "description": "SMTP server username. Pass an empty string to clear a previously set value.", - "example": "<USERNAME>", + "example": "<MESSAGE>", "nullable": true }, - "password": { + "senderName": { + "description": "Name of the email sender.", "type": "string", - "description": "SMTP server password. Pass an empty string to clear a previously set value. This property is stored securely and cannot be read in future (write-only).", - "example": "password", - "format": "password", + "example": "<SENDER_NAME>", "nullable": true }, "senderEmail": { + "description": "Email of the sender. Pass an empty string to clear a previously set value.", "type": "string", - "description": "Email address shown in inbox as the sender of the email. Pass an empty string to clear a previously set value.", "example": "email@example.com", "format": "email", "nullable": true }, - "senderName": { - "type": "string", - "description": "Name shown in inbox as the sender of the email. Pass an empty string to clear a previously set value.", - "example": "<SENDER_NAME>", - "nullable": true - }, "replyToEmail": { + "description": "Reply to email. Pass an empty string to clear a previously set value.", "type": "string", - "description": "Email used when user replies to the email. Pass an empty string to clear a previously set value.", "example": "email@example.com", "format": "email", "nullable": true }, "replyToName": { + "description": "Reply to name.", "type": "string", - "description": "Name used when user replies to the email. Pass an empty string to clear a previously set value.", "example": "<REPLY_TO_NAME>", "nullable": true - }, - "secure": { - "type": "string", - "description": "Configures if communication with SMTP server is encrypted. Allowed values are: tls, ssl. Leave empty for no encryption.", - "example": "tls", - "enum": [ - "tls", - "ssl" - ], - "x-enum-name": "ProjectSMTPSecure", - "x-enum-keys": [ - "tls", - "ssl" - ], - "nullable": true - }, - "enabled": { - "type": "boolean", - "description": "Enable or disable custom SMTP. Custom SMTP is useful for branding purposes, but also allows use of custom email templates.", - "example": false, - "nullable": true } - } + }, + "required": [ + "templateId" + ] } } } } } }, - "\/project\/smtp\/tests": { - "post": { - "summary": "Create project SMTP test", - "operationId": "projectCreateSMTPTest", + "\/project\/templates\/email\/{templateId}": { + "get": { + "summary": "Get project email template", + "operationId": "projectGetEmailTemplate", "tags": [ "project" ], - "description": "Send a test email to verify SMTP configuration. ", + "description": "Get a custom email template for the specified locale and type. This endpoint returns the template content, subject, and other configuration details.", "responses": { - "204": { - "description": "No content" + "200": { + "description": "EmailTemplate", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/emailTemplate" + } + } + } } }, "deprecated": false, "x-appwrite": { - "group": "smtp", + "group": "templates", "cookies": false, "type": "", - "demo": "project\/create-smtp-test.md", + "demo": "project\/get-email-template.md", "rate-limit": 0, "rate-time": 3600, "rate-key": "url:{url},ip:{ip}", - "scope": "project.write", + "scope": "templates.read", "platforms": [ "console", "server" @@ -50582,850 +59647,997 @@ "Key": [] } ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "emails": { - "type": "array", - "description": "Array of emails to send test email to. Maximum of 10 emails are allowed.", - "items": { - "type": "string" - } - } + "parameters": [ + { + "name": "templateId", + "description": "Custom email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", + "required": true, + "schema": { + "type": "string", + "example": "verification", + "title": "ProjectEmailTemplateId", + "oneOf": [ + { + "type": "string", + "enum": [ + "verification" + ], + "title": "verification" + }, + { + "type": "string", + "enum": [ + "magicSession" + ], + "title": "magicSession" + }, + { + "type": "string", + "enum": [ + "recovery" + ], + "title": "recovery" + }, + { + "type": "string", + "enum": [ + "invitation" + ], + "title": "invitation" + }, + { + "type": "string", + "enum": [ + "mfaChallenge" + ], + "title": "mfaChallenge" + }, + { + "type": "string", + "enum": [ + "sessionAlert" + ], + "title": "sessionAlert" + }, + { + "type": "string", + "enum": [ + "otpSession" + ], + "title": "otpSession" + } + ] + }, + "in": "path" + }, + { + "name": "locale", + "description": "Custom email template locale. If left empty, the fallback locale (en) will be used.", + "required": false, + "schema": { + "type": "string", + "example": "af", + "title": "ProjectEmailTemplateLocale", + "oneOf": [ + { + "type": "string", + "enum": [ + "af" + ], + "title": "af" + }, + { + "type": "string", + "enum": [ + "ar-ae" + ], + "title": "ar-ae" + }, + { + "type": "string", + "enum": [ + "ar-bh" + ], + "title": "ar-bh" + }, + { + "type": "string", + "enum": [ + "ar-dz" + ], + "title": "ar-dz" + }, + { + "type": "string", + "enum": [ + "ar-eg" + ], + "title": "ar-eg" + }, + { + "type": "string", + "enum": [ + "ar-iq" + ], + "title": "ar-iq" + }, + { + "type": "string", + "enum": [ + "ar-jo" + ], + "title": "ar-jo" + }, + { + "type": "string", + "enum": [ + "ar-kw" + ], + "title": "ar-kw" + }, + { + "type": "string", + "enum": [ + "ar-lb" + ], + "title": "ar-lb" + }, + { + "type": "string", + "enum": [ + "ar-ly" + ], + "title": "ar-ly" + }, + { + "type": "string", + "enum": [ + "ar-ma" + ], + "title": "ar-ma" + }, + { + "type": "string", + "enum": [ + "ar-om" + ], + "title": "ar-om" + }, + { + "type": "string", + "enum": [ + "ar-qa" + ], + "title": "ar-qa" + }, + { + "type": "string", + "enum": [ + "ar-sa" + ], + "title": "ar-sa" + }, + { + "type": "string", + "enum": [ + "ar-sy" + ], + "title": "ar-sy" + }, + { + "type": "string", + "enum": [ + "ar-tn" + ], + "title": "ar-tn" + }, + { + "type": "string", + "enum": [ + "ar-ye" + ], + "title": "ar-ye" + }, + { + "type": "string", + "enum": [ + "as" + ], + "title": "as" + }, + { + "type": "string", + "enum": [ + "az" + ], + "title": "az" + }, + { + "type": "string", + "enum": [ + "be" + ], + "title": "be" + }, + { + "type": "string", + "enum": [ + "bg" + ], + "title": "bg" + }, + { + "type": "string", + "enum": [ + "bh" + ], + "title": "bh" + }, + { + "type": "string", + "enum": [ + "bn" + ], + "title": "bn" + }, + { + "type": "string", + "enum": [ + "bs" + ], + "title": "bs" + }, + { + "type": "string", + "enum": [ + "ca" + ], + "title": "ca" + }, + { + "type": "string", + "enum": [ + "cs" + ], + "title": "cs" + }, + { + "type": "string", + "enum": [ + "cy" + ], + "title": "cy" + }, + { + "type": "string", + "enum": [ + "da" + ], + "title": "da" + }, + { + "type": "string", + "enum": [ + "de" + ], + "title": "de" + }, + { + "type": "string", + "enum": [ + "de-at" + ], + "title": "de-at" + }, + { + "type": "string", + "enum": [ + "de-ch" + ], + "title": "de-ch" + }, + { + "type": "string", + "enum": [ + "de-li" + ], + "title": "de-li" + }, + { + "type": "string", + "enum": [ + "de-lu" + ], + "title": "de-lu" + }, + { + "type": "string", + "enum": [ + "el" + ], + "title": "el" + }, + { + "type": "string", + "enum": [ + "en" + ], + "title": "en" + }, + { + "type": "string", + "enum": [ + "en-au" + ], + "title": "en-au" + }, + { + "type": "string", + "enum": [ + "en-bz" + ], + "title": "en-bz" + }, + { + "type": "string", + "enum": [ + "en-ca" + ], + "title": "en-ca" + }, + { + "type": "string", + "enum": [ + "en-gb" + ], + "title": "en-gb" + }, + { + "type": "string", + "enum": [ + "en-ie" + ], + "title": "en-ie" + }, + { + "type": "string", + "enum": [ + "en-jm" + ], + "title": "en-jm" + }, + { + "type": "string", + "enum": [ + "en-nz" + ], + "title": "en-nz" + }, + { + "type": "string", + "enum": [ + "en-tt" + ], + "title": "en-tt" + }, + { + "type": "string", + "enum": [ + "en-us" + ], + "title": "en-us" + }, + { + "type": "string", + "enum": [ + "en-za" + ], + "title": "en-za" + }, + { + "type": "string", + "enum": [ + "eo" + ], + "title": "eo" + }, + { + "type": "string", + "enum": [ + "es" + ], + "title": "es" + }, + { + "type": "string", + "enum": [ + "es-ar" + ], + "title": "es-ar" + }, + { + "type": "string", + "enum": [ + "es-bo" + ], + "title": "es-bo" + }, + { + "type": "string", + "enum": [ + "es-cl" + ], + "title": "es-cl" + }, + { + "type": "string", + "enum": [ + "es-co" + ], + "title": "es-co" + }, + { + "type": "string", + "enum": [ + "es-cr" + ], + "title": "es-cr" + }, + { + "type": "string", + "enum": [ + "es-do" + ], + "title": "es-do" + }, + { + "type": "string", + "enum": [ + "es-ec" + ], + "title": "es-ec" + }, + { + "type": "string", + "enum": [ + "es-gt" + ], + "title": "es-gt" + }, + { + "type": "string", + "enum": [ + "es-hn" + ], + "title": "es-hn" + }, + { + "type": "string", + "enum": [ + "es-mx" + ], + "title": "es-mx" + }, + { + "type": "string", + "enum": [ + "es-ni" + ], + "title": "es-ni" + }, + { + "type": "string", + "enum": [ + "es-pa" + ], + "title": "es-pa" + }, + { + "type": "string", + "enum": [ + "es-pe" + ], + "title": "es-pe" + }, + { + "type": "string", + "enum": [ + "es-pr" + ], + "title": "es-pr" + }, + { + "type": "string", + "enum": [ + "es-py" + ], + "title": "es-py" + }, + { + "type": "string", + "enum": [ + "es-sv" + ], + "title": "es-sv" + }, + { + "type": "string", + "enum": [ + "es-uy" + ], + "title": "es-uy" + }, + { + "type": "string", + "enum": [ + "es-ve" + ], + "title": "es-ve" + }, + { + "type": "string", + "enum": [ + "et" + ], + "title": "et" + }, + { + "type": "string", + "enum": [ + "eu" + ], + "title": "eu" + }, + { + "type": "string", + "enum": [ + "fa" + ], + "title": "fa" + }, + { + "type": "string", + "enum": [ + "fi" + ], + "title": "fi" + }, + { + "type": "string", + "enum": [ + "fo" + ], + "title": "fo" + }, + { + "type": "string", + "enum": [ + "fr" + ], + "title": "fr" + }, + { + "type": "string", + "enum": [ + "fr-be" + ], + "title": "fr-be" + }, + { + "type": "string", + "enum": [ + "fr-ca" + ], + "title": "fr-ca" + }, + { + "type": "string", + "enum": [ + "fr-ch" + ], + "title": "fr-ch" + }, + { + "type": "string", + "enum": [ + "fr-lu" + ], + "title": "fr-lu" + }, + { + "type": "string", + "enum": [ + "ga" + ], + "title": "ga" + }, + { + "type": "string", + "enum": [ + "gd" + ], + "title": "gd" + }, + { + "type": "string", + "enum": [ + "he" + ], + "title": "he" + }, + { + "type": "string", + "enum": [ + "hi" + ], + "title": "hi" + }, + { + "type": "string", + "enum": [ + "hr" + ], + "title": "hr" + }, + { + "type": "string", + "enum": [ + "hu" + ], + "title": "hu" + }, + { + "type": "string", + "enum": [ + "id" + ], + "title": "id" + }, + { + "type": "string", + "enum": [ + "is" + ], + "title": "is" + }, + { + "type": "string", + "enum": [ + "it" + ], + "title": "it" + }, + { + "type": "string", + "enum": [ + "it-ch" + ], + "title": "it-ch" + }, + { + "type": "string", + "enum": [ + "ja" + ], + "title": "ja" + }, + { + "type": "string", + "enum": [ + "ji" + ], + "title": "ji" + }, + { + "type": "string", + "enum": [ + "ko" + ], + "title": "ko" + }, + { + "type": "string", + "enum": [ + "ku" + ], + "title": "ku" + }, + { + "type": "string", + "enum": [ + "lt" + ], + "title": "lt" + }, + { + "type": "string", + "enum": [ + "lv" + ], + "title": "lv" + }, + { + "type": "string", + "enum": [ + "mk" + ], + "title": "mk" + }, + { + "type": "string", + "enum": [ + "ml" + ], + "title": "ml" + }, + { + "type": "string", + "enum": [ + "ms" + ], + "title": "ms" + }, + { + "type": "string", + "enum": [ + "mt" + ], + "title": "mt" + }, + { + "type": "string", + "enum": [ + "nb" + ], + "title": "nb" + }, + { + "type": "string", + "enum": [ + "ne" + ], + "title": "ne" + }, + { + "type": "string", + "enum": [ + "nl" + ], + "title": "nl" + }, + { + "type": "string", + "enum": [ + "nl-be" + ], + "title": "nl-be" + }, + { + "type": "string", + "enum": [ + "nn" + ], + "title": "nn" + }, + { + "type": "string", + "enum": [ + "no" + ], + "title": "no" + }, + { + "type": "string", + "enum": [ + "pa" + ], + "title": "pa" + }, + { + "type": "string", + "enum": [ + "pl" + ], + "title": "pl" + }, + { + "type": "string", + "enum": [ + "pt" + ], + "title": "pt" + }, + { + "type": "string", + "enum": [ + "pt-br" + ], + "title": "pt-br" + }, + { + "type": "string", + "enum": [ + "rm" + ], + "title": "rm" + }, + { + "type": "string", + "enum": [ + "ro" + ], + "title": "ro" + }, + { + "type": "string", + "enum": [ + "ro-md" + ], + "title": "ro-md" + }, + { + "type": "string", + "enum": [ + "ru" + ], + "title": "ru" + }, + { + "type": "string", + "enum": [ + "ru-md" + ], + "title": "ru-md" + }, + { + "type": "string", + "enum": [ + "sb" + ], + "title": "sb" + }, + { + "type": "string", + "enum": [ + "sk" + ], + "title": "sk" }, - "required": [ - "emails" - ] - } - } - } - } - } - }, - "\/project\/templates\/email": { - "get": { - "summary": "List project email templates", - "operationId": "projectListEmailTemplates", - "tags": [ - "project" - ], - "description": "Get a list of all custom email templates configured for the project. This endpoint returns an array of all configured email templates and their locales.", - "responses": { - "200": { - "description": "Email Templates List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/emailTemplateList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "templates", - "cookies": false, - "type": "", - "demo": "project\/list-email-templates.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "templates.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Only supported methods are limit and offset", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - }, - "default": [] - }, - "in": "query" - }, - { - "name": "total", - "description": "When set to false, the total count returned will be 0 and will not be calculated.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": true - }, - "in": "query" - } - ] - }, - "patch": { - "summary": "Update project email template", - "operationId": "projectUpdateEmailTemplate", - "tags": [ - "project" - ], - "description": "Update a custom email template for the specified locale and type. Use this endpoint to modify the content of your email templates.", - "responses": { - "200": { - "description": "EmailTemplate", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/emailTemplate" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "templates", - "cookies": false, - "type": "", - "demo": "project\/update-email-template.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "templates.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "templateId": { - "type": "string", - "description": "Custom email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", - "example": "verification", - "enum": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ], - "x-enum-name": "ProjectEmailTemplateId", - "x-enum-keys": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ] - }, - "locale": { - "type": "string", - "description": "Custom email template locale. If left empty, the fallback locale (en) will be used.", - "example": "af", - "enum": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" - ], - "x-enum-name": "ProjectEmailTemplateLocale", - "x-enum-keys": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" - ] - }, - "subject": { - "type": "string", - "description": "Subject of the email template. Can be up to 255 characters.", - "example": "<SUBJECT>", - "nullable": true - }, - "message": { - "type": "string", - "description": "Plain or HTML body of the email template message. Can be up to 10MB of content.", - "example": "<MESSAGE>", - "nullable": true - }, - "senderName": { - "type": "string", - "description": "Name of the email sender.", - "example": "<SENDER_NAME>", - "nullable": true - }, - "senderEmail": { - "type": "string", - "description": "Email of the sender. Pass an empty string to clear a previously set value.", - "example": "email@example.com", - "format": "email", - "nullable": true - }, - "replyToEmail": { - "type": "string", - "description": "Reply to email. Pass an empty string to clear a previously set value.", - "example": "email@example.com", - "format": "email", - "nullable": true - }, - "replyToName": { - "type": "string", - "description": "Reply to name.", - "example": "<REPLY_TO_NAME>", - "nullable": true - } + { + "type": "string", + "enum": [ + "sl" + ], + "title": "sl" }, - "required": [ - "templateId" - ] - } - } - } - } - } - }, - "\/project\/templates\/email\/{templateId}": { - "get": { - "summary": "Get project email template", - "operationId": "projectGetEmailTemplate", - "tags": [ - "project" - ], - "description": "Get a custom email template for the specified locale and type. This endpoint returns the template content, subject, and other configuration details.", - "responses": { - "200": { - "description": "EmailTemplate", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/emailTemplate" + { + "type": "string", + "enum": [ + "sq" + ], + "title": "sq" + }, + { + "type": "string", + "enum": [ + "sr" + ], + "title": "sr" + }, + { + "type": "string", + "enum": [ + "sv" + ], + "title": "sv" + }, + { + "type": "string", + "enum": [ + "sv-fi" + ], + "title": "sv-fi" + }, + { + "type": "string", + "enum": [ + "th" + ], + "title": "th" + }, + { + "type": "string", + "enum": [ + "tn" + ], + "title": "tn" + }, + { + "type": "string", + "enum": [ + "tr" + ], + "title": "tr" + }, + { + "type": "string", + "enum": [ + "ts" + ], + "title": "ts" + }, + { + "type": "string", + "enum": [ + "ua" + ], + "title": "ua" + }, + { + "type": "string", + "enum": [ + "ur" + ], + "title": "ur" + }, + { + "type": "string", + "enum": [ + "ve" + ], + "title": "ve" + }, + { + "type": "string", + "enum": [ + "vi" + ], + "title": "vi" + }, + { + "type": "string", + "enum": [ + "xh" + ], + "title": "xh" + }, + { + "type": "string", + "enum": [ + "zh-cn" + ], + "title": "zh-cn" + }, + { + "type": "string", + "enum": [ + "zh-hk" + ], + "title": "zh-hk" + }, + { + "type": "string", + "enum": [ + "zh-sg" + ], + "title": "zh-sg" + }, + { + "type": "string", + "enum": [ + "zh-tw" + ], + "title": "zh-tw" + }, + { + "type": "string", + "enum": [ + "zu" + ], + "title": "zu" } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "templates", - "cookies": false, - "type": "", - "demo": "project\/get-email-template.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "templates.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "templateId", - "description": "Custom email template type. Can be one of: verification, magicSession, recovery, invitation, mfaChallenge, sessionAlert, otpSession", - "required": true, - "schema": { - "type": "string", - "example": "verification", - "enum": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ], - "x-enum-name": "ProjectEmailTemplateId", - "x-enum-keys": [ - "verification", - "magicSession", - "recovery", - "invitation", - "mfaChallenge", - "sessionAlert", - "otpSession" - ] - }, - "in": "path" - }, - { - "name": "locale", - "description": "Custom email template locale. If left empty, the fallback locale (en) will be used.", - "required": false, - "schema": { - "type": "string", - "example": "af", - "enum": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" ], - "x-enum-name": "ProjectEmailTemplateLocale", - "x-enum-keys": [ - "af", - "ar-ae", - "ar-bh", - "ar-dz", - "ar-eg", - "ar-iq", - "ar-jo", - "ar-kw", - "ar-lb", - "ar-ly", - "ar-ma", - "ar-om", - "ar-qa", - "ar-sa", - "ar-sy", - "ar-tn", - "ar-ye", - "as", - "az", - "be", - "bg", - "bh", - "bn", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "de-at", - "de-ch", - "de-li", - "de-lu", - "el", - "en", - "en-au", - "en-bz", - "en-ca", - "en-gb", - "en-ie", - "en-jm", - "en-nz", - "en-tt", - "en-us", - "en-za", - "eo", - "es", - "es-ar", - "es-bo", - "es-cl", - "es-co", - "es-cr", - "es-do", - "es-ec", - "es-gt", - "es-hn", - "es-mx", - "es-ni", - "es-pa", - "es-pe", - "es-pr", - "es-py", - "es-sv", - "es-uy", - "es-ve", - "et", - "eu", - "fa", - "fi", - "fo", - "fr", - "fr-be", - "fr-ca", - "fr-ch", - "fr-lu", - "ga", - "gd", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "it-ch", - "ja", - "ji", - "ko", - "ku", - "lt", - "lv", - "mk", - "ml", - "ms", - "mt", - "nb", - "ne", - "nl", - "nl-be", - "nn", - "no", - "pa", - "pl", - "pt", - "pt-br", - "rm", - "ro", - "ro-md", - "ru", - "ru-md", - "sb", - "sk", - "sl", - "sq", - "sr", - "sv", - "sv-fi", - "th", - "tn", - "tr", - "ts", - "ua", - "ur", - "ve", - "vi", - "xh", - "zh-cn", - "zh-hk", - "zh-sg", - "zh-tw", - "zu" - ] + "default": "" }, "in": "query" } @@ -51559,26 +60771,26 @@ "type": "object", "properties": { "variableId": { - "type": "string", "description": "Variable unique 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.", + "type": "string", "example": "<VARIABLE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>" }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>" }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only projects can read them during build and runtime.", + "type": "boolean", "default": true, "example": false } @@ -51719,20 +60931,20 @@ "type": "object", "properties": { "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>", "nullable": true }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>", "nullable": true }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only projects can read them during build and runtime.", + "type": "boolean", "example": false, "nullable": true } @@ -51849,173 +61061,186 @@ "type": "object", "properties": { "domain": { + "description": "Domain name.", + "type": "string" + }, + "type": { + "description": "Type of reference passed. Allowed values are: tag, path, all", + "type": "string", + "example": "tag", + "title": "InvalidationType", + "oneOf": [ + { + "type": "string", + "enum": [ + "tag" + ], + "title": "tag" + }, + { + "type": "string", + "enum": [ + "path" + ], + "title": "path" + }, + { + "type": "string", + "enum": [ + "all" + ], + "title": "all" + } + ] + }, + "reference": { + "description": "Reference to invalidate. Depending on type this can be: cache tag name (up to 128 characters), URL path (up to 2048 characters). Not required when type is all.", "type": "string", - "description": "Domain name." - }, - "type": { - "type": "string", - "description": "Type of reference passed. Allowed values are: tag, path, all", - "example": "tag", - "enum": [ - "tag", - "path", - "all" - ], - "x-enum-name": "InvalidationType", - "x-enum-keys": [ - "tag", - "path", - "all" - ] - }, - "reference": { - "type": "string", - "description": "Reference to invalidate. Depending on type this can be: cache tag name (up to 128 characters), URL path (up to 2048 characters). Not required when type is all.", - "default": "", - "example": "<REFERENCE>" - } - }, - "required": [ - "domain", - "type" - ] - } - } - } - } - } - }, - "\/proxy\/rules": { - "get": { - "summary": "List rules", - "operationId": "proxyListRules", - "tags": [ - "proxy" - ], - "description": "Get a list of all the proxy rules. You can use the query params to filter your results.", - "responses": { - "200": { - "description": "Rule List", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/proxyRuleList" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "rules", - "cookies": false, - "type": "", - "demo": "proxy\/list-rules.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "rules.read", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "queries", - "description": "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 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: domain, type, trigger, deploymentResourceType, deploymentResourceId, deploymentId, deploymentVcsProviderBranch", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - }, - "default": [] - }, - "in": "query" - }, - { - "name": "total", - "description": "When set to false, the total count returned will be 0 and will not be calculated.", - "required": false, - "schema": { - "type": "boolean", - "example": false, - "default": true - }, - "in": "query" - } - ] - } - }, - "\/proxy\/rules\/api": { - "post": { - "summary": "Create API rule", - "operationId": "proxyCreateAPIRule", - "tags": [ - "proxy" - ], - "description": "Create a new proxy rule for serving Appwrite's API on custom domain.\n\nRule ID is automatically generated as MD5 hash of a rule domain for performance purposes.", - "responses": { - "201": { - "description": "Rule", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/proxyRule" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "rules", - "cookies": false, - "type": "", - "demo": "proxy\/create-api-rule.md", - "rate-limit": 10, - "rate-time": 60, - "rate-key": "userId:{userId}, url:{url}", - "scope": "rules.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "domain": { - "type": "string", - "description": "Domain name." + "default": "", + "example": "<REFERENCE>" + } + }, + "required": [ + "domain", + "type" + ] + } + } + } + } + } + }, + "\/proxy\/rules": { + "get": { + "summary": "List rules", + "operationId": "proxyListRules", + "tags": [ + "proxy" + ], + "description": "Get a list of all the proxy rules. You can use the query params to filter your results.", + "responses": { + "200": { + "description": "Rule List", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/proxyRuleList" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "rules", + "cookies": false, + "type": "", + "demo": "proxy\/list-rules.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "rules.read", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "queries", + "description": "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 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: domain, type, trigger, deploymentResourceType, deploymentResourceId, deploymentId, deploymentVcsProviderBranch", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "default": [] + }, + "in": "query" + }, + { + "name": "total", + "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "required": false, + "schema": { + "type": "boolean", + "example": false, + "default": true + }, + "in": "query" + } + ] + } + }, + "\/proxy\/rules\/api": { + "post": { + "summary": "Create API rule", + "operationId": "proxyCreateAPIRule", + "tags": [ + "proxy" + ], + "description": "Create a new proxy rule for serving Appwrite's API on custom domain.\n\nRule ID is automatically generated as MD5 hash of a rule domain for performance purposes.", + "responses": { + "201": { + "description": "Rule", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/proxyRule" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "rules", + "cookies": false, + "type": "", + "demo": "proxy\/create-api-rule.md", + "rate-limit": 10, + "rate-time": 60, + "rate-key": "userId:{userId}, url:{url}", + "scope": "rules.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { + "domain": { + "description": "Domain name.", + "type": "string" } }, "required": [ @@ -52081,17 +61306,17 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name." + "description": "Domain name.", + "type": "string" }, "functionId": { - "type": "string", "description": "ID of function to be executed.", + "type": "string", "example": "<FUNCTION_ID>" }, "branch": { - "type": "string", "description": "Name of VCS branch to deploy changes automatically", + "type": "string", "default": "", "example": "<BRANCH>" } @@ -52160,50 +61385,76 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name." + "description": "Domain name.", + "type": "string" }, "url": { - "type": "string", "description": "Target URL of redirection", + "type": "string", "example": "https:\/\/example.com", "format": "url" }, "statusCode": { - "type": "string", "description": "Status code of redirection", + "type": "string", "example": "301", - "enum": [ - "301", - "302", - "307", - "308" - ], - "x-enum-name": "StatusCode", - "x-enum-keys": [ - "MovedPermanently", - "Found", - "TemporaryRedirect", - "PermanentRedirect" + "title": "StatusCode", + "oneOf": [ + { + "type": "string", + "enum": [ + "301" + ], + "title": "MovedPermanently" + }, + { + "type": "string", + "enum": [ + "302" + ], + "title": "Found" + }, + { + "type": "string", + "enum": [ + "307" + ], + "title": "TemporaryRedirect" + }, + { + "type": "string", + "enum": [ + "308" + ], + "title": "PermanentRedirect" + } ] }, "resourceId": { - "type": "string", "description": "ID of parent resource.", + "type": "string", "example": "<RESOURCE_ID>" }, "resourceType": { - "type": "string", "description": "Type of parent resource.", + "type": "string", "example": "site", - "enum": [ - "site", - "function" - ], - "x-enum-name": "ProxyResourceType", - "x-enum-keys": [ - "Site", - "Function" + "title": "ProxyResourceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "site" + ], + "title": "Site" + }, + { + "type": "string", + "enum": [ + "function" + ], + "title": "Function" + } ] } }, @@ -52274,17 +61525,17 @@ "type": "object", "properties": { "domain": { - "type": "string", - "description": "Domain name." + "description": "Domain name.", + "type": "string" }, "siteId": { - "type": "string", "description": "ID of site to be executed.", + "type": "string", "example": "<SITE_ID>" }, "branch": { - "type": "string", "description": "Name of VCS branch to deploy changes automatically", + "type": "string", "default": "", "example": "<BRANCH>" } @@ -52960,598 +62211,1682 @@ "type": "object", "properties": { "siteId": { - "type": "string", "description": "Site 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.", + "type": "string", "example": "<SITE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Site name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "framework": { - "type": "string", "description": "Sites framework.", + "type": "string", "example": "analog", - "enum": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" - ], - "x-enum-name": "Framework", - "x-enum-keys": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" + "title": "Framework", + "oneOf": [ + { + "type": "string", + "enum": [ + "analog" + ], + "title": "analog" + }, + { + "type": "string", + "enum": [ + "angular" + ], + "title": "angular" + }, + { + "type": "string", + "enum": [ + "nextjs" + ], + "title": "nextjs" + }, + { + "type": "string", + "enum": [ + "react" + ], + "title": "react" + }, + { + "type": "string", + "enum": [ + "nuxt" + ], + "title": "nuxt" + }, + { + "type": "string", + "enum": [ + "vue" + ], + "title": "vue" + }, + { + "type": "string", + "enum": [ + "sveltekit" + ], + "title": "sveltekit" + }, + { + "type": "string", + "enum": [ + "astro" + ], + "title": "astro" + }, + { + "type": "string", + "enum": [ + "tanstack-start" + ], + "title": "tanstack-start" + }, + { + "type": "string", + "enum": [ + "remix" + ], + "title": "remix" + }, + { + "type": "string", + "enum": [ + "lynx" + ], + "title": "lynx" + }, + { + "type": "string", + "enum": [ + "flutter" + ], + "title": "flutter" + }, + { + "type": "string", + "enum": [ + "react-native" + ], + "title": "react-native" + }, + { + "type": "string", + "enum": [ + "vite" + ], + "title": "vite" + }, + { + "type": "string", + "enum": [ + "other" + ], + "title": "other" + } ] }, "enabled": { - "type": "boolean", "description": "Is site enabled? When set to 'disabled', users cannot access the site but Server SDKs with and API key can still access the site. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "logging": { - "type": "boolean", "description": "When disabled, request logs will exclude logs and errors, and site responses will be slightly faster.", + "type": "boolean", "default": true, "example": false }, "timeout": { - "type": "integer", "description": "Maximum request time in seconds.", + "type": "integer", "default": 30, "example": 1, "format": "int32" }, "installCommand": { - "type": "string", "description": "Install Command.", + "type": "string", "default": "", "example": "<INSTALL_COMMAND>" }, "buildCommand": { - "type": "string", "description": "Build Command.", + "type": "string", "default": "", "example": "<BUILD_COMMAND>" }, "startCommand": { - "type": "string", "description": "Custom start command. Leave empty to use default.", + "type": "string", "default": "", "example": "<START_COMMAND>" }, "outputDirectory": { - "type": "string", "description": "Output Directory for site.", + "type": "string", "default": "", "example": "<OUTPUT_DIRECTORY>" }, "buildRuntime": { - "type": "string", "description": "Runtime to use during build step.", + "type": "string", "example": "node-14.5", - "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ], - "x-enum-name": "BuildRuntime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" + "title": "BuildRuntime", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { + "type": "string", + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" + }, + { + "type": "string", + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" + }, + { + "type": "string", + "enum": [ + "dart-3.12" + ], + "title": "dart-3.12" + }, + { + "type": "string", + "enum": [ + "dotnet-6.0" + ], + "title": "dotnet-6.0" + }, + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" + }, + { + "type": "string", + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" + }, + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" + }, + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" + }, + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" + }, + { + "type": "string", + "enum": [ + "java-17.0" + ], + "title": "java-17.0" + }, + { + "type": "string", + "enum": [ + "java-18.0" + ], + "title": "java-18.0" + }, + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" + }, + { + "type": "string", + "enum": [ + "java-22" + ], + "title": "java-22" + }, + { + "type": "string", + "enum": [ + "java-25" + ], + "title": "java-25" + }, + { + "type": "string", + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" + }, + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" + }, + { + "type": "string", + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" + }, + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" + }, + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" + }, + { + "type": "string", + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" + }, + { + "type": "string", + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" + }, + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" + } ] }, "adapter": { - "type": "string", "description": "Framework adapter defining rendering strategy. Allowed values are: static, ssr", + "type": "string", + "default": "", "example": "static", - "enum": [ - "static", - "ssr" - ], - "x-enum-name": "Adapter", - "x-enum-keys": [ - "static", - "ssr" + "title": "Adapter", + "oneOf": [ + { + "type": "string", + "enum": [ + "static" + ], + "title": "static" + }, + { + "type": "string", + "enum": [ + "ssr" + ], + "title": "ssr" + } ] }, "installationId": { - "type": "string", "description": "Appwrite Installation ID for VCS (Version Control System) deployment.", + "type": "string", "default": "", "example": "<INSTALLATION_ID>" }, "fallbackFile": { - "type": "string", "description": "Fallback file for single page application sites.", + "type": "string", "default": "", "example": "<FALLBACK_FILE>" }, "providerRepositoryId": { - "type": "string", "description": "Repository ID of the repo linked to the site.", + "type": "string", "default": "", "example": "<PROVIDER_REPOSITORY_ID>" }, "providerBranch": { - "type": "string", "description": "Production branch for the repo linked to the site.", + "type": "string", "default": "", "example": "<PROVIDER_BRANCH>" }, "providerSilentMode": { - "type": "boolean", "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the site? In silent mode, comments will not be made on commits and pull requests.", + "type": "boolean", "default": false, "example": false }, "providerRootDirectory": { - "type": "string", "description": "Path to site code in the linked repo.", + "type": "string", "default": "", "example": "<PROVIDER_ROOT_DIRECTORY>" }, "providerBranches": { - "type": "array", "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", + "type": "array", "default": [], "items": { "type": "string" } }, "providerPaths": { - "type": "array", "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", + "type": "array", "default": [], "items": { "type": "string" } }, "buildSpecification": { - "type": "string", "description": "Build specification for the site deployments.", + "type": "string", "default": {} }, "runtimeSpecification": { - "type": "string", "description": "Runtime specification for the SSR executions.", + "type": "string", "default": {} }, "deploymentRetention": { - "type": "integer", "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "scopes": { - "type": "array", "description": "List of scopes allowed for API key auto-generated for every site build and SSR execution. Maximum of 200 scopes are allowed.", + "type": "array", "default": [], "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] } } @@ -53804,589 +64139,1674 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Site name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "framework": { - "type": "string", "description": "Sites framework.", + "type": "string", "example": "analog", - "enum": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" - ], - "x-enum-name": "Framework", - "x-enum-keys": [ - "analog", - "angular", - "nextjs", - "react", - "nuxt", - "vue", - "sveltekit", - "astro", - "tanstack-start", - "remix", - "lynx", - "flutter", - "react-native", - "vite", - "other" + "title": "Framework", + "oneOf": [ + { + "type": "string", + "enum": [ + "analog" + ], + "title": "analog" + }, + { + "type": "string", + "enum": [ + "angular" + ], + "title": "angular" + }, + { + "type": "string", + "enum": [ + "nextjs" + ], + "title": "nextjs" + }, + { + "type": "string", + "enum": [ + "react" + ], + "title": "react" + }, + { + "type": "string", + "enum": [ + "nuxt" + ], + "title": "nuxt" + }, + { + "type": "string", + "enum": [ + "vue" + ], + "title": "vue" + }, + { + "type": "string", + "enum": [ + "sveltekit" + ], + "title": "sveltekit" + }, + { + "type": "string", + "enum": [ + "astro" + ], + "title": "astro" + }, + { + "type": "string", + "enum": [ + "tanstack-start" + ], + "title": "tanstack-start" + }, + { + "type": "string", + "enum": [ + "remix" + ], + "title": "remix" + }, + { + "type": "string", + "enum": [ + "lynx" + ], + "title": "lynx" + }, + { + "type": "string", + "enum": [ + "flutter" + ], + "title": "flutter" + }, + { + "type": "string", + "enum": [ + "react-native" + ], + "title": "react-native" + }, + { + "type": "string", + "enum": [ + "vite" + ], + "title": "vite" + }, + { + "type": "string", + "enum": [ + "other" + ], + "title": "other" + } ] }, "enabled": { - "type": "boolean", "description": "Is site enabled? When set to 'disabled', users cannot access the site but Server SDKs with and API key can still access the site. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "logging": { - "type": "boolean", "description": "When disabled, request logs will exclude logs and errors, and site responses will be slightly faster.", + "type": "boolean", "default": true, "example": false }, "timeout": { - "type": "integer", "description": "Maximum request time in seconds.", + "type": "integer", "default": 30, "example": 1, "format": "int32" }, "installCommand": { - "type": "string", "description": "Install Command.", + "type": "string", "default": "", "example": "<INSTALL_COMMAND>" }, "buildCommand": { - "type": "string", "description": "Build Command.", + "type": "string", "default": "", "example": "<BUILD_COMMAND>" }, "startCommand": { - "type": "string", "description": "Custom start command. Leave empty to use default.", + "type": "string", "default": "", "example": "<START_COMMAND>" }, "outputDirectory": { - "type": "string", "description": "Output Directory for site.", + "type": "string", "default": "", "example": "<OUTPUT_DIRECTORY>" }, "buildRuntime": { - "type": "string", "description": "Runtime to use during build step.", + "type": "string", + "default": "", "example": "node-14.5", - "enum": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" - ], - "x-enum-name": "BuildRuntime", - "x-enum-keys": [ - "node-14.5", - "node-16.0", - "node-18.0", - "node-19.0", - "node-20.0", - "node-21.0", - "node-22", - "node-23", - "node-24", - "node-25", - "node-26", - "php-8.0", - "php-8.1", - "php-8.2", - "php-8.3", - "php-8.4", - "ruby-3.0", - "ruby-3.1", - "ruby-3.2", - "ruby-3.3", - "ruby-3.4", - "ruby-4.0", - "python-3.8", - "python-3.9", - "python-3.10", - "python-3.11", - "python-3.12", - "python-3.13", - "python-3.14", - "python-ml-3.11", - "python-ml-3.12", - "python-ml-3.13", - "deno-1.40", - "deno-1.46", - "deno-2.0", - "deno-2.5", - "deno-2.6", - "dart-2.15", - "dart-2.16", - "dart-2.17", - "dart-2.18", - "dart-2.19", - "dart-3.0", - "dart-3.1", - "dart-3.3", - "dart-3.5", - "dart-3.8", - "dart-3.9", - "dart-3.10", - "dart-3.11", - "dart-3.12", - "dotnet-6.0", - "dotnet-7.0", - "dotnet-8.0", - "dotnet-10", - "java-8.0", - "java-11.0", - "java-17.0", - "java-18.0", - "java-21.0", - "java-22", - "java-25", - "swift-5.5", - "swift-5.8", - "swift-5.9", - "swift-5.10", - "swift-6.2", - "kotlin-1.6", - "kotlin-1.8", - "kotlin-1.9", - "kotlin-2.0", - "kotlin-2.3", - "cpp-17", - "cpp-20", - "bun-1.0", - "bun-1.1", - "bun-1.2", - "bun-1.3", - "go-1.23", - "go-1.24", - "go-1.25", - "go-1.26", - "rust-1.83", - "static-1", - "flutter-3.24", - "flutter-3.27", - "flutter-3.29", - "flutter-3.32", - "flutter-3.35", - "flutter-3.38", - "flutter-3.41", - "flutter-3.44" + "title": "BuildRuntime", + "oneOf": [ + { + "type": "string", + "enum": [ + "node-14.5" + ], + "title": "node-14.5" + }, + { + "type": "string", + "enum": [ + "node-16.0" + ], + "title": "node-16.0" + }, + { + "type": "string", + "enum": [ + "node-18.0" + ], + "title": "node-18.0" + }, + { + "type": "string", + "enum": [ + "node-19.0" + ], + "title": "node-19.0" + }, + { + "type": "string", + "enum": [ + "node-20.0" + ], + "title": "node-20.0" + }, + { + "type": "string", + "enum": [ + "node-21.0" + ], + "title": "node-21.0" + }, + { + "type": "string", + "enum": [ + "node-22" + ], + "title": "node-22" + }, + { + "type": "string", + "enum": [ + "node-23" + ], + "title": "node-23" + }, + { + "type": "string", + "enum": [ + "node-24" + ], + "title": "node-24" + }, + { + "type": "string", + "enum": [ + "node-25" + ], + "title": "node-25" + }, + { + "type": "string", + "enum": [ + "node-26" + ], + "title": "node-26" + }, + { + "type": "string", + "enum": [ + "php-8.0" + ], + "title": "php-8.0" + }, + { + "type": "string", + "enum": [ + "php-8.1" + ], + "title": "php-8.1" + }, + { + "type": "string", + "enum": [ + "php-8.2" + ], + "title": "php-8.2" + }, + { + "type": "string", + "enum": [ + "php-8.3" + ], + "title": "php-8.3" + }, + { + "type": "string", + "enum": [ + "php-8.4" + ], + "title": "php-8.4" + }, + { + "type": "string", + "enum": [ + "ruby-3.0" + ], + "title": "ruby-3.0" + }, + { + "type": "string", + "enum": [ + "ruby-3.1" + ], + "title": "ruby-3.1" + }, + { + "type": "string", + "enum": [ + "ruby-3.2" + ], + "title": "ruby-3.2" + }, + { + "type": "string", + "enum": [ + "ruby-3.3" + ], + "title": "ruby-3.3" + }, + { + "type": "string", + "enum": [ + "ruby-3.4" + ], + "title": "ruby-3.4" + }, + { + "type": "string", + "enum": [ + "ruby-4.0" + ], + "title": "ruby-4.0" + }, + { + "type": "string", + "enum": [ + "python-3.8" + ], + "title": "python-3.8" + }, + { + "type": "string", + "enum": [ + "python-3.9" + ], + "title": "python-3.9" + }, + { + "type": "string", + "enum": [ + "python-3.10" + ], + "title": "python-3.10" + }, + { + "type": "string", + "enum": [ + "python-3.11" + ], + "title": "python-3.11" + }, + { + "type": "string", + "enum": [ + "python-3.12" + ], + "title": "python-3.12" + }, + { + "type": "string", + "enum": [ + "python-3.13" + ], + "title": "python-3.13" + }, + { + "type": "string", + "enum": [ + "python-3.14" + ], + "title": "python-3.14" + }, + { + "type": "string", + "enum": [ + "python-ml-3.11" + ], + "title": "python-ml-3.11" + }, + { + "type": "string", + "enum": [ + "python-ml-3.12" + ], + "title": "python-ml-3.12" + }, + { + "type": "string", + "enum": [ + "python-ml-3.13" + ], + "title": "python-ml-3.13" + }, + { + "type": "string", + "enum": [ + "deno-1.21" + ], + "title": "deno-1.21" + }, + { + "type": "string", + "enum": [ + "deno-1.24" + ], + "title": "deno-1.24" + }, + { + "type": "string", + "enum": [ + "deno-1.35" + ], + "title": "deno-1.35" + }, + { + "type": "string", + "enum": [ + "deno-1.40" + ], + "title": "deno-1.40" + }, + { + "type": "string", + "enum": [ + "deno-1.46" + ], + "title": "deno-1.46" + }, + { + "type": "string", + "enum": [ + "deno-2.0" + ], + "title": "deno-2.0" + }, + { + "type": "string", + "enum": [ + "deno-2.5" + ], + "title": "deno-2.5" + }, + { + "type": "string", + "enum": [ + "deno-2.6" + ], + "title": "deno-2.6" + }, + { + "type": "string", + "enum": [ + "dart-2.15" + ], + "title": "dart-2.15" + }, + { + "type": "string", + "enum": [ + "dart-2.16" + ], + "title": "dart-2.16" + }, + { + "type": "string", + "enum": [ + "dart-2.17" + ], + "title": "dart-2.17" + }, + { + "type": "string", + "enum": [ + "dart-2.18" + ], + "title": "dart-2.18" + }, + { + "type": "string", + "enum": [ + "dart-2.19" + ], + "title": "dart-2.19" + }, + { + "type": "string", + "enum": [ + "dart-3.0" + ], + "title": "dart-3.0" + }, + { + "type": "string", + "enum": [ + "dart-3.1" + ], + "title": "dart-3.1" + }, + { + "type": "string", + "enum": [ + "dart-3.3" + ], + "title": "dart-3.3" + }, + { + "type": "string", + "enum": [ + "dart-3.5" + ], + "title": "dart-3.5" + }, + { + "type": "string", + "enum": [ + "dart-3.8" + ], + "title": "dart-3.8" + }, + { + "type": "string", + "enum": [ + "dart-3.9" + ], + "title": "dart-3.9" + }, + { + "type": "string", + "enum": [ + "dart-3.10" + ], + "title": "dart-3.10" + }, + { + "type": "string", + "enum": [ + "dart-3.11" + ], + "title": "dart-3.11" + }, + { + "type": "string", + "enum": [ + "dart-3.12" + ], + "title": "dart-3.12" + }, + { + "type": "string", + "enum": [ + "dotnet-6.0" + ], + "title": "dotnet-6.0" + }, + { + "type": "string", + "enum": [ + "dotnet-7.0" + ], + "title": "dotnet-7.0" + }, + { + "type": "string", + "enum": [ + "dotnet-8.0" + ], + "title": "dotnet-8.0" + }, + { + "type": "string", + "enum": [ + "dotnet-10" + ], + "title": "dotnet-10" + }, + { + "type": "string", + "enum": [ + "java-8.0" + ], + "title": "java-8.0" + }, + { + "type": "string", + "enum": [ + "java-11.0" + ], + "title": "java-11.0" + }, + { + "type": "string", + "enum": [ + "java-17.0" + ], + "title": "java-17.0" + }, + { + "type": "string", + "enum": [ + "java-18.0" + ], + "title": "java-18.0" + }, + { + "type": "string", + "enum": [ + "java-21.0" + ], + "title": "java-21.0" + }, + { + "type": "string", + "enum": [ + "java-22" + ], + "title": "java-22" + }, + { + "type": "string", + "enum": [ + "java-25" + ], + "title": "java-25" + }, + { + "type": "string", + "enum": [ + "swift-5.5" + ], + "title": "swift-5.5" + }, + { + "type": "string", + "enum": [ + "swift-5.8" + ], + "title": "swift-5.8" + }, + { + "type": "string", + "enum": [ + "swift-5.9" + ], + "title": "swift-5.9" + }, + { + "type": "string", + "enum": [ + "swift-5.10" + ], + "title": "swift-5.10" + }, + { + "type": "string", + "enum": [ + "swift-6.2" + ], + "title": "swift-6.2" + }, + { + "type": "string", + "enum": [ + "kotlin-1.6" + ], + "title": "kotlin-1.6" + }, + { + "type": "string", + "enum": [ + "kotlin-1.8" + ], + "title": "kotlin-1.8" + }, + { + "type": "string", + "enum": [ + "kotlin-1.9" + ], + "title": "kotlin-1.9" + }, + { + "type": "string", + "enum": [ + "kotlin-2.0" + ], + "title": "kotlin-2.0" + }, + { + "type": "string", + "enum": [ + "kotlin-2.3" + ], + "title": "kotlin-2.3" + }, + { + "type": "string", + "enum": [ + "cpp-17" + ], + "title": "cpp-17" + }, + { + "type": "string", + "enum": [ + "cpp-20" + ], + "title": "cpp-20" + }, + { + "type": "string", + "enum": [ + "bun-1.0" + ], + "title": "bun-1.0" + }, + { + "type": "string", + "enum": [ + "bun-1.1" + ], + "title": "bun-1.1" + }, + { + "type": "string", + "enum": [ + "bun-1.2" + ], + "title": "bun-1.2" + }, + { + "type": "string", + "enum": [ + "bun-1.3" + ], + "title": "bun-1.3" + }, + { + "type": "string", + "enum": [ + "go-1.23" + ], + "title": "go-1.23" + }, + { + "type": "string", + "enum": [ + "go-1.24" + ], + "title": "go-1.24" + }, + { + "type": "string", + "enum": [ + "go-1.25" + ], + "title": "go-1.25" + }, + { + "type": "string", + "enum": [ + "go-1.26" + ], + "title": "go-1.26" + }, + { + "type": "string", + "enum": [ + "rust-1.83" + ], + "title": "rust-1.83" + }, + { + "type": "string", + "enum": [ + "static-1" + ], + "title": "static-1" + }, + { + "type": "string", + "enum": [ + "flutter-3.24" + ], + "title": "flutter-3.24" + }, + { + "type": "string", + "enum": [ + "flutter-3.27" + ], + "title": "flutter-3.27" + }, + { + "type": "string", + "enum": [ + "flutter-3.29" + ], + "title": "flutter-3.29" + }, + { + "type": "string", + "enum": [ + "flutter-3.32" + ], + "title": "flutter-3.32" + }, + { + "type": "string", + "enum": [ + "flutter-3.35" + ], + "title": "flutter-3.35" + }, + { + "type": "string", + "enum": [ + "flutter-3.38" + ], + "title": "flutter-3.38" + }, + { + "type": "string", + "enum": [ + "flutter-3.41" + ], + "title": "flutter-3.41" + }, + { + "type": "string", + "enum": [ + "flutter-3.44" + ], + "title": "flutter-3.44" + } ] }, "adapter": { - "type": "string", "description": "Framework adapter defining rendering strategy. Allowed values are: static, ssr", + "type": "string", + "default": "", "example": "static", - "enum": [ - "static", - "ssr" - ], - "x-enum-name": "Adapter", - "x-enum-keys": [ - "static", - "ssr" + "title": "Adapter", + "oneOf": [ + { + "type": "string", + "enum": [ + "static" + ], + "title": "static" + }, + { + "type": "string", + "enum": [ + "ssr" + ], + "title": "ssr" + } ] }, "fallbackFile": { - "type": "string", "description": "Fallback file for single page application sites.", + "type": "string", "default": "", "example": "<FALLBACK_FILE>" }, "installationId": { - "type": "string", "description": "Appwrite Installation ID for VCS (Version Control System) deployment.", + "type": "string", "default": "", "example": "<INSTALLATION_ID>" }, "providerRepositoryId": { - "type": "string", "description": "Repository ID of the repo linked to the site.", + "type": "string", "default": "", "example": "<PROVIDER_REPOSITORY_ID>" }, "providerBranch": { - "type": "string", "description": "Production branch for the repo linked to the site.", + "type": "string", "default": "", "example": "<PROVIDER_BRANCH>" }, "providerSilentMode": { - "type": "boolean", "description": "Is the VCS (Version Control System) connection in silent mode for the repo linked to the site? In silent mode, comments will not be made on commits and pull requests.", + "type": "boolean", "default": false, "example": false }, "providerRootDirectory": { - "type": "string", "description": "Path to site code in the linked repo.", + "type": "string", "default": "", "example": "<PROVIDER_ROOT_DIRECTORY>" }, "providerBranches": { - "type": "array", "description": "List of branch name patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all branches.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "providerPaths": { - "type": "array", "description": "List of file path patterns to trigger automatic deployments. Supports wildcards. Leave empty to deploy on all file changes.", + "type": "array", "items": { "type": "string" }, "nullable": true }, "buildSpecification": { - "type": "string", "description": "Build specification for the site deployments.", + "type": "string", "nullable": true }, "runtimeSpecification": { - "type": "string", "description": "Runtime specification for the SSR executions.", + "type": "string", "default": {} }, "deploymentRetention": { - "type": "integer", "description": "Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "scopes": { - "type": "array", "description": "List of scopes allowed for API key auto-generated for every site build and SSR execution. Maximum of 200 scopes are allowed.", + "type": "array", "items": { + "title": "ProjectKeyScopes", "type": "string", - "enum": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" - ], - "x-enum-name": "ProjectKeyScopes", - "x-enum-keys": [ - "project.read", - "project.write", - "keys.read", - "keys.write", - "platforms.read", - "platforms.write", - "mocks.read", - "mocks.write", - "policies.read", - "policies.write", - "project.policies.read", - "project.policies.write", - "project.oauth2.read", - "project.oauth2.write", - "templates.read", - "templates.write", - "stages.read", - "stages.write", - "users.read", - "users.write", - "sessions.read", - "sessions.write", - "teams.read", - "teams.write", - "databases.read", - "databases.write", - "tables.read", - "tables.write", - "columns.read", - "columns.write", - "indexes.read", - "indexes.write", - "rows.read", - "rows.write", - "embeddings.write", - "collections.read", - "collections.write", - "attributes.read", - "attributes.write", - "documents.read", - "documents.write", - "buckets.read", - "buckets.write", - "files.read", - "files.write", - "tokens.read", - "tokens.write", - "functions.read", - "functions.write", - "executions.read", - "executions.write", - "execution.read", - "execution.write", - "sites.read", - "sites.write", - "log.read", - "log.write", - "providers.read", - "providers.write", - "topics.read", - "topics.write", - "subscribers.read", - "subscribers.write", - "targets.read", - "targets.write", - "messages.read", - "messages.write", - "rules.read", - "rules.write", - "webhooks.read", - "webhooks.write", - "locale.read", - "avatars.read", - "health.read", - "assistant.read", - "migrations.read", - "migrations.write", - "schedules.read", - "schedules.write", - "vcs.read", - "vcs.write", - "insights.read", - "insights.write", - "reports.read", - "reports.write", - "presences.read", - "presences.write", - "backups.policies.read", - "backups.policies.write", - "archives.read", - "archives.write", - "restorations.read", - "restorations.write", - "domains.read", - "domains.write", - "wafRules.read", - "wafRules.write", - "events.read", - "proxy.invalidations.write", - "apps.read", - "apps.write", - "oauth2.read", - "oauth2.write", - "oauth2.introspect", - "usage.read" + "oneOf": [ + { + "type": "string", + "enum": [ + "project.read" + ], + "title": "project.read" + }, + { + "type": "string", + "enum": [ + "project.write" + ], + "title": "project.write" + }, + { + "type": "string", + "enum": [ + "keys.read" + ], + "title": "keys.read" + }, + { + "type": "string", + "enum": [ + "keys.write" + ], + "title": "keys.write" + }, + { + "type": "string", + "enum": [ + "platforms.read" + ], + "title": "platforms.read" + }, + { + "type": "string", + "enum": [ + "platforms.write" + ], + "title": "platforms.write" + }, + { + "type": "string", + "enum": [ + "mocks.read" + ], + "title": "mocks.read" + }, + { + "type": "string", + "enum": [ + "mocks.write" + ], + "title": "mocks.write" + }, + { + "type": "string", + "enum": [ + "policies.read" + ], + "title": "policies.read" + }, + { + "type": "string", + "enum": [ + "policies.write" + ], + "title": "policies.write" + }, + { + "type": "string", + "enum": [ + "project.policies.read" + ], + "title": "project.policies.read" + }, + { + "type": "string", + "enum": [ + "project.policies.write" + ], + "title": "project.policies.write" + }, + { + "type": "string", + "enum": [ + "project.oauth2.read" + ], + "title": "project.oauth2.read" + }, + { + "type": "string", + "enum": [ + "project.oauth2.write" + ], + "title": "project.oauth2.write" + }, + { + "type": "string", + "enum": [ + "templates.read" + ], + "title": "templates.read" + }, + { + "type": "string", + "enum": [ + "templates.write" + ], + "title": "templates.write" + }, + { + "type": "string", + "enum": [ + "stages.read" + ], + "title": "stages.read" + }, + { + "type": "string", + "enum": [ + "stages.write" + ], + "title": "stages.write" + }, + { + "type": "string", + "enum": [ + "users.read" + ], + "title": "users.read" + }, + { + "type": "string", + "enum": [ + "users.write" + ], + "title": "users.write" + }, + { + "type": "string", + "enum": [ + "sessions.read" + ], + "title": "sessions.read" + }, + { + "type": "string", + "enum": [ + "sessions.write" + ], + "title": "sessions.write" + }, + { + "type": "string", + "enum": [ + "teams.read" + ], + "title": "teams.read" + }, + { + "type": "string", + "enum": [ + "teams.write" + ], + "title": "teams.write" + }, + { + "type": "string", + "enum": [ + "databases.read" + ], + "title": "databases.read" + }, + { + "type": "string", + "enum": [ + "databases.write" + ], + "title": "databases.write" + }, + { + "type": "string", + "enum": [ + "tables.read" + ], + "title": "tables.read" + }, + { + "type": "string", + "enum": [ + "tables.write" + ], + "title": "tables.write" + }, + { + "type": "string", + "enum": [ + "columns.read" + ], + "title": "columns.read" + }, + { + "type": "string", + "enum": [ + "columns.write" + ], + "title": "columns.write" + }, + { + "type": "string", + "enum": [ + "indexes.read" + ], + "title": "indexes.read" + }, + { + "type": "string", + "enum": [ + "indexes.write" + ], + "title": "indexes.write" + }, + { + "type": "string", + "enum": [ + "rows.read" + ], + "title": "rows.read" + }, + { + "type": "string", + "enum": [ + "rows.write" + ], + "title": "rows.write" + }, + { + "type": "string", + "enum": [ + "embeddings.write" + ], + "title": "embeddings.write" + }, + { + "type": "string", + "enum": [ + "collections.read" + ], + "title": "collections.read" + }, + { + "type": "string", + "enum": [ + "collections.write" + ], + "title": "collections.write" + }, + { + "type": "string", + "enum": [ + "attributes.read" + ], + "title": "attributes.read" + }, + { + "type": "string", + "enum": [ + "attributes.write" + ], + "title": "attributes.write" + }, + { + "type": "string", + "enum": [ + "documents.read" + ], + "title": "documents.read" + }, + { + "type": "string", + "enum": [ + "documents.write" + ], + "title": "documents.write" + }, + { + "type": "string", + "enum": [ + "buckets.read" + ], + "title": "buckets.read" + }, + { + "type": "string", + "enum": [ + "buckets.write" + ], + "title": "buckets.write" + }, + { + "type": "string", + "enum": [ + "files.read" + ], + "title": "files.read" + }, + { + "type": "string", + "enum": [ + "files.write" + ], + "title": "files.write" + }, + { + "type": "string", + "enum": [ + "tokens.read" + ], + "title": "tokens.read" + }, + { + "type": "string", + "enum": [ + "tokens.write" + ], + "title": "tokens.write" + }, + { + "type": "string", + "enum": [ + "functions.read" + ], + "title": "functions.read" + }, + { + "type": "string", + "enum": [ + "functions.write" + ], + "title": "functions.write" + }, + { + "type": "string", + "enum": [ + "executions.read" + ], + "title": "executions.read" + }, + { + "type": "string", + "enum": [ + "executions.write" + ], + "title": "executions.write" + }, + { + "type": "string", + "enum": [ + "execution.read" + ], + "title": "execution.read" + }, + { + "type": "string", + "enum": [ + "execution.write" + ], + "title": "execution.write" + }, + { + "type": "string", + "enum": [ + "sites.read" + ], + "title": "sites.read" + }, + { + "type": "string", + "enum": [ + "sites.write" + ], + "title": "sites.write" + }, + { + "type": "string", + "enum": [ + "log.read" + ], + "title": "log.read" + }, + { + "type": "string", + "enum": [ + "log.write" + ], + "title": "log.write" + }, + { + "type": "string", + "enum": [ + "providers.read" + ], + "title": "providers.read" + }, + { + "type": "string", + "enum": [ + "providers.write" + ], + "title": "providers.write" + }, + { + "type": "string", + "enum": [ + "topics.read" + ], + "title": "topics.read" + }, + { + "type": "string", + "enum": [ + "topics.write" + ], + "title": "topics.write" + }, + { + "type": "string", + "enum": [ + "subscribers.read" + ], + "title": "subscribers.read" + }, + { + "type": "string", + "enum": [ + "subscribers.write" + ], + "title": "subscribers.write" + }, + { + "type": "string", + "enum": [ + "targets.read" + ], + "title": "targets.read" + }, + { + "type": "string", + "enum": [ + "targets.write" + ], + "title": "targets.write" + }, + { + "type": "string", + "enum": [ + "messages.read" + ], + "title": "messages.read" + }, + { + "type": "string", + "enum": [ + "messages.write" + ], + "title": "messages.write" + }, + { + "type": "string", + "enum": [ + "rules.read" + ], + "title": "rules.read" + }, + { + "type": "string", + "enum": [ + "rules.write" + ], + "title": "rules.write" + }, + { + "type": "string", + "enum": [ + "webhooks.read" + ], + "title": "webhooks.read" + }, + { + "type": "string", + "enum": [ + "webhooks.write" + ], + "title": "webhooks.write" + }, + { + "type": "string", + "enum": [ + "locale.read" + ], + "title": "locale.read" + }, + { + "type": "string", + "enum": [ + "avatars.read" + ], + "title": "avatars.read" + }, + { + "type": "string", + "enum": [ + "health.read" + ], + "title": "health.read" + }, + { + "type": "string", + "enum": [ + "assistant.read" + ], + "title": "assistant.read" + }, + { + "type": "string", + "enum": [ + "migrations.read" + ], + "title": "migrations.read" + }, + { + "type": "string", + "enum": [ + "migrations.write" + ], + "title": "migrations.write" + }, + { + "type": "string", + "enum": [ + "schedules.read" + ], + "title": "schedules.read" + }, + { + "type": "string", + "enum": [ + "schedules.write" + ], + "title": "schedules.write" + }, + { + "type": "string", + "enum": [ + "vcs.read" + ], + "title": "vcs.read" + }, + { + "type": "string", + "enum": [ + "vcs.write" + ], + "title": "vcs.write" + }, + { + "type": "string", + "enum": [ + "insights.read" + ], + "title": "insights.read" + }, + { + "type": "string", + "enum": [ + "insights.write" + ], + "title": "insights.write" + }, + { + "type": "string", + "enum": [ + "reports.read" + ], + "title": "reports.read" + }, + { + "type": "string", + "enum": [ + "reports.write" + ], + "title": "reports.write" + }, + { + "type": "string", + "enum": [ + "presences.read" + ], + "title": "presences.read" + }, + { + "type": "string", + "enum": [ + "presences.write" + ], + "title": "presences.write" + }, + { + "type": "string", + "enum": [ + "backups.policies.read" + ], + "title": "backups.policies.read" + }, + { + "type": "string", + "enum": [ + "backups.policies.write" + ], + "title": "backups.policies.write" + }, + { + "type": "string", + "enum": [ + "archives.read" + ], + "title": "archives.read" + }, + { + "type": "string", + "enum": [ + "archives.write" + ], + "title": "archives.write" + }, + { + "type": "string", + "enum": [ + "restorations.read" + ], + "title": "restorations.read" + }, + { + "type": "string", + "enum": [ + "restorations.write" + ], + "title": "restorations.write" + }, + { + "type": "string", + "enum": [ + "domains.read" + ], + "title": "domains.read" + }, + { + "type": "string", + "enum": [ + "domains.write" + ], + "title": "domains.write" + }, + { + "type": "string", + "enum": [ + "wafRules.read" + ], + "title": "wafRules.read" + }, + { + "type": "string", + "enum": [ + "wafRules.write" + ], + "title": "wafRules.write" + }, + { + "type": "string", + "enum": [ + "events.read" + ], + "title": "events.read" + }, + { + "type": "string", + "enum": [ + "proxy.invalidations.write" + ], + "title": "proxy.invalidations.write" + }, + { + "type": "string", + "enum": [ + "apps.read" + ], + "title": "apps.read" + }, + { + "type": "string", + "enum": [ + "apps.write" + ], + "title": "apps.write" + }, + { + "type": "string", + "enum": [ + "oauth2.read" + ], + "title": "oauth2.read" + }, + { + "type": "string", + "enum": [ + "oauth2.write" + ], + "title": "oauth2.write" + }, + { + "type": "string", + "enum": [ + "oauth2.introspect" + ], + "title": "oauth2.introspect" + }, + { + "type": "string", + "enum": [ + "usage.read" + ], + "title": "usage.read" + } ] }, "nullable": true @@ -54520,8 +65940,8 @@ "type": "object", "properties": { "deploymentId": { - "type": "string", "description": "Deployment ID.", + "type": "string", "example": "<DEPLOYMENT_ID>" } }, @@ -54694,31 +66114,31 @@ "type": "object", "properties": { "installCommand": { - "type": "string", "description": "Install Commands.", + "type": "string", "example": "<INSTALL_COMMAND>", "nullable": true }, "buildCommand": { - "type": "string", "description": "Build Commands.", + "type": "string", "example": "<BUILD_COMMAND>", "nullable": true }, "outputDirectory": { - "type": "string", "description": "Output Directory.", + "type": "string", "example": "<OUTPUT_DIRECTORY>", "nullable": true }, "code": { - "type": "string", "description": "Gzip file with your code package. When used with the Appwrite CLI, pass the path to your code directory, and the CLI will automatically package your code. Use a path that is within the current directory.", + "type": "string", "format": "binary" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", "default": false, "example": false } @@ -54798,8 +66218,8 @@ "type": "object", "properties": { "deploymentId": { - "type": "string", "description": "Deployment ID.", + "type": "string", "example": "<DEPLOYMENT_ID>" } }, @@ -54877,151 +66297,177 @@ "schema": { "type": "object", "properties": { - "repository": { - "type": "string", - "description": "Repository name of the template.", - "example": "<REPOSITORY>" - }, - "owner": { - "type": "string", - "description": "The name of the owner of the template.", - "example": "<OWNER>" - }, - "rootDirectory": { - "type": "string", - "description": "Path to site code in the template repo.", - "example": "<ROOT_DIRECTORY>" - }, + "repository": { + "description": "Repository name of the template.", + "type": "string", + "example": "<REPOSITORY>" + }, + "owner": { + "description": "The name of the owner of the template.", + "type": "string", + "example": "<OWNER>" + }, + "rootDirectory": { + "description": "Path to site code in the template repo.", + "type": "string", + "example": "<ROOT_DIRECTORY>" + }, + "type": { + "description": "Type for the reference provided. Can be commit, branch, or tag", + "type": "string", + "example": "branch", + "title": "TemplateReferenceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "branch" + ], + "title": "branch" + }, + { + "type": "string", + "enum": [ + "commit" + ], + "title": "commit" + }, + { + "type": "string", + "enum": [ + "tag" + ], + "title": "tag" + } + ] + }, + "reference": { + "description": "Reference value, can be a commit hash, branch name, or release tag", + "type": "string", + "example": "<REFERENCE>" + }, + "activate": { + "description": "Automatically activate the deployment when it is finished building.", + "type": "boolean", + "default": false, + "example": false + } + }, + "required": [ + "repository", + "owner", + "rootDirectory", + "type", + "reference" + ] + } + } + } + } + } + }, + "\/sites\/{siteId}\/deployments\/vcs": { + "post": { + "summary": "Create VCS deployment", + "operationId": "sitesCreateVcsDeployment", + "tags": [ + "sites" + ], + "description": "Create a deployment when a site is connected to VCS.\n\nThis endpoint lets you create deployment from a branch, commit, or a tag.", + "responses": { + "202": { + "description": "Deployment", + "content": { + "application\/json": { + "schema": { + "$ref": "#\/components\/schemas\/deployment" + } + } + } + } + }, + "deprecated": false, + "x-appwrite": { + "group": "deployments", + "cookies": false, + "type": "", + "demo": "sites\/create-vcs-deployment.md", + "rate-limit": 0, + "rate-time": 3600, + "rate-key": "url:{url},ip:{ip}", + "scope": "sites.write", + "platforms": [ + "console", + "server" + ], + "packaging": false, + "public": true, + "auth": { + "Project": [], + "Key": [] + } + }, + "security": [ + { + "Project": [], + "Key": [] + } + ], + "parameters": [ + { + "name": "siteId", + "description": "Site ID.", + "required": true, + "schema": { + "type": "string", + "example": "<SITE_ID>" + }, + "in": "path" + } + ], + "requestBody": { + "content": { + "application\/json": { + "schema": { + "type": "object", + "properties": { "type": { + "description": "Type of reference passed. Allowed values are: branch, commit", "type": "string", - "description": "Type for the reference provided. Can be commit, branch, or tag", "example": "branch", - "enum": [ - "branch", - "commit", - "tag" - ], - "x-enum-name": "TemplateReferenceType", - "x-enum-keys": [ - "branch", - "commit", - "tag" + "title": "VCSReferenceType", + "oneOf": [ + { + "type": "string", + "enum": [ + "branch" + ], + "title": "branch" + }, + { + "type": "string", + "enum": [ + "commit" + ], + "title": "commit" + }, + { + "type": "string", + "enum": [ + "tag" + ], + "title": "tag" + } ] }, "reference": { + "description": "VCS reference to create deployment from. Depending on type this can be: branch name, commit hash", "type": "string", - "description": "Reference value, can be a commit hash, branch name, or release tag", "example": "<REFERENCE>" }, "activate": { - "type": "boolean", "description": "Automatically activate the deployment when it is finished building.", - "default": false, - "example": false - } - }, - "required": [ - "repository", - "owner", - "rootDirectory", - "type", - "reference" - ] - } - } - } - } - } - }, - "\/sites\/{siteId}\/deployments\/vcs": { - "post": { - "summary": "Create VCS deployment", - "operationId": "sitesCreateVcsDeployment", - "tags": [ - "sites" - ], - "description": "Create a deployment when a site is connected to VCS.\n\nThis endpoint lets you create deployment from a branch, commit, or a tag.", - "responses": { - "202": { - "description": "Deployment", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/deployment" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "group": "deployments", - "cookies": false, - "type": "", - "demo": "sites\/create-vcs-deployment.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "sites.write", - "platforms": [ - "console", - "server" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [], - "Key": [] - } - }, - "security": [ - { - "Project": [], - "Key": [] - } - ], - "parameters": [ - { - "name": "siteId", - "description": "Site ID.", - "required": true, - "schema": { - "type": "string", - "example": "<SITE_ID>" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Type of reference passed. Allowed values are: branch, commit", - "example": "branch", - "enum": [ - "branch", - "commit", - "tag" - ], - "x-enum-name": "VCSReferenceType", - "x-enum-keys": [ - "branch", - "commit", - "tag" - ] - }, - "reference": { - "type": "string", - "description": "VCS reference to create deployment from. Depending on type this can be: branch name, commit hash", - "example": "<REFERENCE>" - }, - "activate": { "type": "boolean", - "description": "Automatically activate the deployment when it is finished building.", "default": false, "example": false } @@ -55251,14 +66697,22 @@ "schema": { "type": "string", "example": "source", - "enum": [ - "source", - "output" - ], - "x-enum-name": "DeploymentDownloadType", - "x-enum-keys": [ - "source", - "output" + "title": "DeploymentDownloadType", + "oneOf": [ + { + "type": "string", + "enum": [ + "source" + ], + "title": "source" + }, + { + "type": "string", + "enum": [ + "output" + ], + "title": "output" + } ], "default": "source" }, @@ -55719,26 +67173,26 @@ "type": "object", "properties": { "variableId": { - "type": "string", "description": "Variable 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.", + "type": "string", "example": "<VARIABLE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>" }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>" }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only sites can read them during build and runtime.", + "type": "boolean", "default": true, "example": false } @@ -55899,20 +67353,20 @@ "type": "object", "properties": { "key": { - "type": "string", "description": "Variable key. Max length: 255 chars.", + "type": "string", "example": "<KEY>", "nullable": true }, "value": { - "type": "string", "description": "Variable value. Max length: 8192 chars.", + "type": "string", "example": "<VALUE>", "nullable": true }, "secret": { - "type": "boolean", "description": "Secret variables can be updated or deleted, but only sites can read them during build and runtime.", + "type": "boolean", "example": false, "nullable": true } @@ -56125,21 +67579,21 @@ "type": "object", "properties": { "bucketId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<BUCKET_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Bucket name", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -56149,64 +67603,77 @@ "nullable": true }, "fileSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual file. A user needs one of file or bucket level permissions to access a file. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is bucket enabled? When set to 'disabled', users cannot access the files in this bucket but Server SDKs with and API key can still access the bucket. No files are lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "maximumFileSize": { - "type": "integer", "description": "Maximum file size allowed in bytes. Maximum allowed value is 0B.", + "type": "integer", "default": {}, "example": 1, "format": "int32" }, "allowedFileExtensions": { - "type": "array", "description": "Allowed file extensions. Maximum of 100 extensions are allowed, each 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "compression": { - "type": "string", "description": "Compression algorithm chosen for compression. Can be one of none, [gzip](https:\/\/en.wikipedia.org\/wiki\/Gzip), or [zstd](https:\/\/en.wikipedia.org\/wiki\/Zstd), For file size above 20MB compression is skipped even if it's enabled", + "type": "string", "default": "none", "example": "none", - "enum": [ - "none", - "gzip", - "zstd" - ], - "x-enum-name": "Compression", - "x-enum-keys": [ - "none", - "gzip", - "zstd" + "title": "Compression", + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "gzip" + ], + "title": "gzip" + }, + { + "type": "string", + "enum": [ + "zstd" + ], + "title": "zstd" + } ] }, "encryption": { - "type": "boolean", "description": "Is encryption enabled? For file size above 20MB encryption is skipped even if it's enabled", + "type": "boolean", "default": true, "example": false }, "antivirus": { - "type": "boolean", "description": "Is virus scanning enabled? For file size above 20MB AntiVirus scanning is skipped even if it's enabled", + "type": "boolean", "default": true, "example": false }, "transformations": { - "type": "boolean", "description": "Are image transformations enabled?", + "type": "boolean", "default": true, "example": false } @@ -56348,13 +67815,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Bucket name", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -56364,64 +67831,77 @@ "nullable": true }, "fileSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual file. A user needs one of file or bucket level permissions to access a file. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is bucket enabled? When set to 'disabled', users cannot access the files in this bucket but Server SDKs with and API key can still access the bucket. No files are lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "maximumFileSize": { - "type": "integer", "description": "Maximum file size allowed in bytes. Maximum allowed value is 0B.", + "type": "integer", "default": {}, "example": 1, "format": "int32" }, "allowedFileExtensions": { - "type": "array", "description": "Allowed file extensions. Maximum of 100 extensions are allowed, each 64 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "compression": { - "type": "string", "description": "Compression algorithm chosen for compression. Can be one of none, [gzip](https:\/\/en.wikipedia.org\/wiki\/Gzip), or [zstd](https:\/\/en.wikipedia.org\/wiki\/Zstd), For file size above 20MB compression is skipped even if it's enabled", + "type": "string", "default": "none", "example": "none", - "enum": [ - "none", - "gzip", - "zstd" - ], - "x-enum-name": "Compression", - "x-enum-keys": [ - "none", - "gzip", - "zstd" + "title": "Compression", + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "gzip" + ], + "title": "gzip" + }, + { + "type": "string", + "enum": [ + "zstd" + ], + "title": "zstd" + } ] }, "encryption": { - "type": "boolean", "description": "Is encryption enabled? For file size above 20MB encryption is skipped even if it's enabled", + "type": "boolean", "default": true, "example": false }, "antivirus": { - "type": "boolean", "description": "Is virus scanning enabled? For file size above 20MB AntiVirus scanning is skipped even if it's enabled", + "type": "boolean", "default": true, "example": false }, "transformations": { - "type": "boolean", "description": "Are image transformations enabled?", + "type": "boolean", "default": true, "example": false } @@ -56656,8 +68136,8 @@ "type": "object", "properties": { "fileId": { - "type": "string", "description": "File 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.", + "type": "string", "example": "<FILE_ID>", "x-upload-id": true, "x-appwrite": { @@ -56665,13 +68145,13 @@ } }, "file": { - "type": "string", "description": "Binary file. Appwrite SDKs provide helpers to handle file input. [Learn about file input](https:\/\/appwrite.io\/docs\/products\/storage\/upload-download#input-file).", + "type": "string", "format": "binary" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -56681,8 +68161,8 @@ "nullable": true }, "folder": { - "type": "string", "description": "Virtual folder to place the file in, for example \"photos\/2026\". Nest folders with `\/`. Defaults to the bucket root.", + "type": "string", "default": "" } }, @@ -56849,13 +68329,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "File name.", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -57132,28 +68612,71 @@ "schema": { "type": "string", "example": "center", - "enum": [ - "center", - "top-left", - "top", - "top-right", - "left", - "right", - "bottom-left", - "bottom", - "bottom-right" - ], - "x-enum-name": "ImageGravity", - "x-enum-keys": [ - "center", - "top-left", - "top", - "top-right", - "left", - "right", - "bottom-left", - "bottom", - "bottom-right" + "title": "ImageGravity", + "oneOf": [ + { + "type": "string", + "enum": [ + "center" + ], + "title": "center" + }, + { + "type": "string", + "enum": [ + "top-left" + ], + "title": "top-left" + }, + { + "type": "string", + "enum": [ + "top" + ], + "title": "top" + }, + { + "type": "string", + "enum": [ + "top-right" + ], + "title": "top-right" + }, + { + "type": "string", + "enum": [ + "left" + ], + "title": "left" + }, + { + "type": "string", + "enum": [ + "right" + ], + "title": "right" + }, + { + "type": "string", + "enum": [ + "bottom-left" + ], + "title": "bottom-left" + }, + { + "type": "string", + "enum": [ + "bottom" + ], + "title": "bottom" + }, + { + "type": "string", + "enum": [ + "bottom-right" + ], + "title": "bottom-right" + } ], "default": "center" }, @@ -57246,25 +68769,59 @@ "schema": { "type": "string", "example": "jpg", - "enum": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" + "title": "ImageFormat", + "oneOf": [ + { + "type": "string", + "enum": [ + "jpg" + ], + "title": "jpg" + }, + { + "type": "string", + "enum": [ + "jpeg" + ], + "title": "jpeg" + }, + { + "type": "string", + "enum": [ + "png" + ], + "title": "png" + }, + { + "type": "string", + "enum": [ + "webp" + ], + "title": "webp" + }, + { + "type": "string", + "enum": [ + "heic" + ], + "title": "heic" + }, + { + "type": "string", + "enum": [ + "avif" + ], + "title": "avif" + }, + { + "type": "string", + "enum": [ + "gif" + ], + "title": "gif" + } ], - "x-enum-name": "ImageFormat", - "x-enum-keys": [ - "jpg", - "jpeg", - "png", - "webp", - "heic", - "avif", - "gif" - ] + "default": "" }, "in": "query" }, @@ -57511,40 +69068,40 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Defaults to `serverless`, which creates the database on the shared pool. Any other value provisions a dedicated database on that specification.", + "type": "string", "default": "serverless", "example": "serverless" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Requires a dedicated `specification`; must be 0 for a serverless database. High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Requires a dedicated `specification`; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -57738,8 +69295,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -57890,14 +69447,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -58040,8 +69597,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -58192,32 +69749,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Resizing between dedicated specifications changes cpu, memory, storage and the connection ceiling via a rolling cutover with zero downtime. Moving a `serverless` database onto a dedicated specification is a data migration, not a resize.", + "type": "string", "example": "serverless", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification. High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -58347,8 +69904,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -58484,13 +70041,13 @@ "type": "object", "properties": { "specification": { - "type": "string", "description": "Dedicated compute specification to provision as the migration target (e.g. s-2vcpu-4gb). The migration always targets a dedicated compute, so `serverless` is not accepted.", + "type": "string", "example": "s-1vcpu-1gb" }, "autoCutover": { - "type": "boolean", "description": "Whether to cut over automatically once the copy is verified. When disabled the migration parks at ready_to_cutover and holds there until the cutover is performed manually.", + "type": "boolean", "default": true, "example": false } @@ -59096,21 +70653,21 @@ "type": "object", "properties": { "tableId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<TABLE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Table name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -59120,28 +70677,28 @@ "nullable": true }, "rowSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual rows. A user needs one of row or table level permissions to access a row. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is table enabled? When set to 'disabled', users cannot access the table but Server SDKs with and API key can still read and write to the table. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "columns": { - "type": "array", "description": "Array of column definitions to create. Each column should contain: key (string), type (string: string, varchar, text, mediumtext, longtext, integer, bigint, double, boolean, datetime, point, linestring, polygon, email, url, ip, enum), size (integer, required for string and varchar types), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.", + "type": "array", "default": [], "items": { "type": "object" } }, "indexes": { - "type": "array", "description": "Array of index definitions to create. Each index should contain: key (string), type (string: key, fulltext, unique, spatial), attributes (array of column keys), orders (array of ASC\/DESC, optional), and lengths (array of integers, optional).", + "type": "array", "default": [], "items": { "type": "object" @@ -59311,13 +70868,13 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Table name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -59327,20 +70884,20 @@ "nullable": true }, "rowSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual rows. A user needs one of row or table-level permissions to access a row. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is table enabled? When set to 'disabled', users cannot access the table but Server SDKs with and API key can still read and write to the table. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "purge": { - "type": "boolean", "description": "When true, purge all cached list responses for this table as part of the update. Use this to force readers to see fresh data immediately instead of waiting for the cache TTL to expire.", + "type": "boolean", "default": false, "example": false } @@ -59600,35 +71157,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when column is required.", + "type": "integer", "format": "int64", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -59734,31 +71291,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when column is required.", + "type": "integer", "format": "int64", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -59854,23 +71411,23 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "boolean", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "boolean", "example": false, "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -59976,19 +71533,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "boolean", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "boolean", "example": false, "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -60084,24 +71641,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for the column in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. Cannot be set when column is required.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -60207,20 +71764,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -60316,24 +71873,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -60439,20 +71996,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -60548,30 +72105,30 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "elements": { - "type": "array", "description": "Array of enum values.", + "type": "array", "items": { "type": "string" } }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -60678,26 +72235,26 @@ "type": "object", "properties": { "elements": { - "type": "array", "description": "Updated list of enum values.", + "type": "array", "items": { "type": "string" } }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -60794,35 +72351,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "number", "description": "Minimum value", + "type": "number", "format": "float", "nullable": true }, "max": { - "type": "number", "description": "Maximum value", + "type": "number", "format": "float", "nullable": true }, "default": { - "type": "number", "description": "Default value. Cannot be set when required.", + "type": "number", "format": "float", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -60928,31 +72485,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "number", "description": "Minimum value", + "type": "number", "format": "float", "nullable": true }, "max": { - "type": "number", "description": "Maximum value", + "type": "number", "format": "float", "nullable": true }, "default": { - "type": "number", "description": "Default value. Cannot be set when required.", + "type": "number", "format": "float", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -61048,35 +72605,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when column is required.", + "type": "integer", "format": "int64", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -61182,31 +72739,31 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "min": { - "type": "integer", "description": "Minimum value", + "type": "integer", "format": "int64", "nullable": true }, "max": { - "type": "integer", "description": "Maximum value", + "type": "integer", "format": "int64", "nullable": true }, "default": { - "type": "integer", "description": "Default value. Cannot be set when column is required.", + "type": "integer", "format": "int64", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -61302,22 +72859,22 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value. Cannot be set when column is required.", + "type": "string", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -61423,18 +72980,18 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value. Cannot be set when column is required.", + "type": "string", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -61530,17 +73087,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ 1, @@ -61666,13 +73223,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ 1, @@ -61697,8 +73254,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -61793,29 +73350,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -61921,19 +73478,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -62029,29 +73586,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -62157,19 +73714,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -62265,17 +73822,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ 1, 2 @@ -62388,13 +73945,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ 1, 2 @@ -62406,8 +73963,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -62502,17 +74059,17 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ [ @@ -62647,13 +74204,13 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "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.", + "type": "array", "example": [ [ [ @@ -62687,8 +74244,8 @@ "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -62783,59 +74340,90 @@ "type": "object", "properties": { "relatedTableId": { - "type": "string", "description": "Related Table ID.", + "type": "string", "example": "<RELATED_TABLE_ID>" }, "type": { - "type": "string", "description": "Relationship type. Possible values are: oneToOne, oneToMany, manyToOne, manyToMany.", + "type": "string", "example": "oneToOne", - "enum": [ - "oneToOne", - "manyToOne", - "manyToMany", - "oneToMany" - ], - "x-enum-name": "RelationshipType", - "x-enum-keys": [ - "oneToOne", - "manyToOne", - "manyToMany", - "oneToMany" + "title": "RelationshipType", + "oneOf": [ + { + "type": "string", + "enum": [ + "oneToOne" + ], + "title": "oneToOne" + }, + { + "type": "string", + "enum": [ + "manyToOne" + ], + "title": "manyToOne" + }, + { + "type": "string", + "enum": [ + "manyToMany" + ], + "title": "manyToMany" + }, + { + "type": "string", + "enum": [ + "oneToMany" + ], + "title": "oneToMany" + } ] }, "twoWay": { - "type": "boolean", "description": "Is Two Way?", + "type": "boolean", "default": false, "example": false }, "key": { - "type": "string", "description": "Column Key.", + "type": "string", "nullable": true }, "twoWayKey": { - "type": "string", "description": "Two Way Column Key.", + "type": "string", "nullable": true }, "onDelete": { - "type": "string", "description": "Delete constraint. Possible values are: cascade, restrict, setNull.", + "type": "string", "default": "restrict", "example": "cascade", - "enum": [ - "cascade", - "restrict", - "setNull" - ], - "x-enum-name": "RelationMutate", - "x-enum-keys": [ - "cascade", - "restrict", - "setNull" + "title": "RelationMutate", + "oneOf": [ + { + "type": "string", + "enum": [ + "cascade" + ], + "title": "cascade" + }, + { + "type": "string", + "enum": [ + "restrict" + ], + "title": "restrict" + }, + { + "type": "string", + "enum": [ + "setNull" + ], + "title": "setNull" + } ] } }, @@ -62935,35 +74523,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "size": { - "type": "integer", "description": "Column size for text columns, in number of characters.", + "type": "integer", "example": 1, "format": "int32" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -63074,26 +74662,26 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "size": { - "type": "integer", "description": "Maximum size of the string column.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -63189,29 +74777,29 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -63317,19 +74905,19 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -63425,24 +75013,24 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false } @@ -63548,20 +75136,20 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "https:\/\/example.com", "format": "url", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -63657,35 +75245,35 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Column Key." + "description": "Column Key.", + "type": "string" }, "size": { - "type": "integer", "description": "Column size for varchar columns, in number of characters. Maximum size is 16381.", + "type": "integer", "example": 1, "format": "int32" }, "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "array": { - "type": "boolean", "description": "Is column an array?", + "type": "boolean", "default": false, "example": false }, "encrypt": { - "type": "boolean", "description": "Toggle encryption for the column. Encryption enhances security by not storing any plain text values in the database. However, encrypted columns cannot be queried.", + "type": "boolean", "default": false, "example": false } @@ -63792,26 +75380,26 @@ "type": "object", "properties": { "required": { - "type": "boolean", "description": "Is column required?", + "type": "boolean", "example": false }, "default": { - "type": "string", "description": "Default value for column when not provided. Cannot be set when column is required.", + "type": "string", "example": "<DEFAULT>", "nullable": true }, "size": { - "type": "integer", "description": "Maximum size of the varchar column.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } }, @@ -64161,25 +75749,38 @@ "type": "object", "properties": { "onDelete": { - "type": "string", "description": "Delete constraint. Possible values are: cascade, restrict, setNull.", + "type": "string", "example": "cascade", - "enum": [ - "cascade", - "restrict", - "setNull" - ], - "x-enum-name": "RelationMutate", - "x-enum-keys": [ - "cascade", - "restrict", - "setNull" + "title": "RelationMutate", + "oneOf": [ + { + "type": "string", + "enum": [ + "cascade" + ], + "title": "cascade" + }, + { + "type": "string", + "enum": [ + "restrict" + ], + "title": "restrict" + }, + { + "type": "string", + "enum": [ + "setNull" + ], + "title": "setNull" + } ], "nullable": true }, "newKey": { - "type": "string", "description": "New Column Key.", + "type": "string", "nullable": true } } @@ -64368,54 +75969,80 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Index Key." + "description": "Index Key.", + "type": "string" }, "type": { - "type": "string", "description": "Index type.", + "type": "string", "example": "key", - "enum": [ - "key", - "fulltext", - "unique", - "spatial" - ], - "x-enum-name": "TablesDBIndexType", - "x-enum-keys": [ - "key", - "fulltext", - "unique", - "spatial" + "title": "TablesDBIndexType", + "oneOf": [ + { + "type": "string", + "enum": [ + "key" + ], + "title": "key" + }, + { + "type": "string", + "enum": [ + "fulltext" + ], + "title": "fulltext" + }, + { + "type": "string", + "enum": [ + "unique" + ], + "title": "unique" + }, + { + "type": "string", + "enum": [ + "spatial" + ], + "title": "spatial" + } ] }, "columns": { - "type": "array", "description": "Array of columns to index. Maximum of 100 columns are allowed, each 32 characters long.", + "type": "array", "items": { "type": "string" } }, "orders": { - "type": "array", "description": "Array of index orders. Maximum of 100 orders are allowed.", + "type": "array", "default": [], "items": { + "title": "OrderBy", "type": "string", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "OrderBy", - "x-enum-keys": [ - "asc", - "desc" + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ] } }, "lengths": { - "type": "array", "description": "Length of index. Maximum of 100", + "type": "array", "default": [], "items": { "type": "integer" @@ -64862,16 +76489,16 @@ "type": "object", "properties": { "rowId": { - "type": "string", "description": "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.", + "type": "string", "example": "<ROW_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Row data as JSON object.", + "type": "object", "default": {}, "example": { "username": "walter.obrien", @@ -64882,8 +76509,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -64893,16 +76520,16 @@ "nullable": true }, "rows": { - "type": "array", "description": "Array of rows data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -65026,15 +76653,15 @@ "type": "object", "properties": { "rows": { - "type": "array", "description": "Array of row data as JSON objects. May contain partial rows.", + "type": "array", "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -65126,8 +76753,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Row data as JSON object. Include only column and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -65138,16 +76765,16 @@ } }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -65489,8 +77116,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Row data as JSON object. Include all required columns of the row to be created or updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -65501,8 +77128,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -65512,8 +77139,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -65615,8 +77242,8 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Row data as JSON object. Include only columns and value pairs to be updated.", + "type": "object", "default": [], "example": { "username": "walter.obrien", @@ -65627,8 +77254,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -65638,8 +77265,8 @@ "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -65841,20 +77468,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the column by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "min": { - "type": "number", "description": "Minimum value for the column. If the current value is lesser than this value, an exception will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -65967,20 +77594,20 @@ "type": "object", "properties": { "value": { - "type": "number", "description": "Value to increment the column by. The value must be a number.", + "type": "number", "default": 1, "format": "float" }, "max": { - "type": "number", "description": "Maximum value for the column. If the current value is greater than this value, an error will be thrown.", + "type": "number", "format": "float", "nullable": true }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>", "nullable": true } @@ -66137,21 +77764,21 @@ "type": "object", "properties": { "teamId": { - "type": "string", "description": "Team 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.", + "type": "string", "example": "<TEAM_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Team name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "roles": { - "type": "array", "description": "Array of strings. Use this param to set the roles in the team for the user who created it. The default role is **owner**. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 32 characters long.", + "type": "array", "default": [ "owner" ], @@ -66303,8 +77930,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "New team name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -66528,13 +78155,13 @@ "type": "object", "properties": { "appId": { - "type": "string", "description": "Application unique ID.", + "type": "string", "example": "<APP_ID>" }, "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. The Appwrite Console stores authorized project IDs here.", + "type": "string", "default": "", "example": "<AUTHORIZATION_DETAILS>" } @@ -66699,8 +78326,8 @@ "type": "object", "properties": { "authorizationDetails": { - "type": "string", "description": "Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. Omit to keep the current value.", + "type": "string", "example": "<AUTHORIZATION_DETAILS>", "nullable": true } @@ -66947,42 +78574,42 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "Email of the new team member.", + "type": "string", "default": "", "example": "email@example.com", "format": "email" }, "userId": { - "type": "string", "description": "ID of the user to be added to a team.", + "type": "string", "default": "", "example": "<USER_ID>" }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "default": "", "example": "+12065550100", "format": "phone" }, "roles": { - "type": "array", "description": "Array of strings. Use this param to set the user roles in the team. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } }, "url": { - "type": "string", "description": "URL to redirect the user back to your app from the invitation email. This parameter is not required when an API key is supplied. 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.", + "type": "string", "default": "", "example": "https:\/\/example.com", "format": "url" }, "name": { - "type": "string", "description": "Name of the new team member. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -67149,8 +78776,8 @@ "type": "object", "properties": { "roles": { - "type": "array", "description": "An array of strings. Use this param to set the user's roles in the team. A role can be any string. Learn more about [roles and permissions](https:\/\/appwrite.io\/docs\/permissions). Maximum of 100 roles are allowed, each 81 characters long.", + "type": "array", "items": { "type": "string" } @@ -67310,13 +78937,13 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID.", + "type": "string", "example": "<USER_ID>" }, "secret": { - "type": "string", "description": "Secret key.", + "type": "string", "example": "<SECRET>" } }, @@ -67461,8 +79088,8 @@ "type": "object", "properties": { "prefs": { - "type": "object", "description": "Prefs key-value JSON object.", + "type": "object", "default": {}, "example": {} } @@ -67645,8 +79272,8 @@ "type": "object", "properties": { "expire": { - "type": "string", "description": "Token expiry date", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -67783,8 +79410,8 @@ "type": "object", "properties": { "expire": { - "type": "string", "description": "File token expiry date", + "type": "string", "example": "2020-10-15T06:38:00.000+00:00", "format": "datetime", "nullable": true @@ -67988,37 +79615,37 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email", "nullable": true }, "phone": { - "type": "string", "description": "Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.", + "type": "string", "example": "+12065550100", "format": "phone", "nullable": true }, "password": { - "type": "string", "description": "Plain text user password. Must be at least 8 chars.", + "type": "string", "default": "", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -68087,28 +79714,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using Argon2.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -68179,28 +79806,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using Bcrypt.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -68413,28 +80040,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using MD5.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -68505,28 +80132,28 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User ID. Choose a custom ID or pass the string `ID.unique()`to auto generate it. 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using PHPass.", + "type": "string", "example": "password", "format": "password" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -68597,53 +80224,53 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using Scrypt.", + "type": "string", "example": "password", "format": "password" }, "passwordSalt": { - "type": "string", "description": "Optional salt used to hash password.", + "type": "string", "example": "<PASSWORD_SALT>" }, "passwordCpu": { - "type": "integer", "description": "Optional CPU cost used to hash password.", + "type": "integer", "format": "int32" }, "passwordMemory": { - "type": "integer", "description": "Optional memory cost used to hash password.", + "type": "integer", "format": "int32" }, "passwordParallel": { - "type": "integer", "description": "Optional parallelization cost used to hash password.", + "type": "integer", "format": "int32" }, "passwordLength": { - "type": "integer", "description": "Optional hash length used to hash password.", + "type": "integer", "format": "int32" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -68719,43 +80346,43 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using Scrypt Modified.", + "type": "string", "example": "password", "format": "password" }, "passwordSalt": { - "type": "string", "description": "Salt used to hash password.", + "type": "string", "example": "<PASSWORD_SALT>" }, "passwordSaltSeparator": { - "type": "string", "description": "Salt separator used to hash password.", + "type": "string", "example": "<PASSWORD_SALT_SEPARATOR>" }, "passwordSignerKey": { - "type": "string", "description": "Signer key used to hash password.", + "type": "string", "example": "<PASSWORD_SIGNER_KEY>" }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -68829,60 +80456,114 @@ "type": "object", "properties": { "userId": { - "type": "string", "description": "User 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.", + "type": "string", "example": "<USER_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" }, "password": { - "type": "string", "description": "User password hashed using SHA.", + "type": "string", "example": "password", "format": "password" }, "passwordVersion": { - "type": "string", "description": "Optional SHA version used to hash password. Allowed values are: 'sha1', 'sha224', 'sha256', 'sha384', 'sha512\/224', 'sha512\/256', 'sha512', 'sha3-224', 'sha3-256', 'sha3-384', 'sha3-512'", + "type": "string", + "default": "", "example": "sha1", - "enum": [ - "sha1", - "sha224", - "sha256", - "sha384", - "sha512\/224", - "sha512\/256", - "sha512", - "sha3-224", - "sha3-256", - "sha3-384", - "sha3-512" - ], - "x-enum-name": "PasswordHash", - "x-enum-keys": [ - "sha1", - "sha224", - "sha256", - "sha384", - "sha512\/224", - "sha512\/256", - "sha512", - "sha3-224", - "sha3-256", - "sha3-384", - "sha3-512" + "title": "PasswordHash", + "oneOf": [ + { + "type": "string", + "enum": [ + "sha1" + ], + "title": "sha1" + }, + { + "type": "string", + "enum": [ + "sha224" + ], + "title": "sha224" + }, + { + "type": "string", + "enum": [ + "sha256" + ], + "title": "sha256" + }, + { + "type": "string", + "enum": [ + "sha384" + ], + "title": "sha384" + }, + { + "type": "string", + "enum": [ + "sha512\/224" + ], + "title": "sha512\/224" + }, + { + "type": "string", + "enum": [ + "sha512\/256" + ], + "title": "sha512\/256" + }, + { + "type": "string", + "enum": [ + "sha512" + ], + "title": "sha512" + }, + { + "type": "string", + "enum": [ + "sha3-224" + ], + "title": "sha3-224" + }, + { + "type": "string", + "enum": [ + "sha3-256" + ], + "title": "sha3-256" + }, + { + "type": "string", + "enum": [ + "sha3-384" + ], + "title": "sha3-384" + }, + { + "type": "string", + "enum": [ + "sha3-512" + ], + "title": "sha3-512" + } ] }, "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "default": "", "example": "<NAME>" } @@ -69080,8 +80761,8 @@ "type": "object", "properties": { "email": { - "type": "string", "description": "User email.", + "type": "string", "example": "email@example.com", "format": "email" } @@ -69162,8 +80843,8 @@ "type": "object", "properties": { "impersonator": { - "type": "boolean", "description": "Whether the user can impersonate other users. When true, the user can browse project users to choose a target and can pass impersonation headers to act as that user. Internal audit logs still attribute impersonated actions to the original impersonator and store the target user details only in internal audit payload data.", + "type": "boolean", "example": false } }, @@ -69243,14 +80924,14 @@ "type": "object", "properties": { "sessionId": { - "type": "string", "description": "Session ID. Use the string 'recent' to use the most recent session. Defaults to the most recent session.", + "type": "string", "default": "recent", "example": "<SESSION_ID>" }, "duration": { - "type": "integer", "description": "Time in seconds before JWT expires. Default duration is 900 seconds, and maximum is 3600 seconds.", + "type": "integer", "default": 900, "example": 0, "format": "int32" @@ -69329,8 +81010,8 @@ "type": "object", "properties": { "labels": { - "type": "array", "description": "Array of user labels. Replaces the previous labels. Maximum of 1000 labels are allowed, each up to 36 alphanumeric characters long.", + "type": "array", "items": { "type": "string" } @@ -69657,8 +81338,8 @@ "type": "object", "properties": { "mfa": { - "type": "boolean", "description": "Enable or disable MFA.", + "type": "boolean", "example": false } }, @@ -69790,12 +81471,15 @@ "schema": { "type": "string", "example": "totp", - "enum": [ - "totp" - ], - "x-enum-name": "AuthenticatorType", - "x-enum-keys": [ - "totp" + "title": "AuthenticatorType", + "oneOf": [ + { + "type": "string", + "enum": [ + "totp" + ], + "title": "totp" + } ] }, "in": "path" @@ -70445,8 +82129,8 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "User name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" } }, @@ -70526,8 +82210,8 @@ "type": "object", "properties": { "password": { - "type": "string", "description": "New user password. Must be at least 8 chars.", + "type": "string", "example": "password", "format": "password" } @@ -70608,8 +82292,8 @@ "type": "object", "properties": { "number": { - "type": "string", "description": "User phone number.", + "type": "string", "example": "+12065550100", "format": "phone" } @@ -70750,8 +82434,8 @@ "type": "object", "properties": { "prefs": { - "type": "object", "description": "Prefs key-value JSON object.", + "type": "object", "default": {}, "example": {} } @@ -71098,8 +82782,8 @@ "type": "object", "properties": { "status": { - "type": "boolean", "description": "User Status. To activate the user pass `true` and to block the user pass `false`.", + "type": "boolean", "example": false } }, @@ -71263,43 +82947,56 @@ "type": "object", "properties": { "targetId": { - "type": "string", "description": "Target 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.", + "type": "string", "example": "<TARGET_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "providerType": { - "type": "string", "description": "The target provider type. Can be one of the following: `email`, `sms` or `push`.", + "type": "string", "example": "email", - "enum": [ - "email", - "sms", - "push" - ], - "x-enum-name": "MessagingProviderType", - "x-enum-keys": [ - "email", - "sms", - "push" + "title": "MessagingProviderType", + "oneOf": [ + { + "type": "string", + "enum": [ + "email" + ], + "title": "email" + }, + { + "type": "string", + "enum": [ + "sms" + ], + "title": "sms" + }, + { + "type": "string", + "enum": [ + "push" + ], + "title": "push" + } ] }, "identifier": { - "type": "string", "description": "The target identifier (token, email, phone etc.)", + "type": "string", "example": "<IDENTIFIER>" }, "providerId": { - "type": "string", "description": "Provider ID. Message will be sent to this target from the specified provider ID. If no provider ID is set the first setup provider will be used.", + "type": "string", "default": "", "example": "<PROVIDER_ID>" }, "name": { - "type": "string", "description": "Target name. Max length: 128 chars. For example: My Awesome App Galaxy S23.", + "type": "string", "default": "", "example": "<NAME>" } @@ -71462,20 +83159,20 @@ "type": "object", "properties": { "identifier": { - "type": "string", "description": "The target identifier (token, email, phone etc.)", + "type": "string", "default": "", "example": "<IDENTIFIER>" }, "providerId": { - "type": "string", "description": "Provider ID. Message will be sent to this target from the specified provider ID. If no provider ID is set the first setup provider will be used.", + "type": "string", "default": "", "example": "<PROVIDER_ID>" }, "name": { - "type": "string", "description": "Target name. Max length: 128 chars. For example: My Awesome App Galaxy S23.", + "type": "string", "default": "", "example": "<NAME>" } @@ -71616,15 +83313,15 @@ "type": "object", "properties": { "length": { - "type": "integer", "description": "Token length in characters. The default length is 6 characters", + "type": "integer", "default": 6, "example": 4, "format": "int32" }, "expire": { - "type": "integer", "description": "Token expiration period in seconds. The default expiration is 15 minutes.", + "type": "integer", "default": 900, "example": 60, "format": "int32" @@ -71703,8 +83400,8 @@ "type": "object", "properties": { "emailVerification": { - "type": "boolean", "description": "User email verification status.", + "type": "boolean", "example": false } }, @@ -71784,8 +83481,8 @@ "type": "object", "properties": { "phoneVerification": { - "type": "boolean", "description": "User phone verification status.", + "type": "boolean", "example": false } }, @@ -71927,40 +83624,40 @@ "type": "object", "properties": { "databaseId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<DATABASE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Defaults to `serverless`, which creates the database on the shared pool. Any other value provisions a dedicated database on that specification.", + "type": "string", "default": "serverless", "example": "serverless" }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Requires a dedicated `specification`; must be 0 for a serverless database. High availability is enabled when greater than 0.", + "type": "integer", "default": 0, "example": 0, "format": "int32" }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Requires a dedicated `specification`; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -72148,8 +83845,8 @@ "type": "object", "properties": { "ttl": { - "type": "integer", "description": "Seconds before the transaction expires.", + "type": "integer", "default": 300, "example": 60, "format": "int32" @@ -72294,14 +83991,14 @@ "type": "object", "properties": { "commit": { - "type": "boolean", "description": "Commit transaction?", + "type": "boolean", "default": false, "example": false }, "rollback": { - "type": "boolean", "description": "Rollback transaction?", + "type": "boolean", "default": false, "example": false } @@ -72438,8 +84135,8 @@ "type": "object", "properties": { "operations": { - "type": "array", "description": "Array of staged operations.", + "type": "array", "default": [], "example": [ { @@ -72590,32 +84287,32 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Database name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "enabled": { - "type": "boolean", "description": "Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false }, "specification": { - "type": "string", "description": "Database specification. Resizing between dedicated specifications changes cpu, memory, storage and the connection ceiling via a rolling cutover with zero downtime. Moving a `serverless` database onto a dedicated specification is a data migration, not a resize.", + "type": "string", "example": "serverless", "nullable": true }, "replicas": { - "type": "integer", "description": "Number of high availability replicas (0-5) for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification. High availability is enabled when greater than 0.", + "type": "integer", "example": 0, "format": "int32", "nullable": true }, "syncMode": { - "type": "string", "description": "Replication sync mode for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.", + "type": "string", "example": "async", "nullable": true } @@ -72844,27 +84541,27 @@ "type": "object", "properties": { "collectionId": { - "type": "string", "description": "Unique 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.", + "type": "string", "example": "<COLLECTION_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "dimension": { - "type": "integer", "description": "Embedding dimension.", + "type": "integer", "example": 1, "format": "int32" }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -72873,14 +84570,14 @@ } }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false } @@ -73043,19 +84740,19 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Collection name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "dimension": { - "type": "integer", "description": "Embedding dimensions.", + "type": "integer", "example": 1, "format": "int32" }, "permissions": { - "type": "array", "description": "An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -73064,14 +84761,14 @@ } }, "documentSecurity": { - "type": "boolean", "description": "Enables configuring permissions for individual documents. A user needs one of document or collection level permissions to access a document. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "boolean", "default": false, "example": false }, "enabled": { - "type": "boolean", "description": "Is collection enabled? When set to 'disabled', users cannot access the collection but Server SDKs with and API key can still read and write to the collection. No data is lost when this is toggled.", + "type": "boolean", "default": true, "example": false } @@ -73222,7 +84919,7 @@ }, { "name": "queries", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 524288 characters long.", "required": false, "schema": { "type": "array", @@ -73408,16 +85105,16 @@ "type": "object", "properties": { "documentId": { - "type": "string", "description": "Document 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.", + "type": "string", "example": "<DOCUMENT_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "data": { - "type": "object", "description": "Document data as JSON object.", + "type": "object", "default": {}, "example": { "embeddings": [ @@ -73432,8 +85129,8 @@ } }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -73442,16 +85139,16 @@ } }, "documents": { - "type": "array", "description": "Array of documents data as JSON objects.", + "type": "array", "default": [], "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } }, @@ -73571,15 +85268,15 @@ "type": "object", "properties": { "documents": { - "type": "array", "description": "Array of document data as JSON objects. May contain partial documents.", + "type": "array", "items": { "type": "object" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } }, @@ -73667,22 +85364,22 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only attribute and value pairs to be updated.", + "type": "object", "default": [], "example": {} }, "queries": { - "type": "array", "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", + "type": "array", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } } @@ -73865,27 +85562,27 @@ "type": "object", "properties": { "queries": { + "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 524288 characters long.", "type": "array", - "description": "Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https:\/\/appwrite.io\/docs\/queries). Maximum of 100 queries are allowed, each 4096 characters long.", "default": [], "items": { "type": "string" } }, "transactionId": { - "type": "string", "description": "Transaction ID to read uncommitted changes within the transaction.", + "type": "string", "example": "<TRANSACTION_ID>" }, "total": { - "type": "boolean", "description": "When set to false, the total count returned will be 0 and will not be calculated.", + "type": "boolean", "default": true, "example": false }, "ttl": { - "type": "integer", "description": "TTL (seconds) for cached responses when caching is enabled for select queries. Must be between 0 and 86400 (24 hours).", + "type": "integer", "default": 0, "example": 0, "format": "int32" @@ -74129,14 +85826,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include all required fields of the document to be created or updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -74145,8 +85842,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } } @@ -74244,14 +85941,14 @@ "type": "object", "properties": { "data": { - "type": "object", "description": "Document data as JSON object. Include only fields and value pairs to be updated.", + "type": "object", "default": [], "example": {} }, "permissions": { - "type": "array", "description": "An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https:\/\/appwrite.io\/docs\/permissions).", + "type": "array", "example": [ "read(\"any\")" ], @@ -74260,8 +85957,8 @@ } }, "transactionId": { - "type": "string", "description": "Transaction ID for staging the operation.", + "type": "string", "example": "<TRANSACTION_ID>" } } @@ -74528,58 +86225,94 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "Index Key." + "description": "Index Key.", + "type": "string" }, "type": { - "type": "string", "description": "Index type.", + "type": "string", "example": "hnsw_euclidean", - "enum": [ - "hnsw_euclidean", - "hnsw_dot", - "hnsw_cosine", - "object", - "key", - "unique" - ], - "x-enum-name": "VectorsDBIndexType", - "x-enum-keys": [ - "hnsw_euclidean", - "hnsw_dot", - "hnsw_cosine", - "object", - "key", - "unique" + "title": "VectorsDBIndexType", + "oneOf": [ + { + "type": "string", + "enum": [ + "hnsw_euclidean" + ], + "title": "hnsw_euclidean" + }, + { + "type": "string", + "enum": [ + "hnsw_dot" + ], + "title": "hnsw_dot" + }, + { + "type": "string", + "enum": [ + "hnsw_cosine" + ], + "title": "hnsw_cosine" + }, + { + "type": "string", + "enum": [ + "object" + ], + "title": "object" + }, + { + "type": "string", + "enum": [ + "key" + ], + "title": "key" + }, + { + "type": "string", + "enum": [ + "unique" + ], + "title": "unique" + } ] }, "attributes": { - "type": "array", "description": "Array of attributes to index. Maximum of 100 attributes are allowed, each 32 characters long.", + "type": "array", "items": { "type": "string" } }, "orders": { - "type": "array", "description": "Array of index orders. Maximum of 100 orders are allowed.", + "type": "array", "default": [], "items": { + "title": "OrderBy", "type": "string", - "enum": [ - "asc", - "desc" - ], - "x-enum-name": "OrderBy", - "x-enum-keys": [ - "asc", - "desc" + "oneOf": [ + { + "type": "string", + "enum": [ + "asc" + ], + "title": "asc" + }, + { + "type": "string", + "enum": [ + "desc" + ], + "title": "desc" + } ] } }, "lengths": { - "type": "array", "description": "Length of index. Maximum of 100", + "type": "array", "default": [], "items": { "type": "integer" @@ -74816,8 +86549,8 @@ "type": "object", "properties": { "targetReplicaId": { - "type": "string", "description": "Target replica ID to promote. If not specified, the healthiest replica is selected.", + "type": "string", "example": "<TARGET_REPLICA_ID>", "nullable": true } @@ -75187,51 +86920,51 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Leave empty for the API resource type.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] } }, @@ -75313,45 +87046,45 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true } } @@ -75416,69 +87149,69 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "challengeType": { - "type": "string", "description": "Challenge type enforced by the rule.", + "type": "string", "default": "compute", "example": "compute" }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] }, "difficulty": { - "type": "integer", "description": "Challenge difficulty from 1 (easiest) to 5 (hardest). Higher values demand more client-side proof-of-work.", + "type": "integer", "default": 3, "example": 1, "format": "int32" }, "ttl": { - "type": "integer", "description": "How long, in seconds, a visitor stays cleared after passing the challenge before being challenged again.", + "type": "integer", "default": 1800, "example": 900, "format": "int32" @@ -75562,63 +87295,63 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "challengeType": { - "type": "string", "description": "Challenge type enforced by the rule.", + "type": "string", "example": "compute", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true }, "difficulty": { - "type": "integer", "description": "Challenge difficulty from 1 (easiest) to 5 (hardest). Higher values demand more client-side proof-of-work.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "ttl": { - "type": "integer", "description": "How long, in seconds, a visitor stays cleared after passing the challenge before being challenged again.", + "type": "integer", "example": 900, "format": "int32", "nullable": true @@ -75685,51 +87418,51 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] } }, @@ -75811,45 +87544,45 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true } } @@ -75914,82 +87647,82 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "limit": { - "type": "integer", "description": "Maximum number of matching requests allowed in the configured interval.", + "type": "integer", "example": 1, "format": "int32" }, "interval": { - "type": "integer", "description": "Interval in seconds used for rate limiting.", + "type": "integer", "example": 1, "format": "int32" }, "key": { - "type": "string", "description": "Rate limit key. Use `ip` to limit per client IP or `userId` to limit per authenticated user. Requests without an authenticated user skip `userId` rules.", + "type": "string", "default": "ip", "example": "ip" }, "strategy": { - "type": "string", "description": "Rate limit strategy. `fixedWindow` counts requests in discrete intervals, `slidingWindow` weights the previous interval for smoother limiting, and `tokenBucket` refills allowance continuously to permit short bursts.", + "type": "string", "default": "fixedWindow", "example": "fixedWindow" }, "maxBucketSize": { - "type": "integer", "description": "Maximum number of tokens the bucket can hold for the `tokenBucket` strategy, controlling how large a burst is allowed. The sustained refill rate is `limit \/ interval`. Defaults to `limit` when omitted. Ignored by other strategies.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] } }, @@ -76073,72 +87806,72 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "limit": { - "type": "integer", "description": "Maximum number of matching requests allowed in the configured interval.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "interval": { - "type": "integer", "description": "Interval in seconds used for rate limiting.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "key": { - "type": "string", "description": "Rate limit key. Use `ip` to limit per client IP or `userId` to limit per authenticated user. Requests without an authenticated user skip `userId` rules.", + "type": "string", "example": "ip", "nullable": true }, "maxBucketSize": { - "type": "integer", "description": "Maximum number of tokens the bucket can hold for the `tokenBucket` strategy, controlling how large a burst is allowed. The sustained refill rate is `limit \/ interval`. Ignored by other strategies. The strategy itself cannot be changed after creation.", + "type": "integer", "example": 1, "format": "int32", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true } } @@ -76203,62 +87936,62 @@ "type": "object", "properties": { "ruleId": { - "type": "string", "description": "Rule ID. Choose a custom ID or pass `ID.unique()` to generate a unique one.", + "type": "string", "example": "<RULE_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api" }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>" }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "default": "", "example": "<DESCRIPTION>" }, "location": { - "type": "string", "description": "Location used for redirect responses.", + "type": "string", "example": "<LOCATION>" }, "statusCode": { - "type": "integer", "description": "Integer status code used for redirect responses.", + "type": "integer", "example": 300, "format": "int32" }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "default": 0, "example": -100000, "format": "int32" }, "enabled": { - "type": "boolean", "description": "Set to false to create the rule in a disabled state.", + "type": "boolean", "default": true, "example": false }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "default": [] } }, @@ -76342,58 +88075,58 @@ "type": "object", "properties": { "resourceType": { - "type": "string", "description": "Resource type the rule applies to.", + "type": "string", "example": "api", "nullable": true }, "resourceId": { - "type": "string", "description": "Resource identifier. Required for functions and sites.", + "type": "string", "example": "<RESOURCE_ID>", "nullable": true }, "name": { - "type": "string", "description": "Rule name.", + "type": "string", "example": "<NAME>", "nullable": true }, "description": { - "type": "string", "description": "Optional description for the rule.", + "type": "string", "example": "<DESCRIPTION>", "nullable": true }, "location": { - "type": "string", "description": "Location used for redirect responses.", + "type": "string", "example": "<LOCATION>", "nullable": true }, "statusCode": { - "type": "integer", "description": "Integer status code used for redirect responses.", + "type": "integer", "example": 300, "format": "int32", "nullable": true }, "priority": { - "type": "integer", "description": "Evaluation priority. Lower numbers run earlier.", + "type": "integer", "example": -100000, "format": "int32", "nullable": true }, "enabled": { - "type": "boolean", "description": "Set to false to disable the rule.", + "type": "boolean", "example": false, "nullable": true }, "conditions": { - "type": "string", "description": "Array of condition strings generated using the WAF Condition builder. Maximum of 100 conditions are allowed, each 4096 characters long.", + "type": "string", "nullable": true } } @@ -76648,57 +88381,57 @@ "type": "object", "properties": { "webhookId": { - "type": "string", "description": "Webhook 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.", + "type": "string", "example": "<WEBHOOK_ID>", "x-appwrite": { "idGenerator": "ID.unique" } }, "url": { - "type": "string", - "description": "Webhook URL." + "description": "Webhook URL.", + "type": "string" }, "name": { - "type": "string", "description": "Webhook name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "events": { - "type": "array", "description": "Events list. Maximum of 100 events are allowed.", + "type": "array", "items": { "type": "string" } }, "enabled": { - "type": "boolean", "description": "Enable or disable a webhook.", + "type": "boolean", "default": true, "example": false }, "tls": { - "type": "boolean", "description": "Certificate verification, false for disabled or true for enabled.", + "type": "boolean", "default": false, "example": false }, "authUsername": { - "type": "string", "description": "Webhook HTTP user. Max length: 256 chars.", + "type": "string", "default": "", "example": "<AUTH_USERNAME>" }, "authPassword": { - "type": "string", "description": "Webhook HTTP password. Max length: 256 chars.", + "type": "string", "default": "", "example": "password", "format": "password" }, "secret": { - "type": "string", "description": "Webhook secret key. If not provided, a new key will be generated automatically. Key must be at least 8 characters long, and at max 256 characters.", + "type": "string", "example": "<SECRET>", "nullable": true } @@ -76840,42 +88573,42 @@ "type": "object", "properties": { "name": { - "type": "string", "description": "Webhook name. Max length: 128 chars.", + "type": "string", "example": "<NAME>" }, "url": { - "type": "string", - "description": "Webhook URL." + "description": "Webhook URL.", + "type": "string" }, "events": { - "type": "array", "description": "Events list. Maximum of 100 events are allowed.", + "type": "array", "items": { "type": "string" } }, "enabled": { - "type": "boolean", "description": "Enable or disable a webhook.", + "type": "boolean", "default": true, "example": false }, "tls": { - "type": "boolean", "description": "Certificate verification, false for disabled or true for enabled.", + "type": "boolean", "default": false, "example": false }, "authUsername": { - "type": "string", "description": "Webhook HTTP user. Max length: 256 chars.", + "type": "string", "default": "", "example": "<AUTH_USERNAME>" }, "authPassword": { - "type": "string", "description": "Webhook HTTP password. Max length: 256 chars.", + "type": "string", "default": "", "example": "password", "format": "password" @@ -77010,8 +88743,8 @@ "type": "object", "properties": { "secret": { - "type": "string", "description": "Webhook secret key. If not provided, a new key will be generated automatically. Key must be at least 8 characters long, and at max 256 characters.", + "type": "string", "example": "<SECRET>", "nullable": true } @@ -78609,42 +90342,168 @@ "example": false }, "type": { - "type": "string", "description": "Database type.", "example": "legacy", - "enum": [ - "legacy", - "tablesdb", - "documentsdb", - "vectorsdb", - "mysql", - "postgresql", - "mongodb" - ], - "x-enum-name": "DatabaseType" + "title": "DatabaseType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "legacy" + ], + "title": "legacy" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "documentsdb" + ], + "title": "documentsdb" + }, + { + "type": "string", + "enum": [ + "vectorsdb" + ], + "title": "vectorsdb" + }, + { + "type": "string", + "enum": [ + "mysql" + ], + "title": "mysql" + }, + { + "type": "string", + "enum": [ + "postgresql" + ], + "title": "postgresql" + }, + { + "type": "string", + "enum": [ + "mongodb" + ], + "title": "mongodb" + } + ] }, "status": { - "type": "string", "description": "Dedicated database lifecycle status. Null when the database has no valid dedicated backing.", "readOnly": true, "example": "ready", - "enum": [ - "provisioning", - "ready", - "inactive", - "paused", - "failed", - "deleting", - "deleted", - "restoring", - "scaling", - "upgrading", - "migrating", - "pausing", - "resuming", - "failing-over" + "title": "DatabaseStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "provisioning" + ], + "title": "provisioning" + }, + { + "type": "string", + "enum": [ + "ready" + ], + "title": "ready" + }, + { + "type": "string", + "enum": [ + "inactive" + ], + "title": "inactive" + }, + { + "type": "string", + "enum": [ + "paused" + ], + "title": "paused" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "deleted" + ], + "title": "deleted" + }, + { + "type": "string", + "enum": [ + "restoring" + ], + "title": "restoring" + }, + { + "type": "string", + "enum": [ + "scaling" + ], + "title": "scaling" + }, + { + "type": "string", + "enum": [ + "upgrading" + ], + "title": "upgrading" + }, + { + "type": "string", + "enum": [ + "migrating" + ], + "title": "migrating" + }, + { + "type": "string", + "enum": [ + "pausing" + ], + "title": "pausing" + }, + { + "type": "string", + "enum": [ + "resuming" + ], + "title": "resuming" + }, + { + "type": "string", + "enum": [ + "failing-over" + ], + "title": "failing-over" + } ], - "x-enum-name": "DatabaseStatus", "nullable": true }, "engine": { @@ -79190,17 +91049,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -79286,17 +91175,47 @@ "example": "integer" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -79384,17 +91303,47 @@ "example": "bigint" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -79482,17 +91431,47 @@ "example": "double" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -79580,17 +91559,47 @@ "example": "boolean" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -79661,17 +91670,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -79749,17 +91788,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -79849,17 +91918,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -79937,17 +92036,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80025,17 +92154,47 @@ "example": "datetime" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80113,17 +92272,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80229,17 +92418,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80320,17 +92539,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80426,17 +92675,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80559,17 +92838,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80655,17 +92964,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80743,17 +93082,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -80831,17 +93200,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -81050,17 +93449,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -81124,17 +93553,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "AttributeStatus" + "title": "AttributeStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -81619,17 +94078,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -81715,17 +94204,47 @@ "example": "integer" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -81813,17 +94332,47 @@ "example": "bigint" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -81911,17 +94460,47 @@ "example": "double" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82009,17 +94588,47 @@ "example": "boolean" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82090,17 +94699,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82178,17 +94817,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82278,17 +94947,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82366,17 +95065,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82454,17 +95183,47 @@ "example": "datetime" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82542,17 +95301,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82658,17 +95447,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82749,17 +95568,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82855,17 +95704,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -82988,17 +95867,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -83084,17 +95993,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -83172,17 +96111,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -83260,17 +96229,47 @@ "example": "string" }, "status": { - "type": "string", "description": "Column status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" - ], - "x-enum-name": "ColumnStatus" + "title": "ColumnStatus", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } + ] }, "error": { "type": "string", @@ -83363,15 +96362,45 @@ "example": "primary" }, "status": { - "type": "string", "description": "Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed`", "example": "available", - "enum": [ - "available", - "processing", - "deleting", - "stuck", - "failed" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "available" + ], + "title": "available" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "deleting" + ], + "title": "deleting" + }, + { + "type": "string", + "enum": [ + "stuck" + ], + "title": "stuck" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } ] }, "error": { @@ -86228,16 +99257,52 @@ "example": "5e5ea5c16897e" }, "status": { - "type": "string", "description": "The deployment status. Possible values are \"waiting\", \"processing\", \"building\", \"ready\", \"canceled\" and \"failed\".", "example": "ready", - "enum": [ - "waiting", - "processing", - "building", - "ready", - "canceled", - "failed" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "waiting" + ], + "title": "waiting" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "building" + ], + "title": "building" + }, + { + "type": "string", + "enum": [ + "ready" + ], + "title": "ready" + }, + { + "type": "string", + "enum": [ + "canceled" + ], + "title": "canceled" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } ] }, "buildLogs": { @@ -86396,12 +99461,24 @@ "example": "5e5ea6g16897e" }, "resourceType": { - "type": "string", "description": "Execution resource type.", "example": "functions", - "enum": [ - "functions", - "sites" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + } ] }, "deploymentId": { @@ -86410,25 +99487,73 @@ "example": "5e5ea5c16897e" }, "trigger": { - "type": "string", "description": "The trigger that caused the resource to execute. Possible values can be: `http`, `schedule`, or `event`.", "example": "http", - "enum": [ - "http", - "schedule", - "event" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "http" + ], + "title": "http" + }, + { + "type": "string", + "enum": [ + "schedule" + ], + "title": "schedule" + }, + { + "type": "string", + "enum": [ + "event" + ], + "title": "event" + } ] }, "status": { - "type": "string", "description": "The status of the resource execution. Possible values can be: `waiting`, `processing`, `completed`, `failed`, or `scheduled`.", "example": "processing", - "enum": [ - "waiting", - "processing", - "completed", - "failed", - "scheduled" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "waiting" + ], + "title": "waiting" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "completed" + ], + "title": "completed" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + }, + { + "type": "string", + "enum": [ + "scheduled" + ], + "title": "scheduled" + } ] }, "requestMethod": { @@ -86717,7 +99842,8 @@ "wafEnabled": { "type": "boolean", "description": "Whether WAF enforcement is enabled for the project.", - "example": true + "example": true, + "nullable": true }, "billingLimits": { "type": "object", @@ -86887,8 +100013,7 @@ "services", "protocols", "blocks", - "consoleAccessedAt", - "wafEnabled" + "consoleAccessedAt" ], "example": { "$id": "5e5ea5c16897e", @@ -86955,19 +100080,61 @@ "type": "object", "properties": { "$id": { - "type": "string", "description": "Auth method ID.", "example": "email-password", - "enum": [ - "email-password", - "magic-url", - "email-otp", - "anonymous", - "invites", - "jwt", - "phone" - ], - "x-enum-name": "ProjectAuthMethodId" + "title": "ProjectAuthMethodId", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "email-password" + ], + "title": "email-password" + }, + { + "type": "string", + "enum": [ + "magic-url" + ], + "title": "magic-url" + }, + { + "type": "string", + "enum": [ + "email-otp" + ], + "title": "email-otp" + }, + { + "type": "string", + "enum": [ + "anonymous" + ], + "title": "anonymous" + }, + { + "type": "string", + "enum": [ + "invites" + ], + "title": "invites" + }, + { + "type": "string", + "enum": [ + "jwt" + ], + "title": "jwt" + }, + { + "type": "string", + "enum": [ + "phone" + ], + "title": "phone" + } + ] }, "enabled": { "type": "boolean", @@ -86989,30 +100156,138 @@ "type": "object", "properties": { "$id": { - "type": "string", "description": "Service ID.", "example": "sites", - "enum": [ - "account", - "avatars", - "databases", - "tablesdb", - "locale", - "health", - "project", - "storage", - "teams", - "users", - "vcs", - "sites", - "functions", - "proxy", - "graphql", - "migrations", - "messaging", - "advisor" - ], - "x-enum-name": "ProjectServiceId" + "title": "ProjectServiceId", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "account" + ], + "title": "account" + }, + { + "type": "string", + "enum": [ + "avatars" + ], + "title": "avatars" + }, + { + "type": "string", + "enum": [ + "databases" + ], + "title": "databases" + }, + { + "type": "string", + "enum": [ + "tablesdb" + ], + "title": "tablesdb" + }, + { + "type": "string", + "enum": [ + "locale" + ], + "title": "locale" + }, + { + "type": "string", + "enum": [ + "health" + ], + "title": "health" + }, + { + "type": "string", + "enum": [ + "project" + ], + "title": "project" + }, + { + "type": "string", + "enum": [ + "storage" + ], + "title": "storage" + }, + { + "type": "string", + "enum": [ + "teams" + ], + "title": "teams" + }, + { + "type": "string", + "enum": [ + "users" + ], + "title": "users" + }, + { + "type": "string", + "enum": [ + "vcs" + ], + "title": "vcs" + }, + { + "type": "string", + "enum": [ + "sites" + ], + "title": "sites" + }, + { + "type": "string", + "enum": [ + "functions" + ], + "title": "functions" + }, + { + "type": "string", + "enum": [ + "proxy" + ], + "title": "proxy" + }, + { + "type": "string", + "enum": [ + "graphql" + ], + "title": "graphql" + }, + { + "type": "string", + "enum": [ + "migrations" + ], + "title": "migrations" + }, + { + "type": "string", + "enum": [ + "messaging" + ], + "title": "messaging" + }, + { + "type": "string", + "enum": [ + "advisor" + ], + "title": "advisor" + } + ] }, "enabled": { "type": "boolean", @@ -87034,15 +100309,33 @@ "type": "object", "properties": { "$id": { - "type": "string", "description": "Protocol ID.", "example": "graphql", - "enum": [ - "rest", - "graphql", - "websocket" - ], - "x-enum-name": "ProjectProtocolId" + "title": "ProjectProtocolId", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "rest" + ], + "title": "rest" + }, + { + "type": "string", + "enum": [ + "graphql" + ], + "title": "graphql" + }, + { + "type": "string", + "enum": [ + "websocket" + ], + "title": "websocket" + } + ] }, "enabled": { "type": "boolean", @@ -87817,10 +101110,28 @@ "description": "Google OAuth2 prompt values.", "items": { "type": "string", - "enum": [ - "none", - "consent", - "select_account" + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "consent" + ], + "title": "consent" + }, + { + "type": "string", + "enum": [ + "select_account" + ], + "title": "select_account" + } ] }, "example": [ @@ -88339,6 +101650,44 @@ "clientSecret": "cf978f0000000000000000000000000000c5e2e9" } }, + "oAuth2HuggingFace": { + "description": "OAuth2HuggingFace", + "type": "object", + "properties": { + "$id": { + "type": "string", + "description": "OAuth2 provider ID.", + "example": "github" + }, + "enabled": { + "type": "boolean", + "description": "OAuth2 provider is active and can be used to create sessions.", + "example": false + }, + "clientId": { + "type": "string", + "description": "Hugging Face OAuth2 client ID.", + "example": "2ab9cff9-d711-40ad-a91e-b08a49c42d24" + }, + "clientSecret": { + "type": "string", + "description": "Hugging Face OAuth2 client secret.", + "example": "oauth_app_secret_wcLhRtl000000000000000000000xbNdLt" + } + }, + "required": [ + "$id", + "enabled", + "clientId", + "clientSecret" + ], + "example": { + "$id": "github", + "enabled": false, + "clientId": "2ab9cff9-d711-40ad-a91e-b08a49c42d24", + "clientSecret": "oauth_app_secret_wcLhRtl000000000000000000000xbNdLt" + } + }, "oAuth2Linkedin": { "description": "OAuth2Linkedin", "type": "object", @@ -88924,11 +102273,35 @@ "description": "OpenID Connect prompt values controlling the authentication and consent screens.", "items": { "type": "string", - "enum": [ - "none", - "login", - "consent", - "select_account" + "oneOf": [ + { + "type": "string", + "enum": [ + "none" + ], + "title": "none" + }, + { + "type": "string", + "enum": [ + "login" + ], + "title": "login" + }, + { + "type": "string", + "enum": [ + "consent" + ], + "title": "consent" + }, + { + "type": "string", + "enum": [ + "select_account" + ], + "title": "select_account" + } ] }, "example": [ @@ -89293,6 +102666,9 @@ }, { "$ref": "#\/components\/schemas\/oAuth2Microsoft" + }, + { + "$ref": "#\/components\/schemas\/oAuth2HuggingFace" } ], "discriminator": { @@ -89340,7 +102716,8 @@ "apple": "#\/components\/schemas\/oAuth2Apple", "okta": "#\/components\/schemas\/oAuth2Okta", "kick": "#\/components\/schemas\/oAuth2Kick", - "microsoft": "#\/components\/schemas\/oAuth2Microsoft" + "microsoft": "#\/components\/schemas\/oAuth2Microsoft", + "huggingface": "#\/components\/schemas\/oAuth2HuggingFace" } } }, @@ -89734,17 +103111,47 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "hostname": { "type": "string", @@ -89795,17 +103202,47 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "bundleIdentifier": { "type": "string", @@ -89855,17 +103292,47 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "applicationId": { "type": "string", @@ -89915,17 +103382,47 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "packageIdentifierName": { "type": "string", @@ -89975,17 +103472,47 @@ "example": "My Web App" }, "type": { - "type": "string", "description": "Platform type. Possible values are: windows, apple, android, linux, web.", "example": "web", - "enum": [ - "windows", - "apple", - "android", - "linux", - "web" - ], - "x-enum-name": "PlatformType" + "title": "PlatformType", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "windows" + ], + "title": "windows" + }, + { + "type": "string", + "enum": [ + "apple" + ], + "title": "apple" + }, + { + "type": "string", + "enum": [ + "android" + ], + "title": "android" + }, + { + "type": "string", + "enum": [ + "linux" + ], + "title": "linux" + }, + { + "type": "string", + "enum": [ + "web" + ], + "title": "web" + } + ] }, "packageName": { "type": "string", @@ -90416,12 +103943,24 @@ "example": "n3u9feiwmf" }, "deploymentResourceType": { - "type": "string", "description": "Type of deployment. Possible values are \"function\", \"site\". Used if rule's type is \"deployment\".", "example": "function", - "enum": [ - "function", - "site" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "function" + ], + "title": "function" + }, + { + "type": "string", + "enum": [ + "site" + ], + "title": "site" + } ], "nullable": true }, @@ -90436,13 +103975,31 @@ "example": "main" }, "status": { - "type": "string", "description": "Domain verification status. Possible values are \"unverified\", \"verifying\", \"verified\"", "example": "verified", - "enum": [ - "unverified", - "verifying", - "verified" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "unverified" + ], + "title": "unverified" + }, + { + "type": "string", + "enum": [ + "verifying" + ], + "title": "verifying" + }, + { + "type": "string", + "enum": [ + "verified" + ], + "title": "verified" + } ] }, "logs": { @@ -90909,15 +104466,45 @@ } }, "status": { - "type": "string", "description": "Status of delivery.", "example": "processing", - "enum": [ - "draft", - "processing", - "scheduled", - "sent", - "failed" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "draft" + ], + "title": "draft" + }, + { + "type": "string", + "enum": [ + "processing" + ], + "title": "processing" + }, + { + "type": "string", + "enum": [ + "scheduled" + ], + "title": "scheduled" + }, + { + "type": "string", + "enum": [ + "sent" + ], + "title": "sent" + }, + { + "type": "string", + "enum": [ + "failed" + ], + "title": "failed" + } ] } }, @@ -92603,13 +106190,31 @@ "nullable": true }, "group": { - "type": "string", "description": "Group of this billing plan for variants", "example": "pro", - "enum": [ - "starter", - "pro", - "scale" + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "starter" + ], + "title": "starter" + }, + { + "type": "string", + "enum": [ + "pro" + ], + "title": "pro" + }, + { + "type": "string", + "enum": [ + "scale" + ], + "title": "scale" + } ] }, "program": { @@ -93252,7 +106857,7 @@ }, "database": { "type": "string", - "description": "Database name the client sends for routing to the branch.", + "description": "Advertised catalog the client connects to. MySQL\/MariaDB use default; Postgres uses the routing label.", "example": "db-myproject-mydb-a1b2c3d4" }, "username": { @@ -96927,155 +110532,215 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" - }, - "priority": { - "type": "integer", - "description": "Evaluation priority. Lower values execute earlier.", - "format": "int32", - "example": 100 - }, - "enabled": { - "type": "boolean", - "description": "Whether the rule is active.", - "example": true - }, - "conditions": { - "type": "array", - "description": "List of conditions evaluated for this rule.", - "items": { - "type": "object" - }, - "example": [ + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] + }, + "priority": { + "type": "integer", + "description": "Evaluation priority. Lower values execute earlier.", + "format": "int32", + "example": 100 + }, + "enabled": { + "type": "boolean", + "description": "Whether the rule is active.", + "example": true + }, + "conditions": { + "type": "array", + "description": "List of conditions evaluated for this rule.", + "items": { + "type": "object" + }, + "example": [ + { + "method": "equal", + "attribute": "ip", + "values": [ + "127.0.0.1" + ] + } + ] + }, + "config": { + "type": "object", + "additionalProperties": true, + "description": "Action specific configuration.", + "example": {} + } + }, + "required": [ + "$id", + "$createdAt", + "$updatedAt", + "name", + "description", + "teamId", + "projectId", + "resourceType", + "resourceId", + "action", + "priority", + "enabled", + "conditions", + "config" + ], + "example": { + "$id": "wafRule1", + "$createdAt": "2020-10-15T06:38:00.000+00:00", + "$updatedAt": "2020-10-15T06:38:00.000+00:00", + "name": "Block anonymous POST traffic", + "description": "Blocks anonymous POST calls to \/v1\/graphql", + "teamId": "5e5ea5c16897e", + "projectId": "cloudConsole", + "resourceType": "functions", + "resourceId": "functionId", + "action": "deny", + "priority": 100, + "enabled": true, + "conditions": [ + { + "method": "equal", + "attribute": "ip", + "values": [ + "127.0.0.1" + ] + } + ], + "config": [] + } + }, + "wafRuleBypass": { + "description": "WafRuleBypass", + "type": "object", + "properties": { + "$id": { + "type": "string", + "description": "Rule ID.", + "example": "wafRule1" + }, + "$createdAt": { + "type": "string", + "description": "WAF rule creation time in ISO 8601 format.", + "example": "2020-10-15T06:38:00.000+00:00" + }, + "$updatedAt": { + "type": "string", + "description": "WAF rule last update time in ISO 8601 format.", + "example": "2020-10-15T06:38:00.000+00:00" + }, + "name": { + "type": "string", + "description": "Human friendly rule name.", + "example": "Block anonymous POST traffic" + }, + "description": { + "type": "string", + "description": "Optional description for the rule.", + "example": "Blocks anonymous POST calls to \/v1\/graphql" + }, + "teamId": { + "type": "string", + "description": "Team ID.", + "example": "5e5ea5c16897e" + }, + "projectId": { + "type": "string", + "description": "Project ID.", + "example": "cloudConsole" + }, + "resourceType": { + "type": "string", + "description": "Resource type the rule is scoped to.", + "example": "functions" + }, + "resourceId": { + "type": "string", + "description": "Resource identifier. Empty for API-wide rules.", + "example": "functionId" + }, + "action": { + "description": "Action performed when the rule matches.", + "example": "deny", + "title": "WafRuleAction", + "type": "string", + "oneOf": [ { - "method": "equal", - "attribute": "ip", - "values": [ - "127.0.0.1" - ] + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" } ] }, - "config": { - "type": "object", - "additionalProperties": true, - "description": "Action specific configuration.", - "example": {} - } - }, - "required": [ - "$id", - "$createdAt", - "$updatedAt", - "name", - "description", - "teamId", - "projectId", - "resourceType", - "resourceId", - "action", - "priority", - "enabled", - "conditions", - "config" - ], - "example": { - "$id": "wafRule1", - "$createdAt": "2020-10-15T06:38:00.000+00:00", - "$updatedAt": "2020-10-15T06:38:00.000+00:00", - "name": "Block anonymous POST traffic", - "description": "Blocks anonymous POST calls to \/v1\/graphql", - "teamId": "5e5ea5c16897e", - "projectId": "cloudConsole", - "resourceType": "functions", - "resourceId": "functionId", - "action": "deny", - "priority": 100, - "enabled": true, - "conditions": [ - { - "method": "equal", - "attribute": "ip", - "values": [ - "127.0.0.1" - ] - } - ], - "config": [] - } - }, - "wafRuleBypass": { - "description": "WafRuleBypass", - "type": "object", - "properties": { - "$id": { - "type": "string", - "description": "Rule ID.", - "example": "wafRule1" - }, - "$createdAt": { - "type": "string", - "description": "WAF rule creation time in ISO 8601 format.", - "example": "2020-10-15T06:38:00.000+00:00" - }, - "$updatedAt": { - "type": "string", - "description": "WAF rule last update time in ISO 8601 format.", - "example": "2020-10-15T06:38:00.000+00:00" - }, - "name": { - "type": "string", - "description": "Human friendly rule name.", - "example": "Block anonymous POST traffic" - }, - "description": { - "type": "string", - "description": "Optional description for the rule.", - "example": "Blocks anonymous POST calls to \/v1\/graphql" - }, - "teamId": { - "type": "string", - "description": "Team ID.", - "example": "5e5ea5c16897e" - }, - "projectId": { - "type": "string", - "description": "Project ID.", - "example": "cloudConsole" - }, - "resourceType": { - "type": "string", - "description": "Resource type the rule is scoped to.", - "example": "functions" - }, - "resourceId": { - "type": "string", - "description": "Resource identifier. Empty for API-wide rules.", - "example": "functionId" - }, - "action": { - "type": "string", - "description": "Action performed when the rule matches.", - "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" - }, "priority": { "type": "integer", "description": "Evaluation priority. Lower values execute earlier.", @@ -97201,17 +110866,47 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] }, "priority": { "type": "integer", @@ -97338,17 +111033,47 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] }, "priority": { "type": "integer", @@ -97498,17 +111223,47 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] }, "priority": { "type": "integer", @@ -97673,17 +111428,47 @@ "example": "functionId" }, "action": { - "type": "string", "description": "Action performed when the rule matches.", "example": "deny", - "enum": [ - "bypass", - "deny", - "challenge", - "rateLimit", - "redirect" - ], - "x-enum-name": "WafRuleAction" + "title": "WafRuleAction", + "type": "string", + "oneOf": [ + { + "type": "string", + "enum": [ + "bypass" + ], + "title": "bypass" + }, + { + "type": "string", + "enum": [ + "deny" + ], + "title": "deny" + }, + { + "type": "string", + "enum": [ + "challenge" + ], + "title": "challenge" + }, + { + "type": "string", + "enum": [ + "rateLimit" + ], + "title": "rateLimit" + }, + { + "type": "string", + "enum": [ + "redirect" + ], + "title": "redirect" + } + ] }, "priority": { "type": "integer",